mcpField
T
tRPC <-> MCP

tRPC <-> MCP

ローカル
github.com/Jacse開発ツール4390 週間前に更新

tRPC <-> MCP について

tRPC <-> MCP は tRPC のルートを MCP サーバーとして提供します。開発者は tRPC の meta でルートを個別に有効化し、trpc-mcp で生成したサーバーを stdio で起動します。

主な機能

  1. 01tRPC ルートを MCP ツールとして公開
  2. 02meta 設定によるルート単位の有効化
  3. 03zod ベースの入力・出力スキーマ
  4. 04stdio トランスポートへの対応

活用シーン

  1. 01既存の tRPC API に MCP アクセスを追加
  2. 02AI アシスタントから既存のプロシージャを呼び出す

MCP 対応

tRPC のルートを MCP サーバーとして公開し、MCP クライアントからツールとして呼び出せるようにします。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの 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);

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。