Skip to main content
Glama

OpenAI MCP Server

OpenAIとその他のLLMプロバイダーをサポートするMCPコーディングアシスタント

Claude CodeをPythonで強力に再現したツールで、リアルタイム可視化、コスト管理、そしてModel Context Protocol(MCP)サーバー機能が強化されています。このツールは、複数のLLMプロバイダーをサポートし、ソフトウェア開発タスクのための自然言語インターフェースを提供します。

バージョンパイソン

主な特徴

  • マルチプロバイダーサポート: OpenAI、Anthropic、その他のLLMプロバイダーと連携
  • モデルコンテキストプロトコル統合:
    • Claude Desktop や他のクライアントで使用するために MCP サーバーとして実行します
    • 内蔵のMCPクライアントを使用して任意のMCPサーバーに接続します
    • 複雑な問題解決のためのマルチエージェント同期
  • **リアルタイムツール可視化:**ツール実行の進行状況と結果をリアルタイムで確認
  • **コスト管理:**予算管理でトークンの使用状況と経費を追跡
  • **包括的なツールスイート:**ファイル操作、検索、コマンド実行など
  • **強化されたUI:**進捗状況インジケーターと構文の強調表示を備えたリッチなターミナルインターフェース
  • **コンテキスト最適化:**スマートな会話の圧縮とメモリ管理
  • **エージェントの調整:**異なる役割を持つ専門エージェントがタスクを共同で実行できます

インストール

  1. このリポジトリをクローンする
  2. 依存関係をインストールします:
pip install -r requirements.txt
  1. API キーを使用して.envファイルを作成します。
# Choose one or more providers OPENAI_API_KEY=your_openai_api_key_here ANTHROPIC_API_KEY=your_anthropic_api_key_here # Optional model selection OPENAI_MODEL=gpt-4o ANTHROPIC_MODEL=claude-3-opus-20240229

使用法

CLIモード

デフォルトのプロバイダー (利用可能な API キーから決定) を使用して CLI を実行します。

python claude.py chat

プロバイダーとモデルを指定します:

python claude.py chat --provider openai --model gpt-4o

コストを管理するための予算制限を設定します。

python claude.py chat --budget 5.00

MCP サーバーモード

モデルコンテキストプロトコルサーバーとして実行します。

python claude.py serve

MCP インスペクターを使用して開発モードで開始します。

python claude.py serve --dev

ホストとポートを設定します。

python claude.py serve --host 0.0.0.0 --port 8000

追加の依存関係を指定します。

python claude.py serve --dependencies pandas numpy

ファイルから環境変数を読み込み:

python claude.py serve --env-file .env

MCPクライアントモード

推論エンジンとして Claude を使用して MCP サーバーに接続します。

python claude.py mcp-client path/to/server.py

Claude モデルを指定します:

python claude.py mcp-client path/to/server.py --model claude-3-5-sonnet-20241022

付属のサンプルサーバーを試してください:

# In terminal 1 - start the server python examples/echo_server.py # In terminal 2 - connect with the client python claude.py mcp-client examples/echo_server.py

マルチエージェントMCPモード

同期されたエージェントを持つマルチエージェント クライアントを起動します。

python claude.py mcp-multi-agent path/to/server.py

カスタム エージェント構成ファイルを使用します。

python claude.py mcp-multi-agent path/to/server.py --config examples/agents_config.json

エコー サーバーの例:

# In terminal 1 - start the server python examples/echo_server.py # In terminal 2 - launch the multi-agent client python claude.py mcp-multi-agent examples/echo_server.py --config examples/agents_config.json

利用可能なツール

  • **表示:**オプションの行数制限付きでファイルを読み取る
  • **編集:**正確なテキスト置換でファイルを変更する
  • **置換:**ファイルを作成または上書きする
  • **GlobTool:**パターンマッチングでファイルを検索する
  • **GrepTool:**正規表現を使用してファイルの内容を検索する
  • **LS:**ディレクトリの内容を一覧表示する
  • **Bash:**シェルコマンドを実行する

チャットコマンド

  • **/help:**利用可能なコマンドを表示する
  • **/compact:**会話履歴を圧縮してトークンを節約します
  • **/version:**バージョン情報を表示
  • **/providers:**利用可能な LLM プロバイダーを一覧表示します
  • **/cost:**コストと使用量の情報を表示します
  • **/budget [金額]:**予算の上限を設定する
  • **/quit、/exit:**アプリケーションを終了する

建築

Claude Code Python Edition は、モジュール式アーキテクチャで構築されています。

/claude_code/ /lib/ /providers/ # LLM provider implementations /tools/ # Tool implementations /context/ # Context management /ui/ # UI components /monitoring/ # Cost tracking & metrics /commands/ # CLI commands /config/ # Configuration management /util/ # Utility functions claude.py # Main CLI entry point mcp_server.py # Model Context Protocol server

モデルコンテキストプロトコルの使用

Claude Code を MCP サーバーとして使用する

MCP サーバーが実行される場合は、Claude Desktop またはその他の MCP 互換クライアントから接続できます。

  1. MCP サーバーをインストールして実行します。
    python claude.py serve
  2. ブラウザで設定ページを開きます。
    http://localhost:8000
  3. 次の手順に従って、Claude Desktop を構成します。
    • JSON設定をコピーする
    • 自動構成されたJSONファイルをダウンロードする
    • ステップバイステップのセットアップ手順

Claude CodeをMCPクライアントとして使用する

Claude Code を使用して任意の MCP サーバーに接続するには:

  1. 環境または.envファイルにAnthropic APIキーがあることを確認してください
  2. 接続したいMCPサーバーを起動します
  3. MCP クライアントを使用して接続します。
    python claude.py mcp-client path/to/server.py
  4. インタラクティブチャットインターフェースにクエリを入力します

マルチエージェントモードの使用

複雑なタスクの場合、マルチエージェント モードでは複数の専門エージェントが連携できます。

  1. エージェント構成ファイルを作成するか、提供されている例を使用します
  2. MCPサーバーを起動する
  3. マルチエージェントクライアントを起動します。
    python claude.py mcp-multi-agent path/to/server.py --config examples/agents_config.json
  4. コマンド インターフェイスを使用して複数のエージェントと対話します。
    • すべてのエージェントにブロードキャストするメッセージを入力してください
    • 直接通信には/talk Agent_Name messageを使用してください
    • 利用可能なエージェントをすべて表示するには/agentsを使用します。
    • /historyを使用して会話履歴を表示します

貢献

  1. リポジトリをフォークする
  2. 機能ブランチを作成する
  3. テストで変更を実装する
  4. プルリクエストを送信する

ライセンス

マサチューセッツ工科大学

謝辞

このプロジェクトは、Anthropic の Claude Code CLI ツールに触発され、可視性、コスト管理、MCP サーバー機能を強化するための追加機能を備えて Python で再実装されました。# OpenAI Code Assistant

関数呼び出しとストリーミングを備えた OpenAI API を使用する強力なコマンドラインおよび API ベースのコーディング アシスタント。

特徴

  • コーディング支援のためのインタラクティブ CLI
  • 他のアプリケーションとの統合のためのWeb API
  • モデルコンテキストプロトコル(MCP)サーバーの実装
  • 高可用性のためのレプリケーションサポート
  • 拡張性のためのツールベースのアーキテクチャ
  • ツール最適化のための強化学習
  • ブラウザベースのインタラクションのためのWebクライアント

インストール

  1. リポジトリをクローンする
  2. 依存関係をインストールします:
    pip install -r requirements.txt
  3. OpenAI API キーを設定します。
    export OPENAI_API_KEY=your_api_key

使用法

CLIモード

対話型 CLI モードでアシスタントを実行します。

python cli.py

オプション:

  • --model , -m : 使用するモデルを指定します(デフォルト: gpt-4o)
  • --temperature , -t : 応答生成の温度を設定する(デフォルト: 0)
  • --verbose , -v : 追加情報を含む詳細な出力を有効にする
  • --enable-rl/--disable-rl : ツールの最適化のための強化学習を有効/無効にする
  • --rl-update : RLモデルの更新を手動でトリガーする

APIサーバーモード

アシスタントを API サーバーとして実行します。

python cli.py serve

オプション:

  • --host : バインドするホストアドレス(デフォルト: 127.0.0.1)
  • --port , -p : リッスンするポート (デフォルト: 8000)
  • --workers , -w : ワーカープロセスの数(デフォルト: 1)
  • --enable-replication : インスタンス間のレプリケーションを有効にする
  • --primary/--secondary : プライマリインスタンスかセカンダリインスタンスか
  • --peer : 複製先のピアインスタンス (ホスト:ポート)。複数回指定できます。

MCP サーバーモード

アシスタントをモデル コンテキスト プロトコル (MCP) サーバーとして実行します。

python cli.py mcp-serve

オプション:

  • --host : バインドするホストアドレス(デフォルト: 127.0.0.1)
  • --port , -p : リッスンするポート (デフォルト: 8000)
  • --dev : 追加のログ記録を伴う開発モードを有効にする
  • --dependencies : インストールする追加のPython依存関係
  • --env-file : 環境変数を含む .env ファイルへのパス

MCPクライアントモード

アシスタントを推論エンジンとして使用して MCP サーバーに接続します。

python cli.py mcp-client path/to/server.py

オプション:

  • --model , -m : 推論に使用するモデル(デフォルト: gpt-4o)
  • --host : MCP サーバーのホスト アドレス (デフォルト: 127.0.0.1)
  • --port , -p : MCP サーバーのポート (デフォルト: 8000)

デプロイメントスクリプト

簡単に展開するには、提供されているスクリプトを使用します。

./deploy.sh --host 0.0.0.0 --port 8000 --workers 4

レプリケーションを有効にするには:

# Primary instance ./deploy.sh --enable-replication --port 8000 # Secondary instance ./deploy.sh --enable-replication --secondary --port 8001 --peer 127.0.0.1:8000

ウェブクライアント

ウェブクライアントを使用するには、ブラウザでweb-client.htmlを開いてください。API サーバーが実行中であることを確認してください。

APIエンドポイント

標準APIエンドポイント

  • POST /conversation : 新しい会話を作成する
  • POST /conversation/{conversation_id}/message : 会話にメッセージを送信する
  • POST /conversation/{conversation_id}/message/stream : メッセージ応答をストリーミングする
  • GET /conversation/{conversation_id} : 会話の詳細を取得する
  • DELETE /conversation/{conversation_id} : 会話を削除する
  • GET /health : ヘルスチェックエンドポイント

MCP プロトコルエンドポイント

  • GET / : ヘルスチェック(MCPプロトコル)
  • POST /context : プロンプトテンプレートのコンテキストを取得する
  • GET /prompts : 利用可能なプロンプトテンプレートの一覧
  • GET /prompts/{prompt_id} : 特定のプロンプトテンプレートを取得する
  • POST /prompts : 新しいプロンプトテンプレートを作成する
  • PUT /prompts/{prompt_id} : 既存のプロンプトテンプレートを更新する
  • DELETE /prompts/{prompt_id} : プロンプトテンプレートを削除する

レプリケーション

レプリケーションシステムにより、アシスタントの複数のインスタンスを同期状態で実行できます。これにより、以下のメリットが得られます。

  • 高可用性
  • 負荷分散
  • フォールトトレランス

レプリケーションを設定するには:

  1. --enable-replicationでプライマリインスタンスを起動します
  2. --enable-replication --secondary --peer [primary-host:port]でセカンダリインスタンスを起動します。

ツール

アシスタントにはさまざまなツールが含まれています:

  • 天気: 特定の場所の現在の天気を取得します
  • 表示: ファイルシステムからファイルを読み取る
  • 編集: ファイルを編集する
  • 置換: ファイルを書き込む
  • Bash: bashコマンドを実行する
  • GlobTool: ファイルパターンマッチング
  • GrepTool: コンテンツ検索
  • LS: ディレクトリの内容を一覧表示する
  • JinaSearch: Jina.ai を使用した Web 検索
  • JinaFactCheck: Jina.aiを使ったファクトチェック
  • JinaReadURL: ウェブページを読んで要約する

CLIコマンド

  • /help : ヘルプメッセージを表示する
  • /compact : 会話をコンパクトにしてトークンの使用量を減らす
  • /status : トークンの使用状況とセッション情報を表示する
  • /config : 現在の構成設定を表示する
  • /rl-status : RLツールオプティマイザーのステータスを表示する(有効な場合)
  • /rl-update : RLモデルを手動で更新する(有効な場合)
  • /rl-stats : ツールの使用統計を表示する(有効な場合)

Related MCP Servers

  • -
    security
    A
    license
    -
    quality
    A Model Context Protocol (MCP) server that lets you seamlessly use OpenAI's models right from Claude.
    Last updated -
    1
    24
    28
    JavaScript
    MIT License
    • Apple
  • -
    security
    A
    license
    -
    quality
    A simple MCP server for interacting with OpenAI assistants. This server allows other tools (like Claude Desktop) to create and interact with OpenAI assistants through the Model Context Protocol.
    Last updated -
    26
    Python
    MIT License
    • Apple
  • -
    security
    A
    license
    -
    quality
    An MCP server that exposes HTTP methods defined in an OpenAPI specification as tools, enabling interaction with APIs via the Model Context Protocol.
    Last updated -
    2
    Python
    MIT License
  • -
    security
    A
    license
    -
    quality
    A Model Context Protocol (MCP) server implementation for the OpenLedger API. This server provides structured context to AI models according to the MCP specification.
    Last updated -
    8
    TypeScript
    Apache 2.0

View all related MCP servers

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/arthurcolle/openai-mcp'

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