Back to Explore

modelcontextprotocol/typescript-sdk

GitHub
28 updates · last 90 days1 watchersOpen source

Last release:

The MCP TypeScript SDK is the official TypeScript implementation for building Model Context Protocol servers and clients for Node.js, Bun, and Deno. It provides server and client libraries plus optional middleware adapters to wire MCP into runtimes like Node.js HTTP, Express, and Hono. It is useful if you want to expose or consume MCP tools, resources, and prompts from a TypeScript app.

Project status

  • Actively maintained. The upstream repo had a push on 2026-07-08, and multiple SDK-related package updates landed around 2026-07-02, indicating ongoing work rather than a dormant state.
  • Apparent update cadence, roughly about once per week in this window (latest upstream push 2026-07-08, with a cluster of beta updates on 2026-07-02). This suggests active iteration during the beta period.

AI summary generated

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • @modelcontextprotocol/codemod@2.0.0-beta.3

    This beta release focuses on making the codemod-generated output more accurate and interoperable. It updates how the codemod determines v2 package versions during migrations (avoiding stale generated version metadata), and it also includes related changes around Bearer authentication support and RFC 7235 quoting behavior.

    SecurityFeatures
  • @modelcontextprotocol/core@2.0.0-beta.3

    This release restores backward-compatible parsing tolerance for legacy inbound tool call results that omit CallToolResult.content. Previously, such requests could fail validation and surface as INVALID_RESULT errors before application code ran.

  • @modelcontextprotocol/express@2.0.0-beta.3

    This beta updates the Express integration to align with new runtime-neutral authentication and OAuth discovery logic added to @modelcontextprotocol/server. The Express middleware and metadata router behavior is largely unchanged, but there is a notable configuration change for insecure issuer handling and a sanitization update to WWW-Authenticate challenge values.

    BreakingFeatures
  • @modelcontextprotocol/fastify@2.0.0-beta.3

    This beta release primarily updates the underlying dependency set rather than introducing new Fastify-specific functionality. The release notes indicate only a dependency bump to @modelcontextprotocol/server@2.0.0-beta.3, with no additional API, behavior, or migration details documented.

  • @modelcontextprotocol/server@2.0.0-beta.3

    Release @modelcontextprotocol/server@2.0.0-beta.3 adds richer schema support for elicitation, plus runtime-neutral Bearer authentication and OAuth metadata serving that work with web-standard fetch hosts. Patch updates improve interop and validation behavior, including legacy tolerance for missing tool result content, stricter JSON Content-Type handling, and more robust cross-bundle error branding.

    BreakingFeatures
  • @modelcontextprotocol/client@2.0.0-beta.3

    Release @modelcontextprotocol/client@2.0.0-beta.3 is largely a collection of interoperability and correctness fixes around legacy MCP wire tolerance, content-type handling, cross-bundle error identification, and HTTP transport/session behavior. The release notes provided focus on several specific client/server runtime fixes, plus an exported helper and TypeScript export-shape cleanup.

    BreakingSecurityFeatures
  • @modelcontextprotocol/node@2.0.0-beta.3

    This beta patch tightens how the Node SDK validates incoming POST request Content-Type headers, making JSON detection stricter and returning 415 for invalid media types. It also exports a new helper, `isJsonContentType`, so transport and framework-adapter authors can reuse the same parsed-media-type logic as the SDK.

    BreakingFeatures
  • @modelcontextprotocol/hono@2.0.0-beta.3

    This release tightens how the server validates the request Content-Type for JSON POST handling, rejecting non-JSON media types with HTTP 415 Unsupported Media Type. It also exports a new isJsonContentType(header) helper so transport and adapter authors can match the framework's parsed media-type behavior.

    BreakingFeatures
  • @modelcontextprotocol/server-legacy@2.0.0-beta.2

    This beta release ships CommonJS builds in addition to the existing ESM output for the MCP TypeScript SDK packages. It updates package exports so CommonJS consumers can successfully use require('@modelcontextprotocol/...'), while keeping the public import paths unchanged.

    BreakingFeatures
  • @modelcontextprotocol/express@2.0.0-beta.2

    This release adds first-class CommonJS support alongside the existing ESM build for @modelcontextprotocol/express, including updated package exports so require(...) works in CommonJS environments. It also normalizes output file extensions across packages (notably @modelcontextprotocol/core moves from .js/.d.ts to .mjs/.d.mts) while keeping public import paths unchanged.

    BreakingFeatures
  • @modelcontextprotocol/node@2.0.0-beta.2

    This release updates the published package outputs to ship CommonJS builds alongside the existing ESM builds, adding `require` support via the `exports` map. It also normalizes emitted file extensions across packages (notably `@modelcontextprotocol/core` moves from `.js`/`.d.ts` to `.mjs`/`.d.mts`), while keeping public import paths unchanged.

    Features
  • @modelcontextprotocol/core@2.0.0-beta.2

    This release updates the published build outputs to ship CommonJS alongside ESM. It normalizes output extensions across packages, with @modelcontextprotocol/core moving from .js/.d.ts to .mjs/.d.mts, while keeping public import paths unchanged.

    BreakingFeatures
  • @modelcontextprotocol/server@2.0.0-beta.2

    This beta patch adds dual ESM and CommonJS distribution for the modelcontextprotocol TypeScript packages, including updated `exports` so CommonJS `require()` can resolve `@modelcontextprotocol/*` entry points. It also fixes HTTP status handling for `MissingRequiredClientCapabilityError (-32021)`, ensuring it maps to `400 Bad Request` per the spec in the uncommitted-response case.

    BreakingFeatures
  • @modelcontextprotocol/fastify@2.0.0-beta.2

    This beta release adds first-class CommonJS compatibility alongside ESM for the @modelcontextprotocol packages, including an updated exports map so require(...) works from CommonJS consumers. It also normalizes output file extensions across packages (notably @modelcontextprotocol/core moves from .js/.d.ts to .mjs/.d.mts) and bumps the @modelcontextprotocol/server dependency to 2.0.0-beta.2.

    BreakingFeatures
  • @modelcontextprotocol/client@2.0.0-beta.2

    The provided release notes for @modelcontextprotocol/client@2.0.0-beta.2 document only one change: the SDK now ships CommonJS builds alongside ESM, emitting both ESM and CJS outputs with updated package exports so require() consumers can load the packages. However, the repository diff for this release window also includes a server-side behavior change around HTTP status codes for a specific MCP error, plus several codemod (v1-to-v2 migration) improvements that are not mentioned in the client release notes.

    BreakingFeatures
  • @modelcontextprotocol/codemod@2.0.0-beta.2

    This beta release updates the package distribution to ship CommonJS builds alongside the existing ESM output, including `require` support via package exports. It also improves the codemod's v1-to-v2 migration behavior based on continued real-world migration iterations.

    BreakingFeatures
  • @modelcontextprotocol/hono@2.0.0-beta.2

    This beta release adds first-class CommonJS compatibility for @modelcontextprotocol/hono, while keeping public import paths the same. It also normalizes emitted file extensions across packages (notably moving @modelcontextprotocol/core from .js/.d.ts to .mjs/.d.mts).

    BreakingFeatures
  • v2.0.0-beta.1

    MCP TypeScript SDK v2.0.0-beta.1 is a major, beta revision aligned with the 2026-07-28 MCP spec, with several API and protocol changes still expected to evolve before the stable release on July 28, 2026. It introduces split server/client packages, Standard Schema support, and new handler ergonomics (a typed request context and web-standard Request/Response for HTTP).

    BreakingFeatures
  • @modelcontextprotocol/hono@2.0.0-beta.1

    This release publishes @modelcontextprotocol/hono@2.0.0-beta.1 as part of the SDK v2 beta, with support for the MCP 2026-07-28 specification revision. The documented change for this package is the beta release itself plus an updated dependency on @modelcontextprotocol/server@2.0.0-beta.1.

  • @modelcontextprotocol/node@2.0.0-beta.1

    This release is labeled as the first beta release of the MCP TypeScript SDK v2, targeting the MCP 2026-07-28 specification revision. The release notes themselves are very sparse and primarily point developers to migration guides, with one explicitly documented dependency bump to @modelcontextprotocol/server@2.0.0-beta.1.

    SecurityFeatures