Skip to main content
Glama
ydb-platform

YDB MCP

Official
by ydb-platform

YDB MCP


ライセンス PyPIバージョン

YDB用のモデルコンテキストプロトコルサーバー。MCPをサポートするあらゆるLLMからYDBデータベースを操作できます。この統合により、AIを活用したデータベース操作と、YDBインスタンスとの自然言語によるインタラクションが可能になります。

使用法

uvx経由

uvxuv run toolのエイリアスで、様々な Python アプリケーションを明示的にインストールすることなく実行できます。以下は、 uvxを使用して YDB MCP を設定する方法の例です。

例:匿名認証の使用

{
  "mcpServers": {
    "ydb": {
      "command": "uvx",
      "args": [
        "ydb-mcp",
        "--ydb-endpoint", "grpc://localhost:2136/local"
      ]
    }
  }
}

例: ログイン/パスワード認証の使用

ログイン/パスワード認証を使用するには、 --ydb-auth-mode--ydb-login 、および--ydb-password引数を指定します。

{
  "mcpServers": {
    "ydb": {
      "command": "uvx",
      "args": [
        "ydb-mcp",
        "--ydb-endpoint", "grpc://localhost:2136/local",
        "--ydb-auth-mode", "login-password",
        "--ydb-login", "<your-username>",
        "--ydb-password", "<your-password>"
      ]
    }
  }
}

pipx経由

pipx を使うと、PyPI から様々なアプリケーションを個別にインストールすることなく実行できます。ただし、事前に pipxをインストールする必要があります。以下は、 pipxを使って YDB MCP を設定する方法の例です。

例:匿名認証の使用

{
  "mcpServers": {
    "ydb": {
      "command": "pipx",
      "args": [
        "run", "ydb-mcp",
        "--ydb-endpoint", "grpc://localhost:2136/local"
      ]
    }
  }
}

例: ログイン/パスワード認証の使用

ログイン/パスワード認証を使用するには、 --ydb-auth-mode--ydb-login 、および--ydb-password引数を指定します。

{
  "mcpServers": {
    "ydb": {
      "command": "pipx",
      "args": [
        "run", "ydb-mcp",
        "--ydb-endpoint", "grpc://localhost:2136/local",
        "--ydb-auth-mode", "login-password",
        "--ydb-login", "<your-username>",
        "--ydb-password", "<your-password>"
      ]
    }
  }
}

pip経由

YDB MCPは、 Pythonのパッケージインストーラーであるpipを使用してインストールできます。このパッケージはPyPIで入手でき、必要な依存関係がすべて含まれています。

pip install ydb-mcp

YDB MCPを使い始めるには、MCPクライアントがYDBインスタンスと通信できるように設定する必要があります。以下に、お使いの環境に合わせてカスタマイズし、MCPクライアントの設定に組み込むことができる設定ファイルの例を示します。Pythonインタープリターへのパスも、 ydb-mcpパッケージがインストールされている適切な仮想環境に調整する必要があるかもしれません。

例:匿名認証の使用

{
  "mcpServers": {
    "ydb": {
      "command": "python3",
      "args": [
        "-m", "ydb_mcp",
        "--ydb-endpoint", "grpc://localhost:2136/local"
      ]
    }
  }
}

例: ログイン/パスワード認証の使用

ログイン/パスワード認証を使用するには、 --ydb-auth-mode--ydb-login 、および--ydb-password引数を指定します。

{
  "mcpServers": {
    "ydb": {
      "command": "python3",
      "args": [
        "-m", "ydb_mcp",
        "--ydb-endpoint", "grpc://localhost:2136/local",
        "--ydb-auth-mode", "login-password",
        "--ydb-login", "<your-username>",
        "--ydb-password", "<your-password>"
      ]
    }
  }
}

Related MCP server: MCP MySQL Server

利用可能なツール

YDB MCP は、YDB データベースと対話するための次のツールを提供します。

  • ydb_query : YDBデータベースに対してSQLクエリを実行する

    • パラメータ:

      • sql : 実行するSQLクエリ文字列

  • ydb_query_with_params : JSONパラメータを使用してパラメータ化されたSQLクエリを実行する

    • パラメータ:

      • sql : パラメータプレースホルダを含むSQLクエリ文字列

      • params : パラメータ値を含むJSON文字列

  • ydb_list_directory : YDB内のディレクトリの内容を一覧表示する

    • パラメータ:

      • path : リストするYDBディレクトリパス

  • ydb_describe_path : YDB パス (テーブル、ディレクトリなど) の詳細情報を取得します。

    • パラメータ:

      • path : 記述するYDBパス

  • ydb_status : YDB接続の現在のステータスを取得する

発達

このプロジェクトでは、主な開発ツールとしてMake を使用し、一般的な開発タスクに一貫したインターフェースを提供します。

利用可能なMakeコマンド

このプロジェクトには、開発タスク用の様々なコマンドを含む包括的なMakefileが含まれています。各コマンドは、開発ワークフローを効率化し、コードの品質を確保するように設計されています。

  • make all : clean、lint、test を順に実行します (デフォルトのターゲット)

  • make clean : すべてのビルド成果物と一時ファイルを削除する

  • make test : pytestを使ってすべてのテストを実行する

    • 環境変数で設定できます:

      • LOG_LEVEL (デフォルト: WARNING) - テスト出力の詳細度を制御します (DEBUG、INFO、WARNING、ERROR)

  • make unit-tests : 詳細な出力でユニットテストのみを実行する

    • 環境変数で設定できます:

      • LOG_LEVEL (デフォルト: WARNING) - テスト出力の詳細度を制御します (DEBUG、INFO、WARNING、ERROR)

  • make integration-tests : 詳細出力付きの統合テストのみを実行する

    • 環境変数で設定できます:

      • YDB_ENDPOINT (デフォルト: grpc://localhost:2136)

      • YDB_DATABASE (デフォルト: /local)

      • MCP_HOST (デフォルト: 127.0.0.1)

      • MCP_PORT (デフォルト: 8989)

      • LOG_LEVEL (デフォルト: WARNING) - テスト出力の詳細度を制御します (DEBUG、INFO、WARNING、ERROR)

  • make run-server : YDB MCPサーバーを起動する

    • 環境変数で設定できます:

      • YDB_ENDPOINT (デフォルト: grpc://localhost:2136)

      • YDB_DATABASE (デフォルト: /local)

    • 追加の引数はARGS="your args"を使って渡すことができます。

  • make lint : すべての linting チェックを実行する (flake8、mypy、black、isort)

  • make format : black と isort を使用してコードをフォーマットする

  • make install : 開発モードでパッケージをインストールする

  • make dev : すべての開発依存関係を含む開発モードでパッケージをインストールする

テストの詳細度制御

デフォルトでは、出力を簡潔に保つため、テストは最小限の出力(WARNINGレベル)で実行されます。テスト出力の詳細度は、 LOG_LEVEL環境変数を使用して制御できます。

# Run all tests with debug output
make test LOG_LEVEL=DEBUG

# Run integration tests with info output
make integration-tests LOG_LEVEL=INFO

# Run unit tests with warning output (default)
make unit-tests LOG_LEVEL=WARNING

利用可能なログレベル:

  • DEBUG : すべてのデバッグメッセージを表示します。詳細なテストフローに役立ちます。

  • INFO : 情報メッセージ以上を表示します

  • WARNING : 警告とエラーのみを表示します(デフォルト)

  • ERROR : エラーメッセージのみ表示

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/ydb-platform/ydb-mcp'

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