
fastmcp-sqltools
atarkowskaAGPL-3.0
1 звёзд
FastMCP SQL Tools — это MCP-сервер для SQL-запросов и управления схемами баз данных через AI-ассистента. Он поддерживает три СУБД: PostgreSQL, MySQL и SQLite. Тип базы определяется автоматически из строки подключения DATABASE_URL, настройки не требуются.
Сервер пригодится разработчикам и администраторам. Через него можно просматривать таблицы, изучать их структуру, выполнять запросы на чтение и запись, создавать и изменять объекты базы. Всё это — без переключения между инструментами, прямо в чате. Сервер написан на Python с использованием asyncpg, aiomysql, aiosqlite и работает по протоколу MCP (транспорт stdio).
Установка
uvx fastmcp-sqltoolsХарактеристики
Общее
- СтатусСообщество
- Разработчикatarkowska
- ЛицензияAGPL-3.0
Технологии
- ЯзыкиPython
- Транспортstdio
Описание
Возможности
- Получение списка всех таблиц в подключённой базе
- Детальная информация о схеме таблицы: имена колонок, типы, ограничения (PRIMARY KEY, FOREIGN KEY, NOT NULL, UNIQUE), индексы
- Выполнение любых SQL-запросов — INSERT, UPDATE, DELETE, CREATE, ALTER, DROP
- Безопасное выполнение запросов только на чтение (SELECT) с дополнительной проверкой
- Поддержка PostgreSQL (asyncpg), MySQL (aiomysql) и SQLite (aiosqlite)
- Автоматический выбор драйвера по строке подключения
- Поддержка удалённых и локальных баз, в том числе через URL с аутентификацией
- Интеграция с любыми MCP-клиентами через stdin/stdout
Как подключить
- Установите uv (если не установлен) и выполните команду:
uvx fastmcp-sqltools - Настройте MCP-клиент. Для Claude Desktop откройте файл
claude_desktop_config.jsonи добавьте:{ "mcpServers": { "sql-mcp-tools": { "command": "uvx", "args": ["fastmcp-sqltools"], "env": { "DATABASE_URL": "postgresql://user:password@host:port/database" } } } }
Используйте подходящий формат DATABASE_URL: - PostgreSQL:
postgresql://user:pass@host:port/dbилиpostgres://user:pass@host:port/db - MySQL:
mysql://user:pass@host:port/db - SQLite:
sqlite:///path/to/database.db(три слеша) - Перезапустите клиент. Сервер готов к работе.
Примеры запросов
- «Покажи список всех таблиц в базе данных»
- «Выведи подробную схему таблицы orders: все колонки, типы, индексы и внешние ключи»
- «Добавь в таблицу users колонку phone типа VARCHAR(20) с ограничением UNIQUE»
- «Найди всех клиентов с суммой покупок > 5000, сгруппированных по месяцам, используя безопасный SELECT»
Технические детали
- Язык: Python
- Библиотеки: asyncpg, aiomysql, aiosqlite, FastMCP
- Транспорт: stdio
- Лицензия: GNU Affero General Public License v3.0 (AGPL-3.0)
- Совместимость: Claude Desktop и любые MCP-клиенты, работающие через stdio
- Разработчик: atarkowska