MCPサーバーにより、Claudeは実行時にカスタムツールを作成・実行できるようになります

開発者が、Claudeがランタイムで新しいツールを作成、更新、実行できるMCPサーバーを構築しました。デプロイ時にツールが固定される標準的なMCP設定とは異なり、このシステムは動的なツール作成を可能にします。
コアアーキテクチャ
サーバーは5つのコアMCPツールを実装しています:
- ツール一覧表示 — 利用可能なツールを返す
- ツール取得 — コードを含む完全なツール定義を取得
- ツール作成 — データベースレジストリに新しいツールを保存
- ツール更新 — 既存のツールを修正
- ツール実行 — 名前で保存されたツールを実行
ツール実行プロセス
ツール実行メタツールは以下のように動作します:
- 要求されたツールをMySQLテーブルで検索
- そのコードを取得
- パラメータをコンテキストとして渡す
- 制限された権限でDenoサブプロセスで実行
- 結果を返す
サンドボックス実装
開発者はNode VM、isolated-vm、Dockerを評価した後、サンドボックス化にDenoを選択しました。Denoが選ばれた理由は:
- ネットワーク/ファイルシステム/サブプロセスを細かく制御できるクリーンな権限モデル
- ネイティブnpmサポート
- TypeScript組み込み
- Dockerの500ms以上に対して約50msのコールドスタート
サンドボックスはこれらのフラグを使用します:--allow-net --deny-read --deny-write --deny-run --deny-ffi。これにより、ツールコードはHTTPリクエストを作成しnpmパッケージを使用できますが、ファイルシステムアクセスやプロセス生成は防止されます。
ツールコード形式
ツールコードは、パラメータ用のコンテキストオブジェクトを受け取るJavaScript/TypeScriptです。ソースからの例:
const response = await fetch(`https://api.example.com/${context.city}`);
const data = await response.json();
return { temp: data.temp, conditions: data.weather[0].description };
自己拡張機能
このシステムは自己拡張ループを可能にします:Claudeが必要な機能を特定 → ツールを作成 → 即座に使用 → 結果が適切でなければ更新。これにより、開発者の介入なしにシステムが時間とともに能力を高めることができます。
実装は、ツールストレージにMySQLを使用するn8nをMCPサーバーとして構築されており、数ヶ月間本番環境で稼働しています。
📖 Read the full source: r/ClaudeAI
👀 See Also

ラーニングキット:コードベースのオンボーディングと探索のためのClaudeコードプラグイン
Learning-kitは、リポジトリを分析して構造化された学習計画とインタラクティブなチュートリアルを生成する無料のClaude Codeプラグインです。開発者が変更を加える前に不慣れなコードベースを理解するのを支援し、設定可能な強制モードと進捗状況の追跡機能を備えています。

Claudeを使って1997年のフットボールマネージャーゲームからデータを抽出する
Ben NuttallはClaudeを使ってFIFA Soccer Manager 97の選手、チーム、スタジアムデータを抽出しました。AIはSM97.DATファイルを解析し、CSVを出力、検索可能なウェブサイトを構築しました。すべてのPythonコードはGitHubに公開されています。

NodeJSプロジェクト向けオープンソースAIメモリストレージ
Mind Palaceは、NodeJS向けのオープンソースのメモリ保存・検索システムで、LLMチャットセッション間で情報を永続化します。主要なLLMとベクトルストアをサポートし、インタラクションから要約された記憶を自動的に抽出・ベクトル化します。

MCPコードモードを活用した効率的なClaudeキーワードリサーチ
ある開発者が、Claudeに自律的なキーワード調査機能を提供するMCPサーバーを構築しました。Code Modeパターンを使用することで、ツール定義のトークン数を数千から約1,000に削減し、searchとexecuteの2つのツールだけで実現しています。