tRPC-MCP 服务集成

tRPC-MCP 服务集成

通过 MCP 协议提供 tRPC 路由服务。

快速入门

使用方法

1. 初始化 tRPC

在代码中引入并初始化支持 MCP 的 tRPC:

import { initTRPC } from '@trpc/server';
import { type McpMeta } from 'trpc-to-openapi';
const t = initTRPC.meta<McpMeta>().create();

2. 配置路由

为需要的路由启用 MCP 支持,例如:

export const appRouter = t.router({
  sayHello: t.procedure
    .meta({ openapi: { enabled: true, description: '问候用户' } })
    .input(z.object({ name: z.string() }))
    .output(z.object({ greeting: z.string() }))
    .query(({ input }) => {
      return { greeting: `你好 ${input.name}!` };
    });
});

3. 启动服务

使用以下代码启动 MCP 服务:

import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
import { createMcpServer } from 'trpc-mcp';

const mcpServer = createMcpServer(
  { name: 'trpc-mcp-example', version: '0.0.1' },
  appRouter,
);

const transport = new StdioServerTransport();
await mcpServer.connect(transport);