SL

syrin-labs/cli

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

48 stars 3 forks Качество 57 Тренд 13ISC

Система разведки времени выполнения, которая делает серверы MCP отладываемыми, тестируемыми и безопасными для запуска в производстве.

Обзор

MCP (Model Context Protocol) — это то, как агенты ИИ называют внешние инструменты — считывают файлы, базы данных запросов, используют API. Если вы создаете или используете MCP-сервер, ваш агент ИИ зависит от правильности определения инструмента. - Описания инструментов слишком расплывчаты для LLM, чтобы выбрать правильный - Два инструмента выглядят так похожи, что модель выбирает один случайным образом - Схемы параметров отсутствуют или неверны - LLM галлюцинирует значения - Инструмент возвращает 12 МБ JSON и выдувает окно контекста - Другой инструмент тихо записывает на диск, когда это не должно - Ваши журналы выглядят нормально. Агент сломался. Одна команда. Ни установки, ни конфигурирования, ни API-ключей: У вас есть собственный MCP-сервер? Пойнт Сирин на это: Если ваш сервер использует stdio вместо HTTP: Хотите попробовать больше команд против локального сервера? Смотрите полный список: Ссылка на ошибку · Ссылка на предупреждение Перечислите, проанализируйте и протестируйте - соединение работает только с -url или -script. Конфигурационный файл не нужен.

Обзор (машинный перевод)

Linter + тестовый бегун для MCP-серверов.

##Проблема

MCP (Model Context Protocol) — это то, как агенты ИИ называют внешние инструменты — считывают файлы, базы данных запросов, используют API. Если вы создаете или используете MCP-сервер, ваш агент ИИ зависит от правильности определения инструмента.

Как правило, нет.

  • Описания инструментов слишком расплывчаты для LLM, чтобы выбрать правильный Два инструмента выглядят так похожи, что модель выбирает один случайным образом. Недостающие или неправильные схемы параметров - LLM галлюцинирует значения Инструмент возвращает 12 МБ JSON и разбивает окно контекста Еще один инструмент бесшумно записывает на диск, когда он не должен
  • Твои бревна выглядят хорошо. Агент сломался.

Сирин улавливает все это перед производством.

Посмотреть в действии

Попробуйте прямо сейчас

Одна команда. Ни установки, ни конфигурирования, ни API-ключей:

У вас есть собственный MCP-сервер? Пойнт Сирин на это:

Если ваш сервер использует stdio вместо HTTP:

Хотите попробовать больше команд против локального сервера?

** Требования: ** Node.js >= 20.12, npm >= 9

Что ловит Сирин

Оригинальное название: What Happens Without Syrin

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

Syrin

A linter + test runner for MCP servers.


The Problem

MCP (Model Context Protocol) is how AI agents call external tools — read files, query databases, hit APIs. If you are building or using an MCP server, your AI agent depends on those tool definitions being correct.

They usually are not.

  • Tool descriptions too vague for the LLM to pick the right one
  • Two tools look so similar the model picks one at random
  • Parameter schemas missing or wrong — LLM hallucinates values
  • A tool returns 12MB of JSON and blows the context window
  • Another tool silently writes to disk when it should not
  • Your logs look fine. The agent is broken.

Syrin catches all of this before production.

$ syrin analyse --transport http --url http://localhost:8000/mcp

 E110  Tool Ambiguity           get_user ↔ fetch_user
 E101  Missing Tool Description process_data has no description
 E102  Underspecified Input     user_id: no format, no example, no enum
 E105  Free Text Propagation    get_status → update_user (unconstrained string)
 W104  Generic Description      "Get data" — too vague for tool selection

 5 issues found (4 errors, 1 warning)

See It In Action


Try It Right Now

One command. No install, no config, no API keys:

npx @syrin/cli analyse --transport http --url https://docs.syrin.dev/mcp

Have your own MCP server running? Point Syrin at it:

npx @syrin/cli analyse --transport http --url http://localhost:8000/mcp

If your server uses stdio instead of HTTP:

npx @syrin/cli analyse --transport stdio --script "python server.py"

Want to try more commands against a local example server?

git clone https://github.com/Syrin-Labs/cli.git
cd cli/examples/demo-mcp-py
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
python server.py --mode http --port 8000 &

npx @syrin/cli list tools --transport http --url http://localhost:8000/mcp
npx @syrin/cli analyse --transport http --url http://localhost:8000/mcp

Requirements: Node.js >= 20.12, npm >= 9


What Syrin Catches

Code Issue What Happens Without Syrin
E110 Tool Ambiguity LLM picks the wrong tool at random
E101 Missing Description LLM has no idea what the tool does
Открыть полный README на GitHub

Установка

npx @syrin/cli analyse --transport http --url https://docs.syrin.dev/mcp
Новичок в MCP? Начните с руководства на mcpskill.org →