Skip to main content
Glama

司会フロー図

司会者

emceeはOpenAPI仕様に準拠したあらゆるWebアプリケーションにModel Context Protocol(MCP)サーバーを提供するツールです。emceeを使用すると、 Claude Desktopその他のアプリをChatGPTプラグインと同様に外部ツールやデータサービスに接続できます。

クイックスタート

macOS を使用していてHomebrewがインストールされている場合は、すぐに起動して実行できます。

# Install emcee brew install loopwork-ai/tap/emcee

Claude Desktopがインストールされていることを確認してください。

Claude Desktop を emcee で使用するように構成するには:

  1. Claude デスクトップ設定を開く (⌘,)

  2. サイドバーの「開発者」セクションを選択します

  3. 「設定の編集」をクリックして設定ファイルを開きます

クロードデスクトップ設定編集設定ボタン

設定ファイルはApplication Supportディレクトリに保存されています。以下のコマンドでVSCodeから直接開くこともできます。

code ~/Library/Application\ Support/Claude/claude_desktop_config.json

weather.gov MCP サーバーを追加するには、次の構成を追加します。

{ "mcpServers": { "weather": { "command": "emcee", "args": [ "https://api.weather.gov/openapi.json" ] } } }

ファイルを保存したら、Claudeを終了して再起動してください。チャットボックスの右下に🔨57が表示されます。これをクリックすると、MCPを通じてClaudeが利用できるすべてのツールのリストが表示されます。

新しいチャットを開始して、現在地の天気について質問します。

オレゴン州ポートランドの天気はどうですか?

ClaudeはMCPを通じて利用可能なツールを確認し、お客様の質問への回答に適していると判断した場合は、そのツールの使用をリクエストします。このリクエストを確認し、承認または拒否することができます。

許可すると、Claude は MCP と通信し、その結果を使用して応答を通知します。

MCPツールの使用に関するクロードの応答


TIP

エージェントを構築していますか?リモートMCPサーバーを展開したいですか?emcee@loopwork.comまでお問い合わせください。


Related MCP server: OpenAPI Client Generator MCP

なぜ司会者を使うのですか?

MCPは、AIモデルをツールやデータソースに接続するための標準化された方法を提供します。まだ初期段階ですが、ブラウザ、開発者ツール、その他のシステムに接続するためのさまざまなサーバーが既に利用可能です。

emceeは、既存のMCPサーバー実装がないサービス、特に自分で構築しているサービスに接続するための便利な手段だと考えています。OpenAPI仕様のWebアプリをお持ちですか?ダッシュボードやクライアントライブラリなしで、ここまでできることに驚かれるかもしれません。

インストール

インストーラースクリプト

インストーラー スクリプトを使用して、プラットフォーム (Linux x86-64/i386/arm64 および macOS Intel/Apple Silicon) 用の emcee のビルド済みリリースをダウンロードしてインストールします。

# fish sh (curl -fsSL https://get.emcee.sh | psub) # bash, zsh sh <(curl -fsSL https://get.emcee.sh)

自家製ビール

Loopwork の tapからHomebrewを使用して emcee をインストールします。

brew install loopwork-ai/tap/emcee

ドッカー

emcee を使用した事前構築済みのDocker イメージが利用可能です。

docker run -it ghcr.io/loopwork-ai/emcee

ソースからビルド

go 1.24以降が必要です。

git clone https://github.com/loopwork-ai/emcee.git cd emcee go build -o emcee cmd/emcee/main.go

ビルドしたら、その場で実行 ( ./emcee ) することも、 /usr/local/binなどPATH内のどこかに移動することもできます。

使用法

Usage: emcee [spec-path-or-url] [flags] Flags: --basic-auth string Basic auth value (either user:pass or base64 encoded, will be prefixed with 'Basic ') --bearer-auth string Bearer token value (will be prefixed with 'Bearer ') -h, --help help for emcee --raw-auth string Raw value for Authorization header --retries int Maximum number of retries for failed requests (default 3) -r, --rps int Maximum requests per second (0 for no limit) -s, --silent Disable all logging --timeout duration HTTP request timeout (default 1m0s) -v, --verbose Enable debug level logging to stderr --version version for emcee

emcee は、ワイヤ形式としてJSON-RPC 2.0 を使用する MCP 用の標準入出力 (stdio)トランスポートを実装します。

コマンドラインから emcee を実行すると、stdin をリッスンし、stdout に出力し、stderr にログを記録するプログラムが起動します。

認証

認証を必要とする API の場合、emcee はいくつかの認証方法をサポートしています。

認証タイプ

使用例

結果のヘッダー

無記名トークン

--bearer-auth="abc123"

Authorization: Bearer abc123

基本認証

--basic-auth="user:pass"

Authorization: Basic dXNlcjpwYXNz

生の値

--raw-auth="Custom xyz789"

Authorization: Custom xyz789

これらの認証値は直接提供することも、 1Password シークレット参照として提供することもできます。

1Password 参照を使用する場合:

  • op://vault/item/field形式を使用します (例--bearer-auth="op://Shared/X/credential" )

  • 1Password CLI ( op )がインストールされ、 PATHで利用可能であることを確認してください。

  • emcee を実行する前、または Claude Desktop を起動する前に 1Password にサインインしてください

# Install op brew install 1password-cli # Sign in 1Password CLI op signin
{ "mcpServers": { "twitter": { "command": "emcee", "args": [ "--bearer-auth=op://shared/x/credential", "https://api.twitter.com/2/openapi.json" ] } } }

[!重要]
emcee は、コマンド引数として指定された URL から OpenAPI 仕様をダウンロードする際に認証情報を使用しません。OpenAPI 仕様へのアクセスに認証が必要な場合は、まずお好みの HTTP クライアントを使用してローカルファイルにダウンロードし、そのローカルファイルのパスを emcee に指定してください。

OpenAPI仕様の変革

OpenAPI仕様をemceeに渡す前に、標準のUnixユーティリティを使用して変換することができます。これは以下の場合に便利です。

  • jqまたはyqを使用してツールとして公開する特定のエンドポイントを選択する

  • OpenAPI オーバーレイを使用して説明またはパラメータを変更する

  • Redoclyで複数の仕様を組み合わせる

たとえば、 jqを使用してweather.govpointツールのみを含めることができます。

cat path/to/openapi.json | \ jq 'if .paths then .paths |= with_entries(select(.key == "/points/{point}")) else . end' | \ emcee

JSON-RPC

JSON-RPC リクエストを送信することで、提供されている MCP サーバーと直接対話できます。

NOTE

emcee は MCP ツールの機能のみを提供します。リソース、プロンプト、サンプリングなどのその他の機能はまだサポートされていません。

リストツール

{"jsonrpc": "2.0", "method": "tools/list", "params": {}, "id": 1}
{ "jsonrpc":"2.0", "result": { "tools": [ // ... { "name": "tafs", "description": "Returns Terminal Aerodrome Forecasts for the specified airport station.", "inputSchema": { "type": "object", "properties": { "stationId": { "description": "Observation station ID", "type": "string" } }, "required": ["stationId"] } }, // ... ] }, "id": 1 }

通話ツール

{"jsonrpc": "2.0", "method": "tools/call", "params": { "name": "taf", "arguments": { "stationId": "KPDX" }}, "id": 1}
{ "jsonrpc":"2.0", "content": [ { "type": "text", "text": /* Weather forecast in GeoJSON format */, "annotations": { "audience": ["assistant"] } } ] "id": 1 }

デバッグ

MCP Inspectorは、MCPサーバーのテストとデバッグを行うツールです。Claudeやemceeが期待通りに動作しない場合は、このInspectorを使って原因を突き止めることができます。

npx @modelcontextprotocol/inspector emcee https://api.weather.gov/openapi.json # 🔍 MCP Inspector is up and running at http://localhost:5173 🚀
open http://localhost:5173

ライセンス

emcee は、Apache License バージョン 2.0 に基づいてライセンスされます。

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mattt/emcee'

If you have feedback or need assistance with the MCP directory API, please join our Discord server