Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 56 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,25 @@
# YDB MCP
---
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://github.com/ydb-platform/ydb-mcp/blob/main/LICENSE)
[![PyPI version](https://badge.fury.io/py/ydb-mcp.svg)](https://badge.fury.io/py/ydb-mcp)

[Model Context Protocol server](https://modelcontextprotocol.io/) for [YDB](https://ydb.tech). It allows to work with YDB databases from any [LLM](https://en.wikipedia.org/wiki/Large_language_model) 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](https://pypi.org/project/pip/). The package is [available on PyPI](https://pypi.org/project/ydb-mcp/) and includes all necessary dependencies.

```bash
pip install ydb-mcp
```
### Via uvx

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.
[uvx](https://docs.astral.sh/uv/concepts/tools/), 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

```json
{
"mcpServers": {
"ydb": {
"command": "python3",
"command": "uvx",
"args": [
"-m", "ydb_mcp",
"ydb-mcp",
"--ydb-endpoint", "grpc://localhost:2136/local"
]
}
Expand All @@ -38,9 +35,9 @@ To use login/password authentication, specify the `--ydb-auth-mode`, `--ydb-logi
{
"mcpServers": {
"ydb": {
"command": "python3",
"command": "uvx",
"args": [
"-m", "ydb_mcp",
"ydb-mcp",
"--ydb-endpoint", "grpc://localhost:2136/local",
"--ydb-auth-mode", "login-password",
"--ydb-login", "<your-username>",
Expand Down Expand Up @@ -92,6 +89,53 @@ To use login/password authentication, specify the `--ydb-auth-mode`, `--ydb-logi
}
```

### Via pip

YDB MCP can be installed using `pip`, [Python's package installer](https://pypi.org/project/pip/). The package is [available on PyPI](https://pypi.org/project/ydb-mcp/) and includes all necessary dependencies.

```bash
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

```json
{
"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:

```json
{
"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:
Expand Down