Skip to main content
Glama
liuqihonggit

@jingjingbox/mcp-cli-bridge

by liuqihonggit

@jingjingbox/mcp-cli-bridge

MCP-CLIブリッジサーバー - MCPプロトコルを通じてCLIツールを呼び出し、AIアシスタントに強力なナレッジグラフとファイル読み取り機能を提供します。

概要

@jingjingbox/mcp-cli-bridge は、Model Context Protocol (MCP) に基づくブリッジサーバーであり、CLIツールの機能をMCPプロトコルを通じてAIアシスタント(TraeCNなど)に公開します。

主な機能

  • ナレッジグラフ管理: エンティティの作成、関係の構築、ノードの検索を行い、完全な知識ネットワークを構築します

  • ファイル読み取り: ファイルの先頭または末尾の内容を効率的に読み取り、大容量ファイルの処理をサポートします

  • プロセス分離: CLIプラグインは独立したプロセスで実行されるため、クラッシュしてもメインサービスに影響を与えません

  • NativeAOTコンパイル: 究極のパフォーマンス、超軽量サイズ、高速起動を実現します

  • プログレッシブ読み込み: ツールは必要に応じて読み込まれるため、コンテキストスペースを占有しません

Related MCP server: mcp_server_for_claudes_toolbox

システム要件

  • OS: Windows x64

  • Node.js: >= 14.0.0

  • ランタイム: .NET 10.0 Runtime (パッケージに含まれています)

インストール

グローバルインストール

npm install -g @jingjingbox/mcp-cli-bridge

npxを使用(推奨)

インストール不要で直接実行可能です:

npx @jingjingbox/mcp-cli-bridge

設定

環境変数

変数

説明

必須

MCP_MEMORY_PATH

MemoryCli ナレッジグラフデータ保存ディレクトリ

はい

データファイルは自動的に作成されます:

  • memory.jsonl - エンティティデータ

  • memory_relations.jsonl - 関係データ

TraeCN 設定例

TraeCNのMCP設定に以下を追加します:

{
  "mcpServers": {
    "cli-bridge": {
      "type": "stdio",
      "command": "npx",
      "args": ["@jingjingbox/mcp-cli-bridge"],
      "enabled": true,
      "env": {
        "MCP_MEMORY_PATH": "D:\\MCP\\Memory"
      }
    }
  }
}

グローバルインストール設定

{
  "mcpServers": {
    "cli-bridge": {
      "type": "stdio",
      "command": "mcp-cli-bridge",
      "enabled": true,
      "env": {
        "MCP_MEMORY_PATH": "D:\\MCP\\Memory"
      }
    }
  }
}

ツール一覧

Host層ツール(直接公開)

ツール名

説明

tool_search

利用可能なCLIツールを検索

tool_execute

指定されたCLIツールコマンドを実行

tool_describe

ツールの説明情報を取得

tool_list

利用可能なすべてのツールをリストアップ

package_status

パッケージのインストール状態を確認

package_install

指定されたパッケージをインストール

MemoryCli ツール(ナレッジグラフ)

tool_execute を通じて呼び出し、コマンドプレフィックスは memory_ です:

ツール名

説明

memory_create_entities

ナレッジグラフに複数のエンティティを作成

memory_create_relations

エンティティ間に関係を作成

memory_read_graph

ナレッジグラフ全体を読み取る

memory_search_nodes

ナレッジグラフ内のノードを検索

memory_add_observations

エンティティに観察記録を追加

memory_delete_entities

エンティティとその関係を削除

memory_open_nodes

名前で特定のノードを取得

FileReaderCli ツール(ファイル読み取り)

tool_execute を通じて呼び出し、コマンドプレフィックスは file_reader_ です:

ツール名

説明

file_reader_read_head

ファイルの先頭N行を読み取る

file_reader_read_tail

ファイルの末尾N行を読み取る

使用例

知識エンティティの作成

{
  "command": "memory_create_entities",
  "entities": [
    {
      "name": "React",
      "entityType": "Framework",
      "observations": ["用于构建用户界面的 JavaScript 库", "由 Meta 维护"]
    },
    {
      "name": "TypeScript",
      "entityType": "Language",
      "observations": ["JavaScript 的超集", "添加了静态类型检查"]
    }
  ]
}

エンティティ関係の構築

{
  "command": "memory_create_relations",
  "relations": [
    {
      "from": "React",
      "to": "TypeScript",
      "relationType": "supports"
    }
  ]
}

知識ノードの検索

{
  "command": "memory_search_nodes",
  "query": "React"
}

ファイル先頭の読み取り

{
  "command": "file_reader_read_head",
  "filePath": "C:\\project\\logs\\app.log",
  "lineCount": 20
}

ファイル末尾の読み取り

{
  "command": "file_reader_read_tail",
  "filePath": "C:\\project\\logs\\error.log",
  "lineCount": 50
}

アーキテクチャ設計

McpHost/
├── McpHost.exe          # MCP 主机服务
├── MemoryCli.exe        # 知识图谱 CLI 插件
├── FileReaderCli.exe    # 文件读取 CLI 插件
└── index.js             # npm 入口文件
  • McpHost: MCPプロトコルサーバー。ツールの公開とCLIプロセスの管理を担当

  • MemoryCli: ナレッジグラフ管理。エンティティ、関係、観察記録のCRUDをサポート

  • FileReaderCli: 高効率なファイル読み取り。大容量ファイルの先頭/末尾読み取りをサポート

技術スタック

  • .NET 10.0 - ランタイムプラットフォーム

  • NativeAOT - ネイティブコンパイル、究極のパフォーマンス

  • C# 13 - プログラミング言語

  • JSON-RPC 2.0 - CLI通信プロトコル

  • MCP Protocol - AIアシスタント通信プロトコル

開発

ソースコードリポジトリ

git clone https://gitee.com/JJbox/memory.git

ビルド

# 使用 PowerShell
.\build.ps1

テスト

# 单元测试
dotnet test McpHost.slnx

# E2E 测试
dotnet run --project tests\E2E\MyMemoryServer.E2E.csproj -c Release

詳細ドキュメント

ライセンス

MIT

作者

JJbox

Related MCP Connectors

Related MCP Servers