YDB MCP

Official
by ydb-platform
Apache 2.0
17
  • Linux
  • Apple

Integrations

  • Mentioned as part of the uvx tool, which is described as 'an alias for uv run tool' from astral.sh for running Python applications without explicitly installing them

  • Used as the primary development tool, providing commands for development tasks

  • Used as a deployment method for running the MCP server without explicit installation

YDB MCP


Model Context Protocol server for YDB. It allows to work with YDB databases from any LLM that supports MCP. This integration enables AI-powered database operations and natural language interactions with your YDB instances.

Usage

Via uvx

uvx, which is an allias for uv run tool, allows you to run various python applications without explicitly installing them. Below are examples of how to configure YDB MCP using uvx.

Example: Using Anonymous Authentication
{ "mcpServers": { "ydb": { "command": "uvx", "args": [ "ydb-mcp", "--ydb-endpoint", "grpc://localhost:2136/local" ] } } }
Example: Using Login/Password Authentication

To use login/password authentication, specify the --ydb-auth-mode, --ydb-login, and --ydb-password arguments:

{ "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>" ] } } }

Via pipx

pipx allows you to run various applications from PyPI without explicitly installing each one. However, it must be installed first. Below are examples of how to configure YDB MCP using pipx.

Example: Using Anonymous Authentication
{ "mcpServers": { "ydb": { "command": "pipx", "args": [ "run", "ydb-mcp", "--ydb-endpoint", "grpc://localhost:2136/local" ] } } }
Example: Using Login/Password Authentication

To use login/password authentication, specify the --ydb-auth-mode, --ydb-login, and --ydb-password arguments:

{ "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>" ] } } }

Via pip

YDB MCP can be installed using pip, Python's package installer. The package is available on PyPI and includes all necessary dependencies.

pip install ydb-mcp

To get started with YDB MCP, you'll need to configure your MCP client to communicate with the YDB instance. Below are example configuration files that you can customize according to your setup and then put into MCP client's settings. Path to the Python interpreter might also need to be adjusted to the correct virtual environment that has the ydb-mcp package installed.

Example: Using Anonymous Authentication
{ "mcpServers": { "ydb": { "command": "python3", "args": [ "-m", "ydb_mcp", "--ydb-endpoint", "grpc://localhost:2136/local" ] } } }
Example: Using Login/Password Authentication

To use login/password authentication, specify the --ydb-auth-mode, --ydb-login, and --ydb-password arguments:

{ "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>" ] } } }

Available Tools

YDB MCP provides the following tools for interacting with YDB databases:

  • ydb_query: Run a SQL query against a YDB database
    • Parameters:
      • sql: SQL query string to execute
  • ydb_query_with_params: Run a parameterized SQL query with JSON parameters
    • Parameters:
      • sql: SQL query string with parameter placeholders
      • params: JSON string containing parameter values
  • ydb_list_directory: List directory contents in YDB
    • Parameters:
      • path: YDB directory path to list
  • ydb_describe_path: Get detailed information about a YDB path (table, directory, etc.)
    • Parameters:
      • path: YDB path to describe
  • ydb_status: Get the current status of the YDB connection

Development

The project uses Make as its primary development tool, providing a consistent interface for common development tasks.

Available Make Commands

The project includes a comprehensive Makefile with various commands for development tasks. Each command is designed to streamline the development workflow and ensure code quality:

  • make all: Run clean, lint, and test in sequence (default target)
  • make clean: Remove all build artifacts and temporary files
  • make test: Run all tests using pytest
    • Can be configured with environment variables:
      • LOG_LEVEL (default: WARNING) - Control test output verbosity (DEBUG, INFO, WARNING, ERROR)
  • make unit-tests: Run only unit tests with verbose output
    • Can be configured with environment variables:
      • LOG_LEVEL (default: WARNING) - Control test output verbosity (DEBUG, INFO, WARNING, ERROR)
  • make integration-tests: Run only integration tests with verbose output
    • Can be configured with environment variables:
      • YDB_ENDPOINT (default: grpc://localhost:2136)
      • YDB_DATABASE (default: /local)
      • MCP_HOST (default: 127.0.0.1)
      • MCP_PORT (default: 8989)
      • LOG_LEVEL (default: WARNING) - Control test output verbosity (DEBUG, INFO, WARNING, ERROR)
  • make run-server: Start the YDB MCP server
    • Can be configured with environment variables:
      • YDB_ENDPOINT (default: grpc://localhost:2136)
      • YDB_DATABASE (default: /local)
    • Additional arguments can be passed using ARGS="your args"
  • make lint: Run all linting checks (flake8, mypy, black, isort)
  • make format: Format code using black and isort
  • make install: Install the package in development mode
  • make dev: Install the package in development mode with all development dependencies

Test Verbosity Control

By default, tests run with minimal output (WARNING level) to keep the output clean. You can control the verbosity of test output using the LOG_LEVEL environment variable:

# 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

Available log levels:

  • DEBUG: Show all debug messages, useful for detailed test flow
  • INFO: Show informational messages and above
  • WARNING: Show only warnings and errors (default)
  • ERROR: Show only error messages

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

hybrid server

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

Model Context Protocol server for YDB databases that enables AI-powered database operations and natural language interactions with YDB instances from any LLM that supports MCP.

  1. Usage
    1. Via uvx
    2. Via pipx
    3. Via pip
  2. Available Tools
    1. Development
      1. Available Make Commands
      2. Test Verbosity Control

    Related MCP Servers

    • -
      security
      F
      license
      -
      quality
      A generic Model Context Protocol framework for building AI-powered applications that provides standardized ways to create MCP servers and clients for integrating LLMs with support for Ollama and Supabase.
      Last updated -
      TypeScript
    • -
      security
      A
      license
      -
      quality
      A Model Context Protocol (MCP) server that wraps the dbt CLI tool, enabling AI coding agents to interact with dbt projects through standardized MCP tools. Developed by Mammoth Growth.
      Last updated -
      8
      Python
      MIT License
      • Linux
      • Apple
    • -
      security
      F
      license
      -
      quality
      An integration server implementing the Model Context Protocol that enables LLM applications to interact with Milvus vector database functionality, allowing vector search, collection management, and data operations through natural language.
      Last updated -
      91
      Python
      • Apple
    • -
      security
      A
      license
      -
      quality
      A Model Context Protocol (MCP) server that enables AI assistants to interact with MySQL databases by executing SQL queries and checking database connectivity.
      Last updated -
      TypeScript
      MIT License
      • Apple
      • Linux

    View all related MCP servers

    ID: 5f9hipc1tz