Adonis MCP について
Adonis MCPは、Server-Sent Eventsを使ってリモートMCPサーバーを構築するAdonisJSパッケージです。AdonisJS開発者はサーバー設定を行い、ツール、リソース、プロンプトをルートとして登録できます。
主な機能
- 01AdonisJSでリモートMCPサーバーを構築
- 02Server-Sent Eventsによる通信
- 03サーバー設定のカスタマイズ
- 04ツール、リソース、プロンプトの登録
活用シーン
- 01AdonisJSアプリにMCPエンドポイントを追加
- 02アプリのルートでMCPツールやプロンプトを定義
MCP 対応
このパッケージにより、AdonisJSアプリはSSEを使うリモートサーバーとして、MCPクライアントにツール、リソース、プロンプトを公開できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Adonis MCP
Adonis MCP は、Model Context Protocol(MCP)をサポートする AdonisJS フレームワーク向けのパッケージです。このパッケージを使うと、Server-Sent Events(SSE)を使用するリモート MCP サーバーを簡単に構築できます。
インストール
次のコマンドを実行して、パッケージをインストールします。
node ace add @7nohe/adonis-mcp
設定
インストール後、config/mcp.ts ファイルが生成されます。このファイルを編集して、MCP サーバーの設定をカスタマイズします。
例:
import { defineConfig } from '@7nohe/adonis-mcp'
export default defineConfig({
ssePath: '/sse',
messagesPath: '/messages',
serverOptions: {
name: 'mymcp',
version: '0.0.1',
},
})
使用方法
ルートの登録
start/routes.ts の registerRoutes メソッドを使って、ツールとプロンプトを定義できます。以下はその例です。
import mcp from '@7nohe/adonis-mcp/services/main'
import { ResourceTemplate } from '@modelcontextprotocol/sdk/server/mcp.js'
import { z } from 'zod'
await mcp.registerRoutes((server) => {
server.resource(
'echo',
new ResourceTemplate('echo://{message}', { list: undefined }),
async (uri, { message }) => ({
contents: [
{
uri: uri.href,
text: `Resource echo: ${message}`,
},
],
})
)
server.tool('echo', { message: z.string() }, async ({ message }) => ({
content: [{ type: 'text', text: `Tool echo: ${message}` }],
}))
server.prompt('echo', { message: z.string() }, ({ message }) => ({
messages: [
{
role: 'user',
content: {
type: 'text',
text: `Please process this message: ${message}`,
},
},
],
}))
})
サーバーの起動
ルートを定義したら、次のコマンドを実行して MCP サーバーを起動します。
npm run dev
デバッグ
設定ファイルを使用する
デバッグするには、MCP サーバーの設定ファイル(Claude Desktop や Cursor 用など)を次のように編集します。
{
"mcpServers": {
"mymcp": {
"url": "http://localhost:3333/sse"
}
}
}
Inspector を使用する
Inspector を使う方法もあります。次のコマンドで起動します。
npx @modelcontextprotocol/inspector
- トランスポートタイプを
SSEに設定します。 - URL
http://localhost:3333/sseを入力します。 Connectボタンをクリックします。- ステータスが
Connectedに変わることを確認します。
詳細については、Inspector のドキュメントを参照してください。
ライセンス
このプロジェクトは、MIT ライセンスの下で提供されています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。