mcpField
T
tRPC <-> MCP

tRPC <-> MCP

本地服务
github.com/Jacse开发工具4390 周前更新

关于 tRPC <-> MCP

tRPC <-> MCP 可将 tRPC 路由以 MCP 服务的形式对外提供。开发者在 tRPC 的 meta 中启用路由后,即可通过 trpc-mcp 生成 MCP 服务并使用标准输入输出传输运行。

主要功能

  1. 01将 tRPC 路由暴露为 MCP 工具
  2. 02通过 meta 配置逐个路由启用
  3. 03基于 zod 的输入与输出校验
  4. 04支持 stdio 传输

适用场景

  1. 01为现有 tRPC API 增加 MCP 访问能力
  2. 02让 AI 助手调用已有的 tRPC 过程

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

tRPC <-> MCP

通过 MCP 提供 tRPC 路由。

用法

2. 添加到 meta
import { initTRPC } from '@trpc/server';
import { type McpMeta } from 'trpc-to-openapi';

const t = initTRPC.meta<McpMeta>().create();
3. 为路由启用
export const appRouter = t.router({
  sayHello: t.procedure
    .meta({ openapi: { enabled: true, description: 'Greet the user' } })
    .input(z.object({ name: z.string() }))
    .output(z.object({ greeting: z.string() }))
    .query(({ input }) => {
      return { greeting: `Hello ${input.name}!` };
    });
});
4. 提供服务
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);

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。