greptimedb-mcp-server
by: GreptimeTeam
A Model Context Protocol (MCP) server implementation for GreptimeDB
📌Overview
Purpose: To provide a secure and structured server for AI assistants to interact with GreptimeDB databases, facilitating responsible database exploration and analysis.
Overview: The greptimedb-mcp-server is an implementation of the Model Context Protocol (MCP) designed for GreptimeDB. It allows AI applications to efficiently access and manipulate database resources, including executing SQL queries and retrieving data with controlled access.
Key Features:
-
Resource Management: Includes capabilities to list available tables (
list_resources) and read their data (read_resource), making database exploration intuitive for AI applications. -
SQL Execution: Facilitates executing SQL commands through the
call_toolfeature, ensuring streamlined and secure data manipulation.
greptimedb-mcp-server
A Model Context Protocol (MCP) server implementation for GreptimeDB.
This server provides AI assistants with a secure and structured way to explore and analyze databases. It enables them to list tables, read data, and execute SQL queries through a controlled interface, ensuring responsible database access.
Capabilities
list_resourcesto list tablesread_resourceto read table datalist_toolsto list toolscall_toolto execute an SQLlist_promptsto list promptsget_promptto get the prompt by name
Installation
pip install greptimedb-mcp-server
Configuration
Set the following environment variables:
GREPTIMEDB_HOST=localhost # Database host
GREPTIMEDB_PORT=4002 # Optional: Database port (defaults to 4002 if not specified)
GREPTIMEDB_USER=root
GREPTIMEDB_PASSWORD=
GREPTIMEDB_DATABASE=public
Or via command-line arguments:
--hostthe database host--portthe database port--userthe database username--passwordthe database password--databasethe database name
Usage
Claude Desktop Integration
Configure the MCP server in Claude Desktop's configuration file.
MacOS
Location: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows
Location: %APPDATA%/Claude/claude_desktop_config.json
Example configuration snippet:
{
"mcpServers": {
"greptimedb": {
"command": "uv",
"args": [
"--directory",
"/path/to/greptimedb-mcp-server",
"run",
"-m",
"greptimedb_mcp_server.server"
],
"env": {
"GREPTIMEDB_HOST": "localhost",
"GREPTIMEDB_PORT": "4002",
"GREPTIMEDB_USER": "root",
"GREPTIMEDB_PASSWORD": "",
"GREPTIMEDB_DATABASE": "public"
}
}
}
}
License
MIT License - see LICENSE.md file for details.
Contribute
Prerequisites
- Python with
uvpackage manager - GreptimeDB installation
- MCP server dependencies
Development
# Clone the repository
git clone https://github.com/GreptimeTeam/greptimedb-mcp-server.git
cd greptimedb-mcp-server
# Create virtual environment
uv venv
source venv/bin/activate # or `venv\Scripts\activate` on Windows
# Install development dependencies
uv sync
# Run tests
pytest
Use MCP Inspector for debugging:
npx @modelcontextprotocol/inspector uv \
--directory \
/path/to/greptimedb-mcp-server \
run \
-m \
greptimedb_mcp_server.server
Acknowledgement
This library's implementation was inspired by the following repositories and incorporates their code:
Thanks!
