---
title: "MCP TypeScript SDK 1.29.0 — MCP compatibility"
description: "The 1.x line is where most frameworks and agents actually sit. Two of its cells explain a whole class of support tickets: `resource` is conditional on protected resource metadata, and there's no issuer validation at all."
canonicalUrl: "https://zuplo.com/learn/mcp/compatibility/clients/typescript-sdk-1x"
pageType: "mcp-client"
kind: "Reference SDK, 1.x line"
verified: "2026-07-31"
---

# MCP TypeScript SDK 1.29.0

> The 1.x line is where most frameworks and agents actually sit. Two of its cells explain a whole class of support tickets: `resource` is conditional on protected resource metadata, and there's no issuer validation at all.

_Reference SDK, 1.x line. Protocol revision: `2025-11-25`._

## Support

- **stdio** — Yes
- **Streamable HTTP** — Yes
- **Legacy HTTP+SSE** — Yes
- **Protocol revision** — `2025-11-25`
- **Runs the OAuth flow** — Yes
- **Registration (RFC 7591)** — Yes
- **Metadata document** — Partial
- **Pre-registered client ID** — Yes
- **Sends resource (RFC 8707)** — Partial
- **Validates iss (RFC 9207)** — No
- **Custom headers** — Yes

**Protocol revision.** `2025-11-25`. This row exists because it's the line most libraries pin, so it sets the real ceiling for a large part of the ecosystem regardless of what the 2.x row says.

## Caveats and sources

Each one names the column it qualifies and cites the page it comes from, which is often not the page in the row's primary source.

### Metadata document

Implemented, and doubly gated: the authorization server must advertise support, and the host application must also expose a metadata document URL on its provider. That second gate is why so many clients built on 1.x still land on dynamic registration.

[Source](https://github.com/modelcontextprotocol/typescript-sdk)

### Sends resource (RFC 8707)

Gated on discovering RFC 9728 protected resource metadata. A server that publishes none gets no `resource` parameter from any client built on this line.

[Source](https://github.com/modelcontextprotocol/typescript-sdk)

### Validates iss (RFC 9207)

Source-verified absence: the 1.29.0 client auth module sends `resource` and performs no issuer validation on the authorization response.

[Source](https://github.com/modelcontextprotocol/typescript-sdk/blob/main/src/client/auth.ts)

[Primary source](https://github.com/modelcontextprotocol/typescript-sdk)

_This row was last verified 2026-07-31 against the 2026-07-28 revision._

- **Clients** — [every client in the matrix](/learn/mcp/compatibility/clients)
