MCP Foundations
What MCP is, hosts/clients/servers, the data and transport layers, JSON-RPC and _meta, discovery and versioning, and your first server in the Inspector. Start →
MCP Foundations
What MCP is, hosts/clients/servers, the data and transport layers, JSON-RPC and _meta, discovery and versioning, and your first server in the Inspector. Start →
Server Primitives
Tools, structured output and annotations, resources and URI templates, prompts, change notifications, and caching. Build →
Transports
stdio and Streamable HTTP — framing, headers, SSE streams, building an HTTP server, and backward compatibility with legacy protocol eras. Connect →
Client Interaction
Multi round-trip requests, elicitation (form and URL), progress and cancellation, the Tasks extension, and the deprecated sampling/roots/logging. Interact →
Building Clients & Hosts
Writing a client, wiring tools to an LLM agent loop, using servers in Claude Code and the Claude API, scaling to hundreds of tools. Integrate →
Security & Authorization
OAuth 2.1 for MCP — discovery, PKCE, resource indicators, client registration, protecting your server, threats and mitigations, third-party auth. Secure →
Production & Ecosystem
Designing tools agents love, testing and debugging, deploying remote servers, publishing to the registry, extensions and what changed. Ship →
Wire-first, always
Every concept starts from the JSON-RPC messages actually exchanged — then shows how the TypeScript and Python SDKs generate them, so nothing is magic.
Two SDKs side by side
Server and client examples in TypeScript (@modelcontextprotocol/server, @modelcontextprotocol/client) and Python (mcp) through synced tabs — pick one and follow it everywhere.
Design, not just syntax
Why the protocol is stateless, when a tool beats a resource, how to shape tools for agents, how to keep a remote server secure — trade-offs on every page.
Current spec, with history
Written against protocol revision 2026-07-28, with clearly labelled notes on the legacy era (2025-11-25 and earlier) so older tutorials still make sense. Bilingual (English / ไทย) with saved quiz progress.