Skip to main content
Glama

XiYan MCP Server

Apache 2.0
114
  • Linux
  • Apple

目次

特徴

  • 🌐 XiYanSQLを通じて自然言語でデータを取得する
  • 🤖 一般的な LLM (GPT、qwenmax)、Text-to-SQL SOTA モデルをサポート
  • 💻 純粋なローカル モードをサポートします (高いセキュリティ!)
  • 📝 MySQL と PostgreSQL をサポートします。
  • 🖱️ 利用可能なテーブルをリソースとして一覧表示する
  • 🔧 表の内容を読む

プレビュー

建築

このサーバーをプロジェクトに統合する方法は2つあります。以下をご覧ください。左はリモートモードで、デフォルトのモードです。サービスプロバイダーからxiyanSQL-qwencoder-32BモデルにアクセスするにはAPIキーが必要です(設定を参照)。右はより安全なローカルモードで、APIキーは必要ありません。

建築.png

ベストプラクティスとレポート

「コードを1行も書かずに、MCP + Modelscope API-Inferenceを使用してローカルデータアシスタントを構築する」

「ModelscopeのXiyan MCP」

MCPBenchでの評価

以下の図は、MCPBenchベンチマークで測定したXiYan MCPサーバーのパフォーマンスを示しています。XiYan MCPサーバーは、MySQL MCPサーバーとPostgreSQL MCPサーバーの両方と比較して優れたパフォーマンスを示し、2~22パーセントポイントのリードを獲得しました。詳細な実験結果は、 MCPBenchおよびレポート「MCPサーバー評価レポート」でご覧いただけます。

exp\_mcpbench.png

ツールプレビュー

  • get_dataツールは、データベースからデータを取得するための自然言語インターフェースを提供します。このサーバーは、組み込みモデルを使用して入力された自然言語をSQLに変換し、データベースを呼び出してクエリ結果を返します。
  • {dialect}://{table_name}リソースを使用すると、特定の table_name を指定すると、モデル参照用にデータベースからサンプル データの一部を取得できます。
  • {dialect}://リソースは現在のデータベースの名前をリストします

インストール

pipからインストールする

Python 3.11以降が必要です。pipを使ってサーバーをインストールすると、最新バージョンがインストールされます。

pip install xiyan-mcp-server

開発バージョンをソースからインストールする場合は、github のソース コードからインストールできます。

pip install git+https://github.com/XGenerationLab/xiyan_mcp_server.git

Smithery.aiからのインストール

@XGenerationLab/xiyan_mcp_serverをご覧ください

完全にはテストされていません。

構成

サーバーを設定するには、YAML 設定ファイルが必要です。デフォルトの設定ファイルは config_demo.yml に用意されており、以下のような内容になっています。

mcp: transport: "stdio" model: name: "XGenerationLab/XiYanSQL-QwenCoder-32B-2412" key: "" url: "https://api-inference.modelscope.cn/v1/" database: host: "localhost" port: 3306 user: "root" password: "" database: ""

MCP構成

トランスポート プロトコルをstdioまたはsseに設定できます。

標準入出力

stdio プロトコルの場合は、次のように設定できます。

mcp: transport: "stdio"
南南東

sse プロトコルの場合、mcp config を以下のように設定できます。

mcp: transport: "sse" port: 8000 log_level: "INFO"

デフォルトのポートは8000です。必要に応じてポートを変更できます。デフォルトのログレベルはERRORです。より詳細な情報を取得するには、ログレベルをINFOに設定することをお勧めします。

debughostsse_pathmessage_pathなどの他の構成もカスタマイズできますが、通常は変更する必要はありません。

LLM 構成

Nameは使用するモデルの名前、 keyはモデルのAPIキー、 urlモデルのAPI URLです。以下のモデルをサポートしています。

バージョン一般的なLLM(GPT、qwenmax)ModelscopeによるSOTAモデルDashscopeによるSOTAモデル地元の法学修士課程
説明基本的で使いやすい最高のパフォーマンス、安定、推奨最高のパフォーマンス、トライアル用遅い、高セキュリティ
名前公式モデル名(例:gpt-3.5-turbo、qwen-max)XGenerationLab/XiYanSQL-QwenCoder-32B-2412xiyansql-qwencoder-32bxiyansql-qwencoder-3b
サービスプロバイダーのAPIキー(例:OpenAI、Alibaba Cloud)モデルスコープのAPIキーAPIキーをメールで受け取る「」
URLサービスプロバイダーのエンドポイント(例:" https://api.openai.com/v1 ")https://api-inference.modelscope.cn/v1/https://xiyan-stream.biz.aliyun.com/service/api/xiyan-sqlhttp://localhost:5090
一般法学修士

一般的な LLM (例: gpt3.5) を使用する場合は、次のように直接設定できます。

model: name: "gpt-3.5-turbo" key: "YOUR KEY " url: "https://api.openai.com/v1" database:

Alibaba の Qwen (例: Qwen-max) を使用する場合は、次の設定を使用できます。

model: name: "qwen-max" key: "YOUR KEY " url: "https://dashscope.aliyuncs.com/compatible-mode/v1" database:
テキストからSQLへのSOTAモデル

テキストからSQLへの変換におけるSOTAモデルであるXiYanSQL-qwencoder-32B( https://github.com/XGenerationLab/XiYanSQL-QwenCoder )をお勧めします。Birdベンチマークを参照してください。このモデルの使用方法は2つあります。どちらでも使用できます。(1) Modelscope 、(2) Alibaba Cloud DashScope。

(1)モデルスコープ版

Modelscope から API 推論のkeyを適用する必要があります ( https://www.modelscope.cn/docs/model-service/API-Inference/intro )。その後、次の構成を使用できます。

model: name: "XGenerationLab/XiYanSQL-QwenCoder-32B-2412" key: "" url: "https://api-inference.modelscope.cn/v1/"

詳細についてはモデルの説明をお読みください。

(2)ダッシュスコープバージョン

Alibaba Cloud DashScope にモデルをデプロイしたので、次の環境変数を設定する必要があります。 keyを取得するには、メールを送信してください。( godot.lzl@alibaba-inc.com ) メールには、次の情報を添付してください。

name: "YOUR NAME", email: "YOUR EMAIL", organization: "your college or Company or Organization"

メールアドレスにkeyをお送りします。 key ymlファイルに入力してください。 key 1ヶ月または200クエリ、もしくはその他の法的制限により有効期限が切れます。

model: name: "xiyansql-qwencoder-32b" key: "KEY" url: "https://xiyan-stream.biz.aliyun.com/service/api/xiyan-sql"

注: このモデル サービスは試用版です。本番環境で使用する必要がある場合は、お問い合わせください。

(3)ローカルバージョン

あるいは、 XiYanSQL-qwencoder-32Bモデルをご自身のサーバーにデプロイすることもできます。詳細については、ローカルモデルをご覧ください。

データベース構成

hostportuserpassworddatabase 、データベースの接続情報です。

ローカルデータベースまたはリモートデータベースを使用できます。現在、MySQLとPostgreSQLをサポートしています(今後、他の言語にも対応予定です)。

MySQL
database: host: "localhost" port: 3306 user: "root" password: "" database: ""
PostgreSQL

ステップ1: Pythonパッケージをインストールする

pip install psycopg2

ステップ 2: config.yml を次のように準備します。

database: dialect: "postgresql" host: "localhost" port: 5432 user: "" password: "" database: ""

postgresql の場合、 dialectpostgresqlにする必要があることに注意してください。

打ち上げ

サーバーの起動

sseを使用してサーバーを起動する場合は、ターミナルで次のコマンドを実行する必要があります。

YML=path/to/yml python -m xiyan_mcp_server

ブラウザでhttp://localhost:8000/sseの情報が表示されるはずです。(デフォルト設定ですが、MCP サーバーが他のホスト/ポートで動作している場合は変更してください。)

それ以外の場合、 stdioトランスポートプロトコルを使用する場合は、通常、ターミナルで起動するのではなく、特定のmcpアプリケーションでmcpサーバーコマンドを宣言します。ただし、必要に応じてこのコマンドを使用してデバッグすることも可能です。

クライアント設定

クロードデスクトップ

Claude Desktop の設定ファイルにこれを追加します。Claude Desktop の設定例を参照してください。

{ "mcpServers": { "xiyan-mcp-server": { "command": "/xxx/python", "args": [ "-m", "xiyan_mcp_server" ], "env": { "YML": "PATH/TO/YML" } } } }

ここでのPythonコマンドは、Python実行ファイル( /xxx/python )への完全なパスを必要とすることに注意してください。そうでない場合、Pythonインタープリターが見つかりません。このパスはwhich pythonコマンドで確認できます。他のアプリケーションでも同様です。

Claude Desktop は現在、SSE トランスポート プロトコルをサポートしていません。

クライン

Claude Desktopのような設定を準備する

ガチョウ

stdioを使用する場合は、設定に次のコマンドを追加します。Goose設定例を参照してください。

env YML=path/to/yml /xxx/python -m xiyan_mcp_server

それ以外の場合、 sseを使用する場合は、タイプをSSEに変更し、エンドポイントをhttp://127.0.0.1:8000/sseに設定します。

カーソル

次のような同様のコマンドを使用します。

stdioの場合:

{ "mcpServers": { "xiyan-mcp-server": { "command": "/xxx/python", "args": [ "-m", "xiyan_mcp_server" ], "env": { "YML": "path/to/yml" } } } }

sseの場合:

{ "mcpServers": { "xiyan_mcp_server_1": { "url": "http://localhost:8000/sse" } } }
ウィッツィー

コマンドに以下を追加します:

/xxx/python -m xiyan_mcp_server

env: キーはYML、値はymlファイルへのパスを追加します。Witsyの設定例を参照してください。

それは機能しません!

連絡先: Ding Group钉钉群| Weibo でフォローしてください

その他の関連リンク

引用

私たちの仕事が役に立つと思われたなら、遠慮なく引用してください。

@article{xiyansql, title={A Preview of XiYan-SQL: A Multi-Generator Ensemble Framework for Text-to-SQL}, author={Yingqi Gao and Yifu Liu and Xiaoxia Li and Xiaorong Shi and Yin Zhu and Yiming Wang and Shiqi Li and Wei Li and Yuntao Hong and Zhiling Luo and Jinyang Gao and Liyu Mou and Yu Li}, year={2024}, journal={arXiv preprint arXiv:2411.08599}, url={https://arxiv.org/abs/2411.08599}, primaryClass={cs.AI} }
-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

XiYanSQL テキストから SQL へのテクノロジを活用し、MySQL データベースへの自然言語クエリを可能にするモデル コンテキスト プロトコル サーバー。

  1. 特徴
    1. プレビュー
      1. 建築
      2. ベストプラクティスとレポート
      3. MCPBenchでの評価
      4. ツールプレビュー
    2. インストール
      1. pipからインストールする
      2. Smithery.aiからのインストール
    3. 構成
      1. MCP構成
      2. LLM 構成
      3. データベース構成
    4. 打ち上げ
      1. サーバーの起動
      2. クライアント設定
    5. それは機能しません!
      1. その他の関連リンク
        1. 引用

          Related MCP Servers

          • -
            security
            F
            license
            -
            quality
            A Model Context Protocol server that enables SQL query execution, database management, and business intelligence capabilities through MySQL connections.
            Last updated -
            JavaScript
          • -
            security
            -
            license
            -
            quality
            A 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
            -
            quality
            A 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
          • -
            security
            F
            license
            -
            quality
            A 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 -
            1
            Python
            • Linux
            • Apple

          View all related MCP servers

          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/XGenerationLab/xiyan_mcp_server'

          If you have feedback or need assistance with the MCP directory API, please join our Discord server