Skip to main content
Glama

toolbox-mcp

Инструментальный MCP-сервер (Tools-only), демонстрирующий полную цепочку вызовов «AI Host → протокол MCP → мультиязычный бэкенд».

Трёхслойная архитектура:

Слой

Язык

Роль

Клей (протокол + мост процессов)

TypeScript / Node

протокол MCP, регистрация инструментов, запуск дочерних процессов C++

Ядро (вычисления)

C++

чисто вычислительное ядро (например, twoSum — сумма двух чисел)

Структура каталога

toolbox-mcp
├── src/            TS 胶水层
│   ├── server.ts   主入口(serveStdio + 6 个 register)
│   ├── pathGuard.ts 路径守卫(限制读写 data/)
│   └── tools/      6 个工具
├── native/         C++ 内核
│   ├── 001.cpp     twoSum 源码
│   └── 001.exe     编译产物(不提交,见下)
├── data/           读写文件工具的操作目录
└── TODO.md         开发计划(#8 Web 面板待办)

Related MCP server: mini-mcp-demo

Требования к окружению

  • Node.js ≥ 20

  • MinGW g++ (для компиляции ядра C++; требуется только для инструмента two_sum)

Установка

npm i

Компиляция C++ ядра

native/001.exe — это артефакт компиляции и не хранится в репозитории. После клонирования его нужно скомпилировать самостоятельно:

g++ -O2 -std=c++20 -static-libgcc -static-libstdc++ native/001.cpp -o native/001.exe

Флаги -static-libgcc -static-libstdc++ позволяют exe включать собственный рантайм, избегая зависимости от libstdc++-6.dll.

Запуск

npm run dev    # 开发(tsx watch)
npm start      # 运行
npm run typecheck   # 类型检查(tsc --noEmit)

Список инструментов

Инструмент

Описание

Слой

echo

Возвращает сообщение

TS

add

Сложение двух чисел

TS

reverse

Разворот строки

TS

read_file

Чтение файла из data/

TS

write_file

Запись файла в data/

TS

two_sum

Сумма двух чисел (запуск ядра C++)

TS → C++

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Exposes a verified tool registry (calculator, sandboxed file read, web fetch) over MCP stdio, enabling any MCP-capable client to reuse the same tools from the inspectable ReAct loop.
    3
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables local tool calling over Model Context Protocol via stdio, providing deterministic tools such as calc.add, text.word_count, and text.summarize_naive after JSON-RPC handshake and discovery.
    MIT