mcp_llm_inferencer について
mcp_llm_inferencerは、ClaudeまたはOpenAI APIを使い、プロンプトに対応する入力からMCPサーバーのコンポーネントを生成するオープンソースライブラリです。ストリーミング、検証、構造化出力に対応します。
主な機能
- 01ClaudeとOpenAI APIに対応
- 02リトライとフォールバック
- 03Claude Desktopのストリーミング
- 04ツールとリソースの検証
- 05構造化コンポーネントの出力
活用シーン
- 01プロンプトからMCPツールを生成
- 02リソーステンプレートを作成
- 03プロンプトハンドラーを構築
- 04コンポーネント生成結果をストリーミング
MCP 対応
ツール、リソーステンプレート、プロンプトハンドラーなど、MCPサーバーのコンポーネントを生成します。MCPサーバー自体としての説明はありません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
mcp_llm_inferencer
はじめに
mcp_llm_inferencer は、Claude や OpenAI の GPT などの大規模言語モデル(LLM)の力を活用し、プロンプトに対応付けられた入力を MCP サーバー向けの具体的なコンポーネントに変換するために設計されたオープンソースライブラリです。これらのコンポーネントには、ツール、リソーステンプレート、プロンプトハンドラーが含まれており、MCP サーバー環境で作業する開発者にとって汎用性の高いツールです。
特長
- LLM 呼び出しエンジン:組み込みの再試行およびフォールバックロジックにより、信頼性の高い応答を確保しながら LLM を効率的に呼び出します。
- Claude と OpenAI の切り替え可能なサポート:好みや利用状況に応じて、Claude API と OpenAI API をシームレスに切り替えられます。
- Claude Desktop のストリーミングサポート:Claude Desktop から応答を直接ストリーミングし、リアルタイムのフィードバックを提供します。
- ツールとリソースの応答検証:生成されたツールとリソースが、デプロイ前に事前定義された基準を満たしていることを確認します。
- 構造化出力のバンドル化:コンポーネントごとに出力を構造化されたバンドルに整理し、統合と利用を簡素化します。
インストール手順
前提条件
- Python 3.6 以上
- Claude または OpenAI の API キー
mcp_llm_inferencer のインストール
-
リポジトリをクローンします:
git clone https://github.com/your-repo/mcp_llm_inferencer.git cd mcp_llm_inferencer -
pip を使用してパッケージをインストールします:
pip install . -
API キーを環境変数として設定します:
- Claude の場合:
export CLAUDE_API_KEY='your-claude-api-key' - OpenAI の場合:
export OPENAI_API_KEY='your-openai-api-key'
- Claude の場合:
使用例
基本的な例
OpenAI API を使用して mcp_llm_inferencer を利用する簡単な例を示します:
from mcp_llm_inferencer import MCPInferencer
# Initialize the inferencer with OpenAI API
inferencer = MCPInferencer(api_type='openai')
# Define your prompt
prompt = "Generate a tool to extract emails from text."
# Generate components
components = inferencer.generate_components(prompt)
print(components)
Claude を使った高度な例
この例では、Claude API とともにライブラリを使用し、ストリーミング応答を処理する方法を示します:
from mcp_llm_inferencer import MCPInferencer
# Initialize the inferencer with Claude API
inferencer = MCPInferencer(api_type='claude', stream=True)
# Define your prompt
prompt = "Create a resource template for an S3 bucket."
# Generate components with streaming support
for component in inferencer.generate_components(prompt):
print(component)
API ドキュメント
クラス:MCPInferencer
初期化
MCPInferencer(api_type, api_key=None, stream=False)
- api_type(str):使用する LLM API の種類('claude' または 'openai')。
- api_key(str、省略可):指定した LLM の API キーです。指定されていない場合は、環境変数からの読み取りを試みます。
- stream(bool、省略可):Claude Desktop のストリーミングサポートを有効にします。
メソッド
- generate_components(prompt)
- 指定されたプロンプトに基づいて MCP サーバーのコンポーネントを生成します。
- prompt(str):LLM に送信する入力プロンプトです。
- 戻り値:生成されたコンポーネントを含む辞書、または辞書のストリームです。
メソッドの使用例
components = inferencer.generate_components("Generate a tool for sentiment analysis.")
ライセンス
mcp_llm_inferencer は MIT ライセンスの下で公開されています。詳細については、LICENSE ファイルをご覧ください。
GitHub リポジトリで課題やプルリクエストを送信して、mcp_llm_inferencer にぜひ貢献してください。
⚠️ 開発状況
このライブラリは現在、開発の初期段階にあります。次の問題により、一部のテストが失敗する場合があります:
これらの問題を修正するための貢献を歓迎します!解決策がある場合は、プルリクエストを送信してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。