MCP-сервер
Этот проект представляет собой сервер MCP (Multi-Agent Conversation Protocol) для указанного URL-адреса OpenAPI - https://api.apis.guru/v2/specs/spinitron.com/1.0.0/openapi.json , автоматически сгенерированный с помощью конструктора MCP AG2.
Предпосылки
- Питон 3.9+
- пип и уф
Установка
- Клонируйте репозиторий:
- Установка зависимостей: Скрипт .devcontainer/setup.sh управляет установкой зависимостей с помощью
pip install -e ".[dev]"
. Если вы не используете контейнер dev, вы можете запустить эту команду вручную.В качестве альтернативы вы можете использоватьuv
:
Разработка
В этом проекте используется ruff
для линтинга и форматирования, mypy
для статической проверки типов и pytest
для тестирования.
Линтинг и форматирование
Чтобы проверить наличие проблем с линтингом:
Чтобы отформатировать код:
Эти команды также доступны через скрипт scripts/lint.sh .
Статический анализ
Чтобы запустить статический анализ (mypy, bandit, semgrep):
Этот скрипт также настроен как pre-commit hook в .pre-commit-config.yaml .
Проведение тестов
Для запуска тестов с покрытием:
Это запустит pytest и сгенерирует отчет о покрытии. Для объединенного отчета и очистки вы можете использовать:
Предварительные фиксации Хуков
Этот проект использует pre-commit hooks, определенные в .pre-commit-config.yaml . Чтобы установить hooks:
Хуки будут запускаться автоматически перед каждым коммитом.
Запуск сервера
Сервер MCP можно запустить с помощью скрипта mcp_server/main.py . Он поддерживает различные транспортные режимы (например, stdio
, sse
).
Для запуска сервера (например, в режиме 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 для сборки и публикации. Чтобы собрать проект:
Чтобы опубликовать проект:
Эти команды также доступны через скрипт scripts/publish.sh .
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Обеспечивает взаимодействие с управлением плейлистами радиостанций Spinitron и данными вещания через интерфейс Multi-Agent Conversation Protocol, позволяя пользователям запрашивать и управлять плейлистами радиостанций, спинами и другими данными вещания с помощью естественного языка.
Related MCP Servers
- -securityFlicense-qualityEnables interaction with the Audius music platform API, supporting user, track, and playlist operations through the Model Context Protocol.Last updated -9TypeScript
- -securityAlicense-qualityA Model Context Protocol server implementation that allows AI models to interact with and manage Spinnaker deployments, pipelines, and applications through a standardized interface.Last updated -14TypeScriptMIT License
- AsecurityFlicenseAqualityA lightweight Model Context Protocol server that enables AI assistants like Cursor & Claude to control Spotify playback and manage playlists.Last updated -1280TypeScript
- -securityFlicense-qualityIntegrates with Spotify Web API through the Model Context Protocol, allowing users to search tracks, control playback, and manage playlists programmatically.Last updated -JavaScript