Tools
~2 min read
Concept & How It Works
Why Does It Exist?
MCP tools replace per-framework tool definitions. Write one tool schema on the server; every MCP client discovers and calls it identically.
Real-World Analogy
MCP tools are standardized power outlets — any MCP client can plug in, regardless of who manufactured the server.
Visual Workflows
What is Tools?
Example
Scenario
A GitHub MCP server exposes tools: create_issue, search_code, get_pull_request. Cursor's agent calls search_code to find relevant files in a repo.
Solution
In Model Context Protocol, apply Tools to this scenario: A GitHub MCP server exposes tools: create_issue, search_code, get_pull_request. Identify the inputs, run the technique, validate the output, and note one thing you would monitor in production.
Practice Task
Do this before moving to the next module — reading alone is not enough.
Open the Code Walkthrough below and run it locally. Change one parameter related to Tools (e.g. model, temperature, top_k, or tool name), observe the difference in output, and write 2–3 sentences explaining what changed.
Code Walkthrough
Highlighted lines show where Tools happens in the code.
1# Tools — minimal example2from openai import OpenAI3
4client = OpenAI() # create API client5
6# Ask the model to explain this topic7response = client.chat.completions.create( # core API call for Tools8 model="gpt-4o-mini",9 messages=[10 {"role": "system", "content": "You explain tools clearly."},11 {"role": "user", "content": f"What is tools?"},12 ],13 temperature=0,14)15print(response.choices[0].message.content) # show output for debuggingCommands to Remember
Commands to Remember
npx @modelcontextprotocol/inspector # debug MCP servers interactivelypip install mcp # Python MCP SDKuvx mcp-server-filesystem # run a filesystem MCP server
Common Mistakes
- Treating Tools as a black box without evaluation
- Ignoring cost and latency in production
- Skipping error handling for tools
Cheat Sheet
Quick recap — the most important points from this module.
Cheat Sheet
quick ref- •Tools
- •inputSchema
- •CallToolResult
- •Tool Discovery