{"repo":"cyanheads/mcp-ts-core","free":true,"listed":false,"github":"https://github.com/cyanheads/mcp-ts-core","clone":"git clone https://github.com/cyanheads/mcp-ts-core.git","description":"Agent-native TypeScript framework for building MCP servers. Declarative definitions with auth, multi-backend storage, OpenTelemetry, and first-class support for Bun/Node/Cloudflare Workers.","language":"TypeScript","stars":147,"topics":["mcp","mcp-server","model-context-protocol","ai","opentelemetry","cloudflare-workers","agent-native","framework","typescript","cyanheads"],"license":"Apache-2.0","category":"mcp-servers","readme_excerpt":"@cyanheads/mcp-ts-core Agent-native TypeScript framework for building MCP servers. Build tools, not infrastructure. Declarative definitions with auth, multi-backend storage, OpenTelemetry, and first-class support for Bun/Node/Cloudflare Workers. --- What is this? @cyanheads/mcp-ts-core is the infrastructure layer for TypeScript MCP servers. Install it as a dependency — don't fork it. Your agent collaborates with you to design and build the tools, resources, and prompts for your server. The framework handles the plumbing: transports, auth, config, logging, telemetry, & more. That's a complete MCP server, and it shows both of the framework's core contracts. enrichment carries the context an agent reasons with (the parsed query, the true total, an empty-result notice); the framework merges it into structuredContent and mirrors it into content[] , so structuredContent -only clients (Claude Code) and content[] -only clients (Claude Desktop) both see it, no format() needed. The typed errors[] contract handles genuine failures (an empty result is a notice , not a throw), and the linter cross-checks both against the handler body. Both publish in tools/list , so clients preview a tool's success and failure shapes. The rest is automatic: every tool call is logged with duration, payload sizes, and request correlation, and createApp() handles config parsing, logger init, transport startup, signal handlers, and graceful shutdown. Quick start You get a scaffolded project with CLAUDE.md / A","default_branch":null,"files":null,"tree":[],"storefront":"/r/cyanheads","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/cyanheads/mcp-ts-core/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}