MCP Server — cyanheads/mcp-ts-template

A production-grade TypeScript template for scalable MCP servers with built-in observability.

Local serverstdioTypeScript

What is the MCP Server?

A production-grade TypeScript template for scalable MCP servers with built-in observability.

The short version

@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.

  • Declarative definitions — — tool(), resource(), prompt() builders with Zod schemas; appTool()/appResource() add interactive HTML UIs
  • Server-level orientation — — instructions on createApp/createWorkerHandler rides every initialize for the model. Cross-tool composition hints, regional notes, scope guidance — without leaking text into every tool description
  • Server identity — — optional title, websiteUrl, description, icons (SEP-973) on createApp/createWorkerHandler flow to initialize serverInfo, the /.well-known/mcp.json server card, and the landing page
  • Unified Context — — one ctx for logging, tenant-scoped storage, elicitation, cancellation, and task progress
  • Auth — — auth: ['scope'] on definitions, checked before dispatch (no wrapper code). Modes: none, jwt, or oauth (local secret or JWKS)
  • Task tools — — task: true for long-running ops; framework manages create/poll/progress/complete/cancel

More MCP options

Compare MCP servers by category, or browse hosted MCP servers if you prefer an endpoint over a local process.

Maintainer setup documentation.

Configuration

VariableDescriptionRequired
MCP_HTTP_HOSTEndpoint or connection string the server talks to.Optional
MCP_AUTH_SECRET_KEYCredential the server authenticates with.Yes
OPENROUTER_API_KEYCredential the server authenticates with.Yes

Example prompts to try

  • “Use MCP to Builders.”
  • “Use MCP to Context.”

Frequently asked questions

A production-grade TypeScript template for scalable MCP servers with built-in observability. Confirm the tools offered by your installed version in the connected client. Tool availability and permissions depend on the server and account configuration.