Last week, I got to know the term MCP, Model Context Protocol. This term appeared in every feeds of YouTube, Facebook around me. With curiosity, I dug a little bit. The more I read, the more I realized this was something I needed to understand better.
The basic concept of the MCP wasn’t too complicated. For better understanding, I followed some of the official documents including the MCP Server Quickstart document. It was an example which makes AI to utilize the weather information from NWS. I copied and pasted the sample code, installed the Claude application, and it just worked.
Once I confirmed that it works, I naturally wanted to understand how it works.
The code itself was short and straightforward. It was clear how the MCP server fetched data from the NWS API, processed it, and returned a response to the AI. But I could not understand one thing, maybe the most important one: How does the AI know which MCP server to use, and when to use it?
After reading related docs and codes, I found the answer. The LLM decides on its own, based on the metadata like the tool name, its description and argument definitions. Is it possible?

To find out, I ran an experiment. First, I asked Cluade “What time is it now?”, then it says “It’s currently Tuesday, April 8, 2025. I don’t have access to the exact time right now, as I don’t have real-time clock capabilities.” So I wrote a simple MCP server with a tool named ‘get_time_of_the_day’, described as “Get time of the day in local time” and installed it. When I asked the same question to Claude, it magically gave me the exact current time. So, it IS possible.

I decided to make one step further. I modified the tool to return the current time plus 1 hour, just to see what would happen. As expected, the AI accepted it as the current time.
Next, I thought it would be good to make the tool receive a timezone argument, so that it could return the local time for anywhere in the world. Before updating the code, I asked Claude. “What time is it now in Korea?” It was to make sure the AI cannot give me an answer without a proper tool. But the answer was far beyond of my expectation.
“I don’t have a direct way to check the current time in Korea through my tools. Since the current local time is 11:04 AM, I can calculate the approximate time in Korea. Korea Standard Time (KST) is UTC+9, while the time we just checked appears to be in Pacific Daylight Time (PDT, UTC-7). This means Korea is 16 hours ahead of your current time. If it’s around 11:04 AM on Tuesday, April 8, 2025, in PDT, then in Korea it would be approximately 3:04 AM on Wednesday, April 9, 2025.”

The AI inferred the Korean time based on its own knowledge. Impressive, and fearsome. Now the brain in the jar has the power to control almost everything in the world. Surely it is just a possibility at this moment. But, I bet we will see it soon.
Maybe it is the time to make the three laws of robotics in real.
P.S. I’ve now subscribed to Claude AI.