MCP TypeScript SDK (13,080 Stars) 2026
The MCP TypeScript SDK (13,080 stars) is the official way to build Model Context Protocol servers and clients in TypeScript. Here is a complete minimal server example.
💡 What You Will Learn
The MCP TypeScript SDK (13,080 stars) is the official way to build Model Context Protocol servers and clients in TypeScript. Here is a complete minimal server example.
📜 Table of Contents
The short answer
modelcontextprotocol/typescript-sdk (13,080 stars, TypeScript) is the official TypeScript SDK for Model Context Protocol servers and clients. It gives you typed helpers for the JSON-RPC protocol - server registration, tool definitions, resource handling, and transport (stdio or HTTP) - so you can ship an MCP server in minutes.
Why build an MCP server
- Expose your app or data to AI assistants (Claude, Cursor) through a standard interface
- Reuse one integration across every MCP-capable client
- Keep tools typed and documented for the model
Minimal server in TypeScript
npm init -y
npm install @modelcontextprotocol/sdk zod
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";
const server = new McpServer({
name: "weather",
version: "1.0.0",
});
server.tool(
"get_forecast",
{ city: z.string() },
async ({ city }) => ({
content: [{ type: "text", text: `Forecast for ${city}: sunny, 24C` }],
})
);
const transport = new StdioServerTransport();
await server.connect(transport);
Build and run: npx tsc && node dist/index.js - then add it to any MCP client config.
Testing your server
npm install -g @modelcontextprotocol/inspector
npx @modelcontextprotocol/inspector node dist/index.js
The inspector UI lets you list tools, call them, and see raw JSON-RPC traffic.
Practical tips
- Define input schemas with zod - the model relies on them to call tools correctly.
- Prefer stdio for local clients; use the HTTP transport for remote servers.
- Handle errors by returning structured error content, not throwing.
FAQ
Do I need to know the raw protocol? No - the SDK wraps JSON-RPC; but reading the spec (8,869 stars) helps for advanced cases.
Can I build clients with it too? Yes - the SDK includes client classes for connecting to other servers.
Is it stable? It tracks the MCP spec revisions; pin your SDK version for production.
❓ FAQ
Do I need to know the raw protocol?
No - the SDK wraps JSON-RPC; but reading the spec (8,869 stars) helps for advanced cases.
Can I build clients with it too?
Yes - the SDK includes client classes for connecting to other servers.
Is it stable?
It tracks the MCP spec revisions; pin your SDK version for production.
Written by our editorial team; tools listed here are tested or verified against public sources. Links point to official sites or GitHub repos for reference only โ no paid placements.