@neuradex/mcp
v0.1.16
Published
CLI tool for managing Model Context Protocol in Neuradex (WIP)
Readme
@neuradex/mcp
LLMがメモリを参照・更新するために利用するMCPサーバーです。このサーバーを使用することで、ユーザーはaccessKeyを利用して自身が保存した情報(インスタンス)を取得・更新できます。
機能
- インスタンス一覧取得: ユーザーが作成したインスタンス(記憶空間)の一覧を取得
- MCP対応: Model Context Protocolに対応したサーバーとして実装
- テーブル形式/JSON形式での出力対応
実行コマンド
# インストール済みの場合
npx @neuradex/mcp --access-key <your-access-key>
# 開発環境での実行
npm run dev -- --access-key <your-access-key>
# ビルド後の実行
npm run build
node dist/index.js --access-key <your-access-key>コマンドラインオプション
| オプション | 短縮形 | 説明 | デフォルト値 | |------------|--------|------|-------------| | --access-key | -k | Neuradex APIアクセスキー | 環境変数 NEURADEX_ACCESS_KEY | | --api-url | -a | Neuradex API URL | 環境変数 NEURADEX_API または http://localhost:8000 | | --format | -f | 出力形式(json/table) | table |
セットアップ
1. 環境変数の設定
direnvの使用
このプロジェクトではdirenvを使用して開発環境の設定を管理しています。direnvは、特定のディレクトリに入ったときに自動的に環境変数を設定するツールです。
- プロジェクトディレクトリには既に
.envrcファイルが含まれています - 初回またはファイルの変更時には以下のコマンドを実行して承認してください:
direnv allow - ディレクトリに入ると、自動的に以下の環境変数が設定されます:
NEURADEX_API: APIエンドポイント(デフォルト: http://localhost:8000)NEURADEX_LOG_OUTPUT: ログ出力方式(console: コンソール出力,file: ファイル出力)
この設定により、プロジェクトディレクトリに入るだけで開発に必要な環境変数が自動的に設定されます。
accessKeyの設定
accessKeyは以下のいずれかの方法で設定できます:
環境変数
NEURADEX_ACCESS_KEYに設定export NEURADEX_ACCESS_KEY=<your-access-key>.envrcファイルに追加export NEURADEX_ACCESS_KEY=<your-access-key>コマンドライン引数で指定
npx @neuradex/mcp --access-key <your-access-key>
2. 開発環境のセットアップ
# 依存関係のインストール
npm install
# 開発モードで実行
npm run dev -- --access-key <your-access-key>
# ビルド
npm run buildMCPサーバーとしての使用
このプロジェクトはModel Context Protocol (MCP) に対応したサーバーとして実装されており、Claude等のLLMと連携して使用できます。
設定例(Claude Desktop用)
{
"mcpServers": {
"neuradex-memory": {
"command": "node",
"args": ["<path-to-@neuradex/mcp>/dist/index.js"],
"env": {
"NEURADEX_API": "http://localhost:8000",
"NEURADEX_ACCESS_KEY": "<your-access-key>"
}
}
}
}提供するツールとリソース
- ツール:
list_instances- インスタンス一覧を取得 - リソース:
neuradex://instances- インスタンス一覧を提供するリソース
開発情報
このプロジェクトは以下の技術を使用しています:
- TypeScript
- @modelcontextprotocol/sdk
- axios(APIリクエスト)
- commander(CLIインターフェース)
- chalk(出力の色付け)
- table(テーブル形式出力)
- nodemon(ファイル変更監視)
開発サーバー
このプロジェクトでは、MCP開発を効率的に行うための開発サーバーを提供しています。
開発サーバーの起動
# 通常の開発サーバー起動
yarn dev:server
# ファイル変更監視機能付き開発サーバー起動(自動再起動)
yarn dev:server:watchファイル変更監視機能(watch機能)を使用すると、src/ または scripts/ ディレクトリ内のファイルが変更されたときに自動的にサーバーが再起動します。これにより、開発中のコード変更がすぐに反映されるため、開発効率が向上します。
ツールの直接呼び出し
開発中にMCPツールを直接呼び出すには、以下のコマンドを使用します:
yarn dev:invoke '{\"name\":\"tool_name\",\"arguments\":{...}}'例えば、list_instances ツールを呼び出す場合:
yarn dev:invoke '{\"name\":\"list_instances\",\"arguments\":{}}'開発サーバーの仕様
- デフォルトポート: 19731
- エンドポイント: POST http://localhost:19731/
- リクエスト形式: JSON形式
{ "name": "tool_name", "arguments": {...} } - 認証: リクエストヘッダーに
x-api-keyを設定
