Integrations
Enables natural language queries to MySQL databases, allowing users to fetch data, list available tables, and read table contents using natural language commands, powered by XiYanSQL text-to-SQL technology.
Supports use of OpenAI models like GPT-3.5-turbo for processing natural language queries to SQL databases, configurable through the server settings.
Оглавление
Функции
- 🌐 Извлечение данных на естественном языке через XiYanSQL
- 🤖 Поддержка общих LLM (GPT, qwenmax), модели SOTA Text-to-SQL
- 💻 Поддержка чисто локального режима (высокая безопасность!)
- 📝 Поддержка MySQL и PostgreSQL.
- 🖱️ Перечислите доступные таблицы в качестве ресурсов
- 🔧 Прочитать содержимое таблицы
Предварительный просмотр
Архитектура
Существует два способа интеграции этого сервера в ваш проект, как показано ниже: Слева — удаленный режим, который является режимом по умолчанию. Для доступа к модели xiyanSQL-qwencoder-32B от поставщика услуг требуется ключ API (см. Конфигурация ). Другой режим — локальный режим, который более безопасен. Для него ключ API не требуется.
Лучшие практики и отчеты
Оценка на MCPBench
На следующем рисунке показана производительность сервера XiYan MCP, измеренная с помощью бенчмарка MCPBench. Сервер XiYan MCP демонстрирует превосходную производительность по сравнению с сервером MySQL MCP и сервером PostgreSQL MCP, достигая преимущества в 2-22 процентных пункта. Подробные результаты эксперимента можно найти на сайте MCPBench и в отчете "Evaluation Report on MCP Servers" .
Инструменты Предварительный просмотр
- Инструмент
get_data
предоставляет интерфейс на естественном языке для извлечения данных из базы данных. Этот сервер преобразует входной естественный язык в SQL с помощью встроенной модели и вызывает базу данных для возврата результатов запроса. - Ресурс
{dialect}://{table_name}
позволяет получить часть выборочных данных из базы данных для ссылки на модель, если указано конкретное table_name. - Ресурс
{dialect}://
выведет список имен текущих баз данных.
Установка
Установка из pip
Требуется Python 3.11+. Вы можете установить сервер через pip, и он установит последнюю версию:
Если вы хотите установить версию для разработки из исходного кода, вы можете выполнить установку из исходного кода на github:
Установка из Smithery.ai
См . @XGenerationLab/xiyan_mcp_server
Полностью не протестировано.
Конфигурация
Вам нужен файл конфигурации YAML для настройки сервера. Файл конфигурации по умолчанию находится в config_demo.yml и выглядит следующим образом:
Конфигурация МКП
Вы можете установить транспортный протокол stdio
или sse
.
СТДИО
Для протокола stdio можно настроить так:
СШЭ
Для протокола sse вы можете настроить конфигурацию mcp следующим образом:
Порт по умолчанию — 8000
При необходимости вы можете изменить порт. Уровень журнала по умолчанию — ERROR
. Для получения более подробной информации мы рекомендуем установить уровень журнала на INFO
.
Другие конфигурации, такие как debug
, host
, sse_path
, message_path
также можно настроить, но обычно вам не нужно их изменять.
Конфигурация LLM
Name
— имя используемой модели, key
— API-ключ модели, url
— API-url модели. Мы поддерживаем следующие модели.
версии | общие LLM (GPT,qwenmax) | Модель SOTA от Modelscope | Модель SOTA от Dashscope | Местные LLM |
---|---|---|---|---|
описание | базовый, простой в использовании | лучшая производительность, стабильный, рекомендую | лучшее исполнение, для пробы | медленный, с высоким уровнем безопасности |
имя | официальное название модели (например, gpt-3.5-turbo,qwen-max) | XGenerationLab/XiYanSQL-QwenCoder-32B-2412 | xiyansql-qwencoder-32b | xiyansql-qwencoder-3b |
ключ | API-ключ поставщика услуг (например, OpenAI, Alibaba Cloud) | API-ключ modelscope | API-ключ по электронной почте | "" |
URL-адрес | конечная точка поставщика услуг (например, « https://api.openai.com/v1 ») | https://api-inference.modelscope.cn/v1/ | https://xiyan-stream.biz.aliyun.com/service/api/xiyan-sql | http://localhost:5090 |
Общие LLM
Если вы хотите использовать общие LLM, например gpt3.5, вы можете выполнить прямую настройку следующим образом:
Если вы хотите использовать Qwen от Alibaba, например Qwen-max, вы можете использовать следующую конфигурацию:
Модель SOTA «текст-в-SQL»
Мы рекомендуем XiYanSQL-qwencoder-32B ( https://github.com/XGenerationLab/XiYanSQL-QwenCoder ), которая является моделью SOTA в text-to-sql, см. Bird benchmark . Есть два способа использования модели. Вы можете использовать любой из них. (1) Modelscope , (2) Alibaba Cloud DashScope.
(1) Версия Modelscope
Вам необходимо применить key
API-вывода из Modelscope, https://www.modelscope.cn/docs/model-service/API-Inference/intro Затем вы можете использовать следующую конфигурацию:
Более подробную информацию читайте в описании модели .
(2) Версия Dashscope
Мы развернули модель на Alibaba Cloud DashScope, поэтому вам необходимо задать следующие переменные среды: Отправьте мне свой адрес электронной почты, чтобы получить key
. ( godot.lzl@alibaba-inc.com ) В письме прикрепите следующую информацию:
Мы вышлем вам key
по электронной почте. И вы можете ввести key
в файл yml. key
будет истекать через 1 месяц или 200 запросов или другие юридические ограничения.
Примечание: эта модель сервиса предназначена только для пробного использования. Если вам необходимо использовать ее в производстве, свяжитесь с нами.
(3) Локальная версия
В качестве альтернативы вы также можете развернуть модель XiYanSQL-qwencoder-32B на своем собственном сервере. Подробнее см. в разделе Локальная модель .
Конфигурация базы данных
host
, port
, user
, password
, database
— это информация о подключении к базе данных.
Вы можете использовать локальные или любые удаленные базы данных. Теперь мы поддерживаем MySQL и PostgreSQL (скоро больше диалектов).
MySQL
PostgreSQL
Шаг 1: Установка пакетов Python
Шаг 2: подготовьте config.yml следующим образом:
Обратите внимание, что для postgresql dialect
должен быть postgresql
.
Запуск
Запуск сервера
Если вы хотите запустить сервер с помощью sse
, вам необходимо выполнить следующую команду в терминале:
Затем вы должны увидеть информацию по адресу http://localhost:8000/sse в вашем браузере. (По умолчанию, измените, если ваш mcp-сервер работает на другом хосте/порту)
В противном случае, если вы используете транспортный протокол stdio
, вы обычно объявляете команду сервера mcp в определенном приложении mcp вместо того, чтобы запускать ее в терминале. Однако вы все равно можете выполнять отладку с помощью этой команды, если это необходимо.
Настройки клиента
Клод Десктоп
Добавьте это в файл конфигурации Claude Desktop, см. пример конфигурации Claude Desktop
Обратите внимание, что команда Python здесь требует полный путь к исполняемому файлу Python ( /xxx/python
); в противном случае интерпретатор Python не будет найден. Вы можете определить этот путь с помощью команды which python
. То же самое относится и к другим приложениям.
Claude Desktop в настоящее время не поддерживает транспортный протокол SSE.
Клайн
Подготовьте конфигурацию как у Claude Desktop
Гусь
Если вы используете stdio
, добавьте следующую команду в конфигурацию, см. пример конфигурации Goose
В противном случае, если вы используете sse
, измените Type на SSE
и установите конечную точку на http://127.0.0.1:8000/sse
Курсор
Используйте аналогичную команду следующим образом.
Для stdio
:
Для sse
:
Остроумный
Добавьте в команду следующее:
Добавьте env: ключ — YML, а значение — путь к вашему файлу yml. Пример конфигурации Ref Witsy
Это не работает!
Свяжитесь с нами: Ding Group钉钉群| Следуйте за мной на Weibo
Другие ссылки по теме
Цитата
Если вы считаете нашу работу полезной, не стесняйтесь дать нам ссылку.
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Сервер Model Context Protocol, который позволяет выполнять запросы на естественном языке к базам данных MySQL, работающий на основе технологии преобразования текста в SQL XiYanSQL.
- Функции
- Предварительный просмотр
- Установка
- Конфигурация
- Запуск
- Это не работает!
- Другие ссылки по теме
- Цитата
Related Resources
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol server that enables SQL query execution, database management, and business intelligence capabilities through MySQL connections.Last updated -JavaScript
- -security-license-qualityA Model Context Protocol server that enables AI models to interact with MySQL databases, providing tools for querying, executing statements, listing tables, and describing table structures.Last updated -MIT License
- -security-license-qualityA Model Context Protocol server that enables AI models to interact with MySQL databases through a standardized interface, providing tools for querying, executing commands, and managing database schemas.Last updated -JavaScript
- -securityFlicense-qualityA Model Context Protocol server that enables AI models to interact with MySQL databases through natural language, supporting SQL queries, table creation, and schema exploration.Last updated -1Python