mcpツールボックス
モデルコンテキストプロトコル(MCP)を通じてLLMの機能を強化するための包括的なツールキットです。このパッケージは、LLMが外部サービスやAPIと連携し、テキスト生成以外の機能も拡張できるようにするツールコレクションを提供します。
GitHubリポジトリ: https://github.com/ai-zerolab/mcp-toolbox/
(WIP)ドキュメント: https://ai-zerolab.github.io/mcp-toolbox/
特徴
*nix が主なターゲットですが、Windows でも動作するはずです。
コマンドライン実行: LLM を介して任意のコマンドライン命令を実行します。
Figma 統合: Figma ファイル、コンポーネント、スタイルなどにアクセスします
拡張可能なアーキテクチャ:新しいAPI統合を簡単に追加
MCPプロトコルサポート:Claude Desktopおよびその他のMCP対応LLMと互換性があります
包括的なテスト: 高いテスト範囲を備えた十分にテストされたコードベース
Related MCP server: MCP Python Interpreter
インストール
uvの使用(推奨)
環境を管理するにはuvを使用することをお勧めします。
# Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh # For macOS/Linux
# or
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" # For Windowsその後、最新バージョンのMCPサーバーを実行するためのコマンドとしてuvx "mcp-toolbox@latest" stdio使用できます。オーディオツールとメモリツールはデフォルトのインストールには含まれていません。all extra allインストールすることで、これらを含めることができます。
[audio] はオーディオツール、[memory] はメモリツール、[all] はすべてのツール
uvx "mcp-toolbox[all]@latest" stdioSmithery経由でインストール
Smithery経由で Claude Desktop 用の LLM 拡張ツールボックスを自動的にインストールするには:
npx -y @smithery/cli install @ai-zerolab/mcp-toolbox --client claudepipの使用
pip install "mcp-toolbox[all]"また、MCP サーバーを実行するためのコマンドとしてmcp-toolbox stdio使用することもできます。
構成
環境変数
次の環境変数を設定できます。
FIGMA_API_KEY: Figma 統合用の API キーTAVILY_API_KEY: Tavily統合用のAPIキーDUCKDUCKGO_API_KEY: DuckDuckGo統合用のAPIキーBFL_API_KEY: Flux 画像生成 API の API キー
メモリストレージ
メモリ ツールは、次の場所にデータを保存します。
macOS :
~/Documents/zerolab/mcp-toolbox/memory(iCloud 経由でデバイス間で同期)その他のプラットフォーム:
~/.zerolab/mcp-toolbox/memory
フル構成
Claude Desktop/Cline/Cursor/... で mcp-toolbox を使用するには、構成ファイルに次のコードを追加します。
{
"mcpServers": {
"zerolab-toolbox": {
"command": "uvx",
"args": ["--prerelease=allow", "mcp-toolbox@latest", "stdio"],
"env": {
"FIGMA_API_KEY": "your-figma-api-key",
"TAVILY_API_KEY": "your-tavily-api-key",
"DUCKDUCKGO_API_KEY": "your-duckduckgo-api-key",
"BFL_API_KEY": "your-bfl-api-key"
}
}
}
}完全な機能については:
{
"mcpServers": {
"zerolab-toolbox": {
"command": "uvx",
"args": [
"--prerelease=allow",
"--python=3.12",
"mcp-toolbox[all]@latest",
"stdio"
],
"env": {
"FIGMA_API_KEY": "your-figma-api-key",
"TAVILY_API_KEY": "your-tavily-api-key",
"DUCKDUCKGO_API_KEY": "your-duckduckgo-api-key",
"BFL_API_KEY": "your-bfl-api-key"
}
}
}
}デバッグ構成テンプレートは、以下を使用して生成できます。
uv run generate_config_template.py利用可能なツール
コマンドラインツール
道具 | 説明 |
| コマンドライン命令を実行する |
ファイル操作ツール
道具 | 説明 |
| ファイルからコンテンツを読み取る |
| ファイルにコンテンツを書き込む |
| 正規表現を使用してファイル内のコンテンツを置き換える |
| ディレクトリの内容を詳細情報とともに一覧表示します |
Figmaツール
道具 | 説明 |
| キーでFigmaファイルを取得する |
| Figmaファイルから特定のノードを取得する |
| Figmaファイル内のノードの画像を取得する |
| Figmaファイルで使用されている画像のURLを取得する |
| Figmaファイルにコメントを取得する |
| Figmaファイルにコメントを投稿する |
| Figmaファイルからコメントを削除する |
| チームのプロジェクトを取得する |
| プロジェクトのファイルを取得する |
| チームのコンポーネントを取得する |
| ファイルからコンポーネントを取得する |
| キーでコンポーネントを取得する |
| チームのコンポーネントセットを取得する |
| チームのスタイルを取得する |
| ファイルからスタイルを取得する |
| キーでスタイルを取得する |
小玉州FMツール
道具 | 説明 |
| XiaoyuZhouFMからポッドキャストのエピソードをダウンロードし、オプションで自動的にm4aからmp3に変換します |
オーディオツール
道具 | 説明 |
| 音声ファイルの長さを秒単位で取得する |
| 音声ファイル内の特定の時間範囲から文字起こしされたテキストを取得する |
記憶ツール
道具 | 説明 |
| ツールを使用して何かについて考え、その考えをログに追加します |
| 現在のセッションIDを取得する |
| 記憶データベースに記憶(簡潔と詳細)を保存する |
| セマンティック検索でデータベースから記憶を検索する |
| メモリデータベース内のすべてのメモリを消去します |
マークダウンツール
道具 | 説明 |
| MarkItDownを使用して任意のファイルをMarkdownに変換する |
| MarkItDown を使用して URL を Markdown に変換する |
ウェブツール
道具 | 説明 |
| URLからHTMLコンテンツを取得する |
| URLからHTMLをファイルに保存する |
| Tavily を使用してウェブを検索する(API キーが必要です) |
| DuckDuckGo を使用してウェブを検索する(API キーが必要です) |
Flux画像生成ツール
道具 | 説明 |
| Flux API を使用して画像を生成し、ファイルに保存する |
使用例
MCPサーバーの実行
# Run with stdio transport (default)
mcp-toolbox stdio
# Run with SSE transport
mcp-toolbox sse --host localhost --port 9871Claude Desktopでの使用
構成セクションに示されているようにClaude Desktopを構成します。
Claudeデスクトップを起動
Claude に Figma ファイルの操作を依頼します。
「このFigmaファイル:12345abcdeに関する情報を取得できますか?」
「このFigmaファイル内のコンポーネントを表示してください:12345abcde」
「このFigmaファイルからコメントを取得します: 12345abcde」
Claude にコマンドライン指示を実行するように依頼します。
「現在のディレクトリにはどんなファイルがありますか?」
「現在のシステム時刻は何ですか?」
「特定のファイルの内容を表示します。」
Claude に XiaoyuZhouFM からポッドキャストをダウンロードするよう依頼します。
このポッドキャストのエピソードをダウンロード: https://www.xiaoyuzhoufm.com/episode/67c3d80fb0167b8db9e3ec0f
このポッドキャストをダウンロードして MP3 に変換してください: https://www.xiaoyuzhoufm.com/episode/67c3d80fb0167b8db9e3ec0f
Claude にオーディオファイルの操作を依頼します。
「このオーディオファイル: audio.m4a の長さはどれくらいですか?」
「60秒から90秒までの音声をaudio.m4aに書き起こしてください」
「音声ファイルの2:30から3:00までのテキストを取得」
Claude にファイルまたは URL を Markdown に変換するよう依頼します。
「このファイルをMarkdownに変換: document.docx」
「このウェブページをMarkdownに変換: https://example.com 」
Claude に Web コンテンツの操作を依頼します。
「 https://example.comから HTML コンテンツを取得する」
「 https://example.comからの HTML をファイルに保存する」
「『人工知能ニュース』をウェブで検索」
Claude に Flux を使用して画像を生成するように依頼します。
「山々に沈む美しい夕日の画像を生成します」
「未来都市の画像を作成し、デスクトップに保存する」
「宇宙服を着た猫の肖像画を生成する」
クロードに記憶ツールを使用するように依頼します。
「この重要な事実を覚えておいてください:フランスの首都はパリです」
「現在のセッション ID は何ですか?」
「フランスに関する情報を思い出してください」
「気候変動の影響について考えてみましょう」
「保存されたすべての記憶を忘れる」
発達
ローカルセットアップ
リポジトリをフォークし、ローカル マシンにクローンします。
# Install in development mode
make install
# Activate a virtual environment
source .venv/bin/activate # For macOS/Linux
# or
.venv\Scripts\activate # For Windowsテストの実行
make testチェックの実行
make check建築ドキュメント
make docs新しいツールの追加
新しい API 統合を追加するには:
必要なAPIキーで
config.pyを更新しますmcp_toolbox/に新しいモジュールを作成するAPIクライアントとツールを実装する
新しい機能のテストを追加する
新しい環境変数とツールでREADME.mdを更新します
詳しい手順については開発ガイドを参照してください。
貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。
リポジトリをフォークする
機能ブランチを作成する (
git checkout -b feature/amazing-feature)変更をコミットします (
git commit -m 'Add some amazing feature')ブランチにプッシュする (
git push origin feature/amazing-feature)プルリクエストを開く
ライセンス
このプロジェクトは、リポジトリに含まれるライセンスの条件に従ってライセンスされます。
This server cannot be installed
Resources
Looking for Admin?
Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.