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