OpenAIとその他のLLMプロバイダーをサポートするMCPコーディングアシスタント
Claude CodeをPythonで強力に再現したツールで、リアルタイム可視化、コスト管理、そしてModel Context Protocol(MCP)サーバー機能が強化されています。このツールは、複数のLLMプロバイダーをサポートし、ソフトウェア開発タスクのための自然言語インターフェースを提供します。
主な特徴
マルチプロバイダーサポート: OpenAI、Anthropic、その他のLLMプロバイダーと連携
モデルコンテキストプロトコル統合:
Claude Desktop や他のクライアントで使用するために MCP サーバーとして実行します
内蔵のMCPクライアントを使用して任意のMCPサーバーに接続します
複雑な問題解決のためのマルチエージェント同期
**リアルタイムツール可視化:**ツール実行の進行状況と結果をリアルタイムで確認
**コスト管理:**予算管理でトークンの使用状況と経費を追跡
**包括的なツールスイート:**ファイル操作、検索、コマンド実行など
**強化されたUI:**進捗状況インジケーターと構文の強調表示を備えたリッチなターミナルインターフェース
**コンテキスト最適化:**スマートな会話の圧縮とメモリ管理
**エージェントの調整:**異なる役割を持つ専門エージェントがタスクを共同で実行できます
Related MCP server: MCP Simple OpenAI Assistant
インストール
このリポジトリをクローンする
依存関係をインストールします:
API キーを使用して
.envファイルを作成します。
使用法
CLIモード
デフォルトのプロバイダー (利用可能な API キーから決定) を使用して CLI を実行します。
プロバイダーとモデルを指定します:
コストを管理するための予算制限を設定します。
MCP サーバーモード
モデルコンテキストプロトコルサーバーとして実行します。
MCP インスペクターを使用して開発モードで開始します。
ホストとポートを設定します。
追加の依存関係を指定します。
ファイルから環境変数を読み込み:
MCPクライアントモード
推論エンジンとして Claude を使用して MCP サーバーに接続します。
Claude モデルを指定します:
付属のサンプルサーバーを試してください:
マルチエージェントMCPモード
同期されたエージェントを持つマルチエージェント クライアントを起動します。
カスタム エージェント構成ファイルを使用します。
エコー サーバーの例:
利用可能なツール
**表示:**オプションの行数制限付きでファイルを読み取る
**編集:**正確なテキスト置換でファイルを変更する
**置換:**ファイルを作成または上書きする
**GlobTool:**パターンマッチングでファイルを検索する
**GrepTool:**正規表現を使用してファイルの内容を検索する
**LS:**ディレクトリの内容を一覧表示する
**Bash:**シェルコマンドを実行する
チャットコマンド
**/help:**利用可能なコマンドを表示する
**/compact:**会話履歴を圧縮してトークンを節約します
**/version:**バージョン情報を表示
**/providers:**利用可能な LLM プロバイダーを一覧表示します
**/cost:**コストと使用量の情報を表示します
**/budget [金額]:**予算の上限を設定する
**/quit、/exit:**アプリケーションを終了する
建築
Claude Code Python Edition は、モジュール式アーキテクチャで構築されています。
モデルコンテキストプロトコルの使用
Claude Code を MCP サーバーとして使用する
MCP サーバーが実行される場合は、Claude Desktop またはその他の MCP 互換クライアントから接続できます。
MCP サーバーをインストールして実行します。
python claude.py serveブラウザで設定ページを開きます。
http://localhost:8000次の手順に従って、Claude Desktop を構成します。
JSON設定をコピーする
自動構成されたJSONファイルをダウンロードする
ステップバイステップのセットアップ手順
Claude CodeをMCPクライアントとして使用する
Claude Code を使用して任意の MCP サーバーに接続するには:
環境または.envファイルにAnthropic APIキーがあることを確認してください
接続したいMCPサーバーを起動します
MCP クライアントを使用して接続します。
python claude.py mcp-client path/to/server.pyインタラクティブチャットインターフェースにクエリを入力します
マルチエージェントモードの使用
複雑なタスクの場合、マルチエージェント モードでは複数の専門エージェントが連携できます。
エージェント構成ファイルを作成するか、提供されている例を使用します
MCPサーバーを起動する
マルチエージェントクライアントを起動します。
python claude.py mcp-multi-agent path/to/server.py --config examples/agents_config.jsonコマンド インターフェイスを使用して複数のエージェントと対話します。
すべてのエージェントにブロードキャストするメッセージを入力してください
直接通信には
/talk Agent_Name messageを使用してください利用可能なエージェントをすべて表示するには
/agentsを使用します。/historyを使用して会話履歴を表示します
貢献
リポジトリをフォークする
機能ブランチを作成する
テストで変更を実装する
プルリクエストを送信する
ライセンス
マサチューセッツ工科大学
謝辞
このプロジェクトは、Anthropic の Claude Code CLI ツールに触発され、可視性、コスト管理、MCP サーバー機能を強化するための追加機能を備えて Python で再実装されました。# OpenAI Code Assistant
関数呼び出しとストリーミングを備えた OpenAI API を使用する強力なコマンドラインおよび API ベースのコーディング アシスタント。
特徴
コーディング支援のためのインタラクティブ CLI
他のアプリケーションとの統合のためのWeb API
モデルコンテキストプロトコル(MCP)サーバーの実装
高可用性のためのレプリケーションサポート
拡張性のためのツールベースのアーキテクチャ
ツール最適化のための強化学習
ブラウザベースのインタラクションのためのWebクライアント
インストール
リポジトリをクローンする
依存関係をインストールします:
pip install -r requirements.txtOpenAI API キーを設定します。
export OPENAI_API_KEY=your_api_key
使用法
CLIモード
対話型 CLI モードでアシスタントを実行します。
オプション:
--model,-m: 使用するモデルを指定します(デフォルト: gpt-4o)--temperature,-t: 応答生成の温度を設定する(デフォルト: 0)--verbose,-v: 追加情報を含む詳細な出力を有効にする--enable-rl/--disable-rl: ツールの最適化のための強化学習を有効/無効にする--rl-update: RLモデルの更新を手動でトリガーする
APIサーバーモード
アシスタントを API サーバーとして実行します。
オプション:
--host: バインドするホストアドレス(デフォルト: 127.0.0.1)--port,-p: リッスンするポート (デフォルト: 8000)--workers,-w: ワーカープロセスの数(デフォルト: 1)--enable-replication: インスタンス間のレプリケーションを有効にする--primary/--secondary: プライマリインスタンスかセカンダリインスタンスか--peer: 複製先のピアインスタンス (ホスト:ポート)。複数回指定できます。
MCP サーバーモード
アシスタントをモデル コンテキスト プロトコル (MCP) サーバーとして実行します。
オプション:
--host: バインドするホストアドレス(デフォルト: 127.0.0.1)--port,-p: リッスンするポート (デフォルト: 8000)--dev: 追加のログ記録を伴う開発モードを有効にする--dependencies: インストールする追加のPython依存関係--env-file: 環境変数を含む .env ファイルへのパス
MCPクライアントモード
アシスタントを推論エンジンとして使用して MCP サーバーに接続します。
オプション:
--model,-m: 推論に使用するモデル(デフォルト: gpt-4o)--host: MCP サーバーのホスト アドレス (デフォルト: 127.0.0.1)--port,-p: MCP サーバーのポート (デフォルト: 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}: プロンプトテンプレートを削除する
レプリケーション
レプリケーションシステムにより、アシスタントの複数のインスタンスを同期状態で実行できます。これにより、以下のメリットが得られます。
高可用性
負荷分散
フォールトトレランス
レプリケーションを設定するには:
--enable-replicationでプライマリインスタンスを起動します--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: ツールの使用統計を表示する(有効な場合)