YDB MCP
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.
README
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 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>"
]
}
}
}
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>"
]
}
}
}
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
- Parameters:
-
ydb_query_with_params: Run a parameterized SQL query with JSON parameters- Parameters:
sql: SQL query string with parameter placeholdersparams: JSON string containing parameter values
- Parameters:
-
ydb_list_directory: List directory contents in YDB- Parameters:
path: YDB directory path to list
- Parameters:
-
ydb_describe_path: Get detailed information about a YDB path (table, directory, etc.)- Parameters:
path: YDB path to describe
- Parameters:
-
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 filesmake test: Run all tests using pytest- Can be configured with environment variables:
LOG_LEVEL(default: WARNING) - Control test output verbosity (DEBUG, INFO, WARNING, ERROR)
- Can be configured with environment variables:
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)
- Can be configured with environment variables:
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)
- Can be configured with environment variables:
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"
- Can be configured with environment variables:
make lint: Run all linting checks (flake8, mypy, black, isort)make format: Format code using black and isortmake install: Install the package in development modemake 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 flowINFO: Show informational messages and aboveWARNING: Show only warnings and errors (default)ERROR: Show only error messages
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.