MCP-сервер
Этот проект представляет собой сервер MCP (Multi-Agent Conversation Protocol) для указанного URL-адреса OpenAPI - https://api.apis.guru/v2/specs/googleapis.com/lifesciences/v2beta/openapi.json , автоматически сгенерированный с помощью конструктора MCP AG2.
Предпосылки
Питон 3.9+
пип и уф
Related MCP server: Cloud Logging API Server
Установка
Клонируйте репозиторий:
git clone <repository-url> cd mcp-serverУстановка зависимостей: Скрипт .devcontainer/setup.sh управляет установкой зависимостей с помощью
pip install -e ".[dev]". Если вы не используете контейнер dev, вы можете запустить эту команду вручную.pip install -e ".[dev]"В качестве альтернативы вы можете использовать
uv:uv pip install --editable ".[dev]"
Разработка
В этом проекте используется ruff для линтинга и форматирования, mypy для статической проверки типов и pytest для тестирования.
Линтинг и форматирование
Чтобы проверить наличие проблем с линтингом:
ruff checkЧтобы отформатировать код:
ruff formatЭти команды также доступны через скрипт scripts/lint.sh .
Статический анализ
Чтобы запустить статический анализ (mypy, bandit, semgrep):
./scripts/static-analysis.shЭтот скрипт также настроен как pre-commit hook в .pre-commit-config.yaml .
Проведение тестов
Для запуска тестов с покрытием:
./scripts/test.shЭто запустит pytest и сгенерирует отчет о покрытии. Для объединенного отчета и очистки вы можете использовать:
./scripts/test-cov.shПредварительные фиксации Хуков
Этот проект использует pre-commit hooks, определенные в .pre-commit-config.yaml . Чтобы установить hooks:
pre-commit installХуки будут запускаться автоматически перед каждым коммитом.
Запуск сервера
Сервер MCP можно запустить с помощью скрипта mcp_server/main.py . Он поддерживает различные транспортные режимы (например, stdio , sse ).
Для запуска сервера (например, в режиме stdio):
python mcp_server/main.py stdioСервер можно настроить с помощью переменных среды:
CONFIG_PATH: Путь к файлу конфигурации JSON (например, mcp_server/mcp_config.json ).CONFIG: строка JSON, содержащая конфигурацию.SECURITY: переменные среды для параметров безопасности (например, ключи API).
Подробную информацию о том, как они загружаются, см. в блоке if __name__ == "__main__": в mcp_server/main.py.
Файл tests/test_mcp_server.py демонстрирует, как запустить сервер и взаимодействовать с ним программным способом для тестирования.
Строительство и издательское дело
Этот проект использует Hatch для сборки и публикации. Чтобы собрать проект:
hatch buildЧтобы опубликовать проект:
hatch publishЭти команды также доступны через скрипт scripts/publish.sh .
This server cannot be installed
Resources
Looking for Admin?
Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to authenticate as an admin.