Module 04 References
Curated references for tool use and the Model Context Protocol. Ordered by reading priority.
Official MCP Documentation
MCP Introduction
https://modelcontextprotocol.io/introduction
Start here. Explains what MCP is, why it was created, and the high-level architecture. 10-minute read.
MCP Architecture
https://modelcontextprotocol.io/docs/concepts/architecture
The three primitives (resources, tools, prompts), transport layers, and client-server model. Essential for understanding how to structure your own servers.
SDKs and Implementation
MCP Python SDK
https://github.com/modelcontextprotocol/python-sdk
The official Python SDK for building MCP servers and clients. The README has a minimal server example. Check the examples/ directory for real-world patterns including filesystem, database, and API wrapper servers.
MCP TypeScript SDK
https://github.com/modelcontextprotocol/typescript-sdk
For JavaScript/TypeScript developers. Same concepts as Python SDK; useful if you want to build MCP servers in Node.js (common for VS Code extensions and web-based tools).
Anthropic Tool Use Documentation
Anthropic Tool Use Overview
https://docs.anthropic.com/en/docs/build-with-claude/tool-use/overview
The complete guide to using tools via the Anthropic API: defining tools, the tool use flow, handling tool results, streaming, error handling, and best practices. Essential reading before building any Claude tool integration.
Community and Reference Implementations
Community MCP Servers
https://github.com/modelcontextprotocol/servers
A collection of reference MCP server implementations: filesystem, GitHub, Slack, PostgreSQL, browser automation, and more. Read these when you want to see how production servers handle authentication, error handling, and resource design.
Notable servers to study:
filesystem— safe local file access with path scopinggithub— wrapping a REST API with proper auth and paginationpostgres— read-only database access with schema introspectionmemory— persistent key-value notes that survive conversation resets
JSON Schema
Understanding JSON Schema
https://json-schema.org/understanding-json-schema
The reference for writing input_schema in your tool definitions. Key sections for AI tool design:
- “Type-specific keywords” — string, number, integer, boolean, array, object
- “Applying subschemas conditionally” — for anyOf / oneOf patterns
- “Structuring a complex schema” — for nested object parameters
Focus on: type, enum, minimum/maximum, minLength/maxLength, items (for arrays), properties/required (for objects), anyOf.
Background Reading (Optional)
JSON-RPC 2.0 Specification
https://www.jsonrpc.org/specification
MCP is built on JSON-RPC 2.0. You don’t need to read this to build MCP servers, but understanding it helps you debug protocol-level issues when things go wrong.
OpenAI Function Calling
https://platform.openai.com/docs/guides/function-calling
Tool use with a different provider. Reading this helps you understand what is universal (JSON Schema input schemas, the call-result loop) vs what is Anthropic-specific (content block format, tool result structure).