🍃 Фурикаке (или фури)
Furikake — это простой в использовании локальный CLI и API для управления и выполнения MCP.
Загрузите серверы MCP [с GitHub]
Обнаружение Smithery.yaml (или автоматическое обнаружение/обработка выполнения)
Полнофункциональный CLI [наноспиннеры, читаемость]
Поддерживаются встроенные MCP Typescript и Javascript
MCP на основе Python являются ключевым элементом дорожной карты (и будут поддерживаться)
Маршруты HTTP API (использует Bun http, stdio to http, clear и standard маршруты)
Настраиваемый порт и видимость маршрутов sudo
Просмотр всех запущенных MCP + журналов для каждого процесса
Управление состоянием процесса с помощью PM2
Создано с помощью Bun и TypeScript
хорошо сочетается с рисом
Установка (macOS/Linux)
Для установки Furikake вы можете использовать следующую команду:
curl -fsSL https://furikake.app/install | bashПроверьте установку, запустив:
furiFurikake использует Bun под капотом, скрипт установки установит Bun, если он еще не установлен.
Улучшить Фурикаке
Чтобы обновить Furikake до последней версии, выполните:
furi upgradeRelated MCP server: GitHub MCP Server Plus
Как использовать
Управление MCP
Furikake работает с любым публичным репозиторием GitHub следующим образом:
furi add <author/repo>например, фури добавить smithery-ai/mcp-fetch
Вы также можете переименовать MCP, используя команду rename . Обратите внимание, что это приведет к перезапуску MCP, если он запущен.
furi rename <old-name> <new-name>например, фури переименовать в smithery-ai/mcp-fetch mcp-fetch
Удалить MCP
furi remove <mcpName>например, фури удалить mcp-fetch
Список установленных MCP
Показать все установленные MCP
furi listНачать MCP
furi start <mcpName> -e '{"name1":"value1", "name2":"value2"}'-e env необязателен и зависит от вызываемого сервера MCP
Убедитесь, что вы передаете допустимый объект JSON флагу -e .
После запуска сервера с флагом -e он будет сохранен в файле конфигурации и повторно использован при следующем использовании сервера.
Чтобы просмотреть переменные окружения, необходимые для MCP, используйте:
furi env <mcpName>Вы можете получить список всех доступных инструментов (с подробностями) любого MCP, используя:
furi tools <mcpName>то вы можете вызвать инструмент с помощью:
Вызов инструмента
furi call <mcpName> <toolName> '{"param1":"value1", "param2":"value2"}'Параметры должны быть допустимой строкой JSON, заключенной в одинарные кавычки.
Остановить MCP
furi stop <mcpName>Перезапустить MCP
furi restart <mcpName>Получить статус всех работающих MCP
Это покажет вам состояние всех работающих MCP.
furi statusЕсли вы хотите получить журналы определенного MCP, вы можете использовать:
furi status <mcpName>чтобы просмотреть больше строк вывода, используйте
Хранилище конфигураций
Все установленные MCP, ваша конфигурация и журналы хранятся в каталоге .furikake , который можно найти, выполнив:
furi whereИспользование агрегатора MCP
Вы можете использовать Furikake с любым клиентом MCP, например Cursor, через MCP Aggregator.
Furi собирает инструменты со всех запущенных MCP и предоставляет их через конечную точку SSE, на которую может подписаться ваше приложение или клиент mcp. Агрегатор автоматически создает список инструментов со всех запущенных MCP и прослушивает новые инструменты по мере запуска и остановки MCP.
Для запуска сервера-агрегатора:
furi meta startЭто также покажет вам конечную точку, на которую должен подписаться ваш клиент MCP.
Вы можете указать собственный порт:
furi meta start -p 9338Если вы не укажете порт, по умолчанию будет 9338.
Чтобы остановить агрегатор:
furi meta stopДля перезапуска агрегатора (с сохранением настроек порта):
furi meta restartЧтобы проверить состояние сервера-агрегатора:
furi meta statusЧтобы просмотреть больше строк вывода, используйте
Использование HTTP API
Любой работающий MCP автоматически будет иметь http-маршрут.
Включение/выключение MCP можно осуществить только через командную строку.
Чтобы получить доступ к вашим MCP через http, вы можете включить прокси-сервер через:
furi http startЧтобы передать порт, можно использовать флаг http start -p <port> .
furi http start -p 9339Если вы не укажете порт, по умолчанию будет 9339.
Чтобы отключить маршрут, вы можете использовать:
furi http stopСправочник по HTTP API
Furikake HTTP API делится на публичные маршруты и маршруты sudo . Публичные маршруты доступны по умолчанию, в то время как маршруты sudo должны быть явно включены. С помощью маршрутов sudo вы можете активно управлять пакетами и экземплярами через HTTP API.
Формат ответа API
Все конечные точки API следуют стандартизированному формату ответа JSON:
Успешные ответы :
{ "success": true, "data": {"The response varies by endpoint"} }Ошибочные ответы :
{ "success": false, "message": "Descriptive error message" }
HTTP-методы
POST — используется только для конечных точек
/mcpName/call/toolNameи/mcpName/startGET — используется для всех остальных конечных точек.
Общественные маршруты
Конечная точка | Метод | Описание | Параметры | Формат ответа |
| ПОЛУЧАТЬ | Список работающих MCP |
|
|
| ПОЛУЧАТЬ | Перечислите все доступные инструменты из всех работающих MCP | Никто |
|
| ПОЛУЧАТЬ | Список инструментов для конкретного MCP | Никто |
|
| ПОЧТА | Вызов инструмента на MCP | Параметры инструмента в формате JSON в теле запроса |
|
Пример использования:
Список работающих МКП:
curl http://localhost:9339/listЧтобы просмотреть все доступные инструменты для всех онлайн-MCP, вы можете использовать:
curl "http://localhost:9339/list"Список инструментов для всех онлайн-MCP:
curl http://localhost:9339/toolsПеречислите инструменты для конкретного MCP:
curl http://localhost:9339/<mcpName>/toolsВызов инструмента:
curl -X POST http://localhost:9339/<mcpName>/call/<toolName> -d '{"data1":"value1", "data2":"value2"}'Маршруты Судо
Чтобы включить маршруты sudo, которые позволяют управлять API MCP:
furi http start --sudoКонечная точка | Метод | Описание | Параметры | Формат ответа |
| ПОЛУЧАТЬ | Получить статус всех MCP (работающих и остановленных) | Никто |
|
| ПОЛУЧАТЬ | Установить MCP с GitHub | Никто |
|
| ПОЛУЧАТЬ | Получить статус конкретного MCP |
|
|
| ПОЛУЧАТЬ | Перезапустить определенный MCP | Никто |
|
| ПОЧТА | Запустить определенный MCP | Переменные среды в формате JSON в теле запроса |
|
| ПОЛУЧАТЬ | Остановка определенного MCP | Никто |
|
| ПОЛУЧАТЬ | Переименовать конкретный MCP |
|
|
| ПОЛУЧАТЬ | Удалить определенный MCP | Никто |
|
| ПОЛУЧАТЬ | Получить переменные среды для определенного MCP | Никто |
|
Пример использования:
Получить статус всех MCP:
curl http://localhost:9339/statusУстановите MCP:
curl http://localhost:9339/add/<author>/<repo>Получить статус и журналы определенного MCP:
curl "http://localhost:9339/<mcpName>/status?lines=20"Запустите MCP с переменными среды:
curl -X POST http://localhost:9339/<mcpName>/start -d '{"API_KEY":"your-api-key-here"}'Перезапустите MCP:
curl http://localhost:9339/<mcpName>/restartОстановка MCP:
curl http://localhost:9339/<mcpName>/stopПереименовать MCP:
curl "http://localhost:9339/<mcpName>/rename?newName=<newName>"Удалить MCP:
curl http://localhost:9339/<mcpName>/removeЕсли у вас возникли проблемы с сервером HTTP API, вы можете использовать furi http status для отладки.
Заключительные замечания
Если вы дошли до этого места, надеюсь, Furikake окажется для вас полезным и сэкономит время. Я создал его ради развлечения, чтобы поработать с MCP более практической частью. Если вы хотите внести свой вклад, смело открывайте issue или pull request. Я сделаю merge после того, как проверю ваши изменения.
Если вы считаете, что это хорошая идея, пожалуйста, отметьте репозиторий звездочкой.
Спасибо, что заглянули на Furikake.