Smithery Registry OpenAPI Server について
Smithery Registry OpenAPI Serverは、Smithery Registry APIをOpenAPIインターフェースで提供します。OpenAPI対応クライアントからMCPサーバーを検索し、詳細や設定を取得して、設定付きWebSocket起動URLを生成できます。
主な機能
- 01MCPサーバーの一覧表示と絞り込み
- 02セマンティック検索と高度な検索条件
- 03サーバー詳細と接続設定の取得
- 04設定付きWebSocket URLの生成
- 05Bearerトークン認証
活用シーン
- 01オーナーやリポジトリでMCPサーバーを検索
- 02サーバーの接続設定を確認
- 03設定済みサーバーのWebSocket URLを作成
MCP 対応
Smithery Registry APIの操作をOpenAPIサーバーとして公開し、MCPサーバーの検索やWebSocket URLの生成を提供します。クライアントがMCPサーバーの起動設定を取得する用途に使えます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Smithery レジストリ OpenAPI サーバー
このサーバーは Smithery Registry API の OpenAPI インターフェースを提供し、Model Context Protocol(MCP)サーバーの検索や起動設定の取得を可能にします。
機能
- 高度なフィルタリングを使って利用可能な MCP サーバーを一覧表示します
- 接続設定を含むサーバーの詳細情報を取得します
- Base64 でエンコードされた設定を使って WebSocket URL を生成します
- Bearer トークンによる認証に対応しています
- OpenAPI ツールおよびクライアントと互換性があります
認証
Smithery Registry API へのすべてのリクエストには認証が必要です。
Authorizationヘッダーに Bearer トークンが必要です- 形式:
Authorization: Bearer your-api-token - Smithery のユーザープロフィールにある API keys からトークンを取得します
使用方法
インストール
pip install -r requirements.txt
サーバーの実行
uvicorn main:app --host 0.0.0.0 --port 8000 --reload
API エンドポイント
-
GET /servers- 利用可能な MCP サーバーを一覧表示します- クエリパラメーター:
q:検索クエリ(セマンティック検索)page:ページ番号(デフォルト:1)pageSize:1 ページあたりの項目数(デフォルト:10)
qパラメーターで使用できる高度なフィルター構文:- テキスト検索:"machine learning"
- オーナーフィルター:owner:username
- リポジトリフィルター:repo:repository-name
- デプロイ状態:is:deployed
- 例:"owner:smithery-ai repo:fetch is:deployed machine learning"
- クエリパラメーター:
-
GET /servers/{qualified_name}- 特定のサーバーの詳細情報を取得します -
POST /create-websocket-url- エンコードされた設定を含む WebSocket URL を作成します- リクエストボディ:
{ "qualifiedName": "username/repository", "config": { // サーバーのスキーマに一致する設定オブジェクト } }
- リクエストボディ:
WebSocket 接続
MCP サーバーへの直接 WebSocket 接続について:
- URL 形式:
https://server.smithery.ai/${qualifiedName}/ws?config=${base64encode(config)} - 設定はサーバーの configSchema に準拠する必要があります
- 設定は Base64 エンコードされた JSON です
OpenAPI ツールとの統合
このサーバーは、OpenAPI に準拠したあらゆるツールやフレームワークと互換性を持つよう設計されています。API は RESTful の規約に従っており、実行時には /docs エンドポイントで詳細な OpenAPI ドキュメントを提供します。
TypeScript SDK の使用方法
Smithery TypeScript SDK と併用する場合:
import { WebSocketClientTransport } from "@modelcontextprotocol/sdk/client/websocket.js"
import { createSmitheryUrl } from "@smithery/sdk/config.js"
const url = createSmitheryUrl(
"https://your-smithery-mcp-server/ws",
{
// config object matching schema
},
)
const transport = new WebSocketClientTransport(url)
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。