SDR MCP Server
SDR MCP-сервер
Управление программно-определяемой радиосистемой (SDR) с помощью разговорного ИИ через протокол Model Context Protocol.
Управляйте оборудованием RTL-SDR с помощью естественного диалога — запрашивайте спектр, настраивайте частоты, просматривайте базы данных станций и визуализируйте «водопад» в реальном времени. Работает с Claude Desktop, любым MCP-клиентом или включенной в комплект веб-панелью управления.
Быстрый старт
# Install
pip install sdr-mcp
# Check hardware
sdr-mcp check
# Start server (STDIO mode for Claude Desktop)
sdr-mcp serveДля веб-панели управления:
cd web_sota
npm install
npm run devДокументация
Документ | Что охватывает |
Полная настройка, драйверы, конфигурация | |
Системный дизайн, потоки данных, транспорт | |
Все 17 инструментов MCP с примерами | |
Основы радио для начинающих | |
Рекомендуемые технические характеристики оборудования |
Функции
Управление оборудованием
Автоматическое обнаружение устройств RTL-SDR, инициализация и настройка
Установка частоты (24 МГц — 1,766 ГГц), усиления (автоматическое или ручное)
Захват IQ-выборок в реальном времени и обработка спектра
Анализ спектра
2048-точечное БПФ (FFT) с окном Хэмминга
Обнаружение пиков и анализ уровня сигнала
История «водопада» (100 строк) для сигналов, изменяющихся во времени
База данных частот
11 предустановленных станций в диапазонах ДВ/СВ/КВ/УКВ
Программы передач с информацией о текущем эфире
Онлайн-поиск через radio-browser.info (более 25 тыс. станций)
Потоковая передача через WebSocket
Трансляция спектра в реальном времени для веб-клиентов
Удаленное управление частотой/усилением через команды WebSocket
Визуализация спектра и «водопада» на базе Canvas
Веб-панель управления
Анализатор спектра — график БПФ в реальном времени с элементами управления частотой/усилением
Отображение «водопада» — цветовая визуализация времени и частоты
Браузер станций — поиск, избранное, фильтры по диапазонам
Онлайн-база данных — запрос к radio-browser.info по названию/стране/жанру
Идентификация сигналов — поиск типов сигналов в SigID Wiki
Оборудование
Рекомендуется: RTL-SDR Blog v4 (~$35)
Непрерывный охват 24 МГц — 1,766 ГГц
0,5 ppm TCXO для стабильности частоты
Разъем SMA, алюминиевый корпус, bias tee
Работает любой SDR на базе RTL2832U с тюнером R820T2. Полные характеристики см. в RTL_SDR_V4.md.
Структура проекта
sdr-mcp/
├── README.md # This file
├── docs/ # Documentation
│ ├── INSTALL.md # Setup guide
│ ├── ARCHITECTURE.md # System design
│ ├── MCP_SERVER.md # Tool reference
│ ├── SDR_TECHNOLOGY.md # Radio primer
│ └── RTL_SDR_V4.md # Hardware specs
├── pyproject.toml # Python package config
├── justfile # Lint, fix, security recipes
├── start.ps1 # Launch backend + webapp
├── src/sdr_mcp/ # Python backend
│ ├── server.py # FastMCP server, 17 tools
│ ├── capture.py # RTL-SDR hardware interface
│ ├── processor.py # FFT / spectrum processing
│ ├── frequency_db.py # Station database
│ ├── online_db.py # radio-browser.info API
│ ├── websocket_server.py # Real-time WebSocket stream
│ ├── transport.py # STDIO / HTTP transport
│ └── cli.py # Command-line interface
├── web_sota/ # React/TypeScript webapp
│ └── src/
│ ├── pages/ # Spectrum, Waterfall, Stations, etc.
│ └── components/ # Layout, UI components
└── tests/ # Pytest test suiteТехнологический стек
Уровень | Технология |
Протокол | FastMCP 3.2, MCP 2.14+ |
Бэкенд | Python 3.12, asyncio |
Оборудование | pyrtlsdr, RtlSdr |
Сигналы | numpy, scipy (FFT) |
Потоковая передача | websockets (RFC 6455) |
Фронтенд | React 19, TypeScript, Vite |
Интерфейс | Tailwind CSS, Radix UI, иконки Lucide |
Стандарты | Fleet SOTA, ruff, Biome, just |
Лицензия
MIT
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/sandraschi/sdr-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server