Skip to main content
Glama
GreptimeTeam

GreptimeDB MCP Server

Official
by GreptimeTeam

greptimedb-mcp-server

PyPI - バージョン ビルドワークフロー MITライセンス

GreptimeDB用のモデルコンテキストプロトコル (MCP) サーバー実装。

このサーバーは、AIアシスタントにデータベースを安全かつ構造化された方法で探索・分析する手段を提供します。制御されたインターフェースを介してテーブルの一覧表示、データの読み取り、SQLクエリの実行が可能になり、責任あるデータベースアクセスが確保されます。

プロジェクトのステータス

これはまだ開発中の実験的なプロジェクトです。データのセキュリティとプライバシーの問題については具体的に対処されていないため、慎重にご利用ください。

機能

  • テーブルを一覧表示するにはlist_resources使用します

  • テーブルデータを読み取るためのread_resource

  • ツールを一覧表示するにはlist_tools使用します

  • SQLを実行するためのcall_tool

  • list_promptsはプロンプトを一覧表示します

  • get_prompt名前でプロンプトを取得します

インストール

pip install greptimedb-mcp-server

構成

次の環境変数を設定します。

GREPTIMEDB_HOST=localhost    # Database host
GREPTIMEDB_PORT=4002         # Optional: Database MySQL port (defaults to 4002 if not specified)
GREPTIMEDB_USER=root
GREPTIMEDB_PASSWORD=
GREPTIMEDB_DATABASE=public

またはコマンドライン引数経由:

  • --hostデータベースホスト、デフォルトはlocalhost

  • --portデータベースポート。MySQLプロトコルポートである必要があります。デフォルトでは4002

  • --userデータベースのユーザー名。デフォルトでは空。

  • --passwordデータベースのパスワード。デフォルトでは空です。

  • --databaseデータベース名。デフォルトはpublic

使用法

クロードデスクトップ統合

Claude Desktop の構成ファイルで MCP サーバーを構成します。

macOS

場所: ~/Library/Application Support/Claude/claude_desktop_config.json

ウィンドウズ

場所: %APPDATA%/Claude/claude_desktop_config.json

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

ライセンス

MIT ライセンス - 詳細については LICENSE.md ファイルを参照してください。

貢献する

Related MCP server: SQLite MCP Server

前提条件

  • uvパッケージ マネージャーを使用した Python

  • GreptimeDBのインストール

  • MCP サーバーの依存関係

発達

# 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

デバッグにはMCP Inspectorを使用します。

npx @modelcontextprotocol/inspector uv \
  --directory \
  /path/to/greptimedb-mcp-server \
  run \
  -m \
  greptimedb_mcp_server.server

了承

このライブラリの実装は、以下の 2 つのリポジトリからインスピレーションを受け、そのコードを組み込んでいます。感謝の意を表します。

ありがとう!

Available Tools

13 tools
create_dashboardC

Create or update a Perses dashboard definition in GreptimeDB.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
definitionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits but only states 'Create or update'. It does not explain whether updates overwrite existing definitions, what happens on duplicate names, or any permission requirements. The lack of detail leaves significant ambiguity for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no wasted words, but it is too brief to convey necessary detail. It achieves conciseness at the expense of completeness, which is not ideal.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema (not shown), the description does not need to explain return values, but it lacks essential context about behavior (e.g., idempotency, if it's a full replacement). The parameter descriptions are absent, and the complexity of 'create or update' is not addressed, making the description incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and the description adds no meaning to the two parameters (name, definition). Both are just listed as string types without any explanation of their purpose, format, or constraints. This is a crucial gap for a tool with only two required parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the verb 'Create or update' and specifies the resource ('Perses dashboard definition') and the context ('in GreptimeDB'), making the function clear. It distinguishes from sibling tools like delete_dashboard and list_dashboards, but the dual action (create/update) slightly reduces specificity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives, nor are there any exclusions or prerequisites mentioned. The agent must infer usage from the tool name and context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_pipelineC

Create a new pipeline in GreptimeDB.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
pipelineYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It states 'Create' implying mutation but lacks details on idempotency, side effects, permissions, error behavior (e.g., overwriting existing pipelines), or any constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

At one sentence, it is concise but sacrifices substance. It is front-loaded with the action and resource, but does not earn its brevity with added value beyond the obvious.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the minimal description, lack of parameter details, no annotations, and existence of an output schema (unused), the description is incomplete. It fails to cover essential context for a tool with two required parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, yet the description adds no information about the two required parameters 'name' and 'pipeline'. It does not explain what values are expected, defaults, or formats, leaving the agent uninformed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Create' and identifies the resource 'pipeline' in GreptimeDB, clearly distinguishing it from siblings like 'create_dashboard', 'delete_pipeline', and 'dryrun_pipeline'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as 'dryrun_pipeline' for testing or 'list_pipelines' for inspection. There are no prerequisites, context, or use case hints.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_dashboardC

Delete a Perses dashboard definition from GreptimeDB.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description only states 'delete' but lacks details on consequences, permissions, or reversibility.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with 9 words, straight to the point, no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having an output schema, the description is too minimal for a destructive operation; lacks context on naming conventions or effects.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and the description does not explain the 'name' parameter beyond the schema title, failing to add meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb 'delete' and resource 'Perses dashboard definition from GreptimeDB', distinguishing it from siblings like delete_pipeline.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, no prerequisites or when-not-to-use mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_pipelineB

Delete a specific version of a pipeline from GreptimeDB.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
versionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits such as irreversibility, permission requirements, or side effects on other pipeline versions. The single word 'Delete' gives no further insight.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that efficiently conveys the tool's purpose without any extraneous information. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the basic purpose but omits details about error handling, idempotency, and behavior when the pipeline version does not exist. An output schema exists, so return values are not required, but overall completeness is adequate for a simple delete operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description adds the phrase 'specific version' which clarifies the version parameter's role. However, no additional constraints, formats, or examples are provided. The parameter names are self-explanatory, but the description adds minimal extra value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (Delete), the resource (a specific version of a pipeline), and the context (from GreptimeDB). It distinguishes well from sibling tools like create_pipeline and list_pipelines.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives, what prerequisites are needed, or when not to use it. Implied context from the name is minimal.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

describe_tableA

Get a table profile: schema, semantic metadata, sample rows, and guidance.

ParametersJSON Schema
NameRequiredDescriptionDefault
tableYes
sample_limitNo
include_samplesNo
include_semanticsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It honestly states the tool returns data without indicating any side effects. The read-only nature is strongly implied by 'Get a table profile,' but not explicitly stated. Good, though a note on non-destructiveness would improve it.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single efficient sentence with no filler. It front-loads the key output components, earning its place without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is reasonably complete for its purpose with an output schema covering return values, but it lacks parameter guidance and usage context. Adding explanations for the three optional parameters and mentioning any prerequisites would make it adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description should explain parameters, but it only lists output components. It fails to map parameters like include_semantics to their effect on the profile. The four parameters (table, include_semantics, include_samples, sample_limit) are left undocumented, adding minimal value over the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a table profile including schema, semantic metadata, sample rows, and guidance. It uniquely identifies the tool's function among siblings, which are action-oriented (create, delete, execute) rather than descriptive.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when a table profile is needed but offers no guidance on when to prefer this over alternatives like query_range or explain_query. No exclusions or prerequisites are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

dryrun_pipelineA

Test a pipeline with sample data without writing to the database.

You can test a pipeline in two ways:
- Provide 'pipeline' with inline YAML configuration
- Provide 'pipeline_name' to test a previously saved pipeline

Args:
    pipeline: Pipeline YAML configuration (inline)
    pipeline_name: Name of saved pipeline (mutually exclusive with pipeline)
    data: Test data in JSON/NDJSON format
    data_type: Optional content type (e.g., 'application/x-ndjson')
ParametersJSON Schema
NameRequiredDescriptionDefault
dataNo
pipelineNo
data_typeNo
pipeline_nameNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It explicitly states the tool does not write to the database, a key behavioral trait. It does not mention permissions, side effects, or error handling, but the 'dryrun' name reinforces the read-only nature. Sufficient for a non-destructive test tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, with a short paragraph front-loading the core purpose, followed by a clear list of arguments. Every sentence adds value, and the structure is easy to read.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 parameters and an output schema, the description covers the two usage modes and all parameters adequately. It could mention that the output schema describes return values, but that is covered by the output schema itself. Missing some details on data format validation, but overall complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must add meaning. It clearly explains each parameter: pipeline (inline YAML), pipeline_name (saved, mutually exclusive), data (test data), data_type (optional). It also notes the mutual exclusivity, providing essential semantics beyond the schema's titles.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool tests a pipeline with sample data without writing to the database, distinguishing it from siblings like create_pipeline or delete_pipeline. The verb 'Test' and resource 'pipeline' are specific, and the 'without writing' differentiates from mutation tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains two mutually exclusive usage modes (inline YAML vs saved pipeline) and lists required arguments. It implicitly tells when to use by contrasting with writing to database, but lacks explicit 'when not to use' or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

execute_sqlA

Execute SQL query against GreptimeDB. Please use MySQL dialect.

Read-only by default. When the server runs with write mode enabled
(--allow-write / GREPTIMEDB_ALLOW_WRITE), destructive SQL (DDL/DML) is
also permitted.
ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryYes
formatNocsv

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. Description discloses read-only default and write mode conditions, but lacks details on error handling, transaction behavior, or performance implications.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with purpose, no fluff. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers main usage and permissions. Output schema exists, so return values are covered. But parameter semantics are missing; given 3 params and no description of them, completeness is moderate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but description does not explain any parameter meanings (e.g., query, format, limit). Only tool context is provided, leaving schema to carry full burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states verb 'Execute' and resource 'SQL query against GreptimeDB', with specific mention of MySQL dialect. Distinguishes from sibling execute_tql.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states read-only default and conditions for enabling write mode. Does not directly compare with alternatives, but sibling names suggest distinct purposes.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

execute_tqlC

Execute TQL query for time-series analysis. TQL is PromQL-compatible - use standard PromQL syntax.

ParametersJSON Schema
NameRequiredDescriptionDefault
endYes
stepYes
queryYes
startYes
formatNojson
lookbackNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description must carry the full burden. It does not disclose whether the operation is read-only, destructive, or requires special permissions. No mention of side effects, rate limits, or response characteristics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short (two sentences) but front-loads the core purpose. However, it sacrifices critical details for brevity, resulting in below-average informativeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having an output schema, the description omits key context: how to handle large result sets, error conditions, or time-series semantics. For a complex query tool, the description is insufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, yet the description only explains the query syntax ('PromQL-compatible') without detailing parameters like start, end, step, lookback, or format. The agent cannot infer constraints or defaults from the description alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Execute TQL query') and the domain ('time-series analysis'). It also mentions PromQL compatibility, distinguishing it from SQL queries (execute_sql) and other time-series tools (query_range).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives like execute_sql or query_range. The mention of PromQL compatibility hints at syntax but does not provide decision criteria such as performance, authentication, or scope.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

explain_queryC

Analyze SQL or TQL query execution plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
analyzeNo
verboseNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It states 'analyze' which implies a read-only, non-destructive action, but does not confirm this or mention any side effects, permissions, or rate limits. The agent cannot determine if the operation is safe without additional context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, which is concise but lacks essential details about parameters and usage. It front-loads the basic purpose, but does not earn its place by covering critical information. An adequate length given the tool's simplicity, but insufficient depth.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the parameter count of 3, 0% schema coverage, and no annotations, the description is incomplete. It does not explain return values (though an output schema exists) or parameter purposes. The agent lacks enough information to correctly invoke the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, yet the description does not mention any of the three parameters (query, analyze, verbose). It adds no meaning beyond the raw schema, resulting in no semantic value for the agent.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Analyze SQL or TQL query execution plan,' which clearly identifies the tool's action (analyze) and target (execution plan). It distinguishes from sibling tools like execute_sql and execute_tql by focusing on plan analysis rather than execution. However, it does not explicitly contrast with these siblings, preventing a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It lacks any 'when to use' or 'when not to use' context, leaving the agent to infer based on the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

health_checkA

Check GreptimeDB connection status and server version.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description indicates a read-only check operation. No annotations are provided, but the tool's benign nature is clear. It does not contradict annotations (none exist), and the behavior is transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that is concise and front-loaded, with no extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has an output schema, so return values are documented elsewhere. The description covers the purpose fully for a simple health check, and the zero parameters make it complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has no parameters, so the schema coverage is 100%. The description adds no parameter information, but none is needed. Baseline 4 for zero parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool checks GreptimeDB connection status and server version. It uses a specific verb ('Check') and resource, distinguishing it from sibling tools like create_dashboard or execute_sql.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for checking connectivity and version, but lacks explicit guidance on when to use it versus alternatives (e.g., execute_sql for a test query). No exclusions or prerequisites are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_dashboardsA

List all Perses dashboard definitions stored in GreptimeDB.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It correctly indicates a read-only operation ('List') with no destructive side effects. However, it does not mention pagination, rate limits, or authentication requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that is front-loaded with the verb and resource. No wasted words; every part earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with no parameters and an output schema provided, the description is complete enough. It tells the agent exactly what the tool does without missing critical information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, so schema coverage is 100%. The description does not need to add parameter meaning, but it correctly implies no filtering is possible. Baseline for zero parameters is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'List' and the specific resource 'all Perses dashboard definitions stored in GreptimeDB.' It distinguishes this tool from siblings like create_dashboard, delete_dashboard, and list_pipelines.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies a simple use case of listing all dashboards, but it does not provide explicit when-to-use or when-not-to-use guidance, nor does it mention alternatives like execute_sql for filtered queries.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_pipelinesC

List all pipelines or get details of a specific pipeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description bears full responsibility. It only states the basic operation (list/details) but fails to disclose any behavioral traits such as rate limits, pagination, read-only nature, or what happens if the pipeline doesn't exist. The output schema exists but is not described.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a single sentence that conveys the core functionality. It is front-loaded with the verb and resource, but could be more structured by separating the two modes explicitly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple parameter and presence of an output schema, the description is minimally adequate. It covers the two use cases but lacks details about return structure, error handling, or behavioral constraints that would make it fully complete for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description adds minimal value: it implies that providing a 'name' gives details, while omitting it lists all. However, it does not explain the format, constraints, or behavior of the parameter beyond what the schema already indicates.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'list' and resource 'pipelines', and indicates two modes: list all or get details of a specific pipeline. This is clearly distinct from sibling tools which operate on different resources like dashboards or SQL.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide any guidance on when to use this tool versus alternatives, nor does it mention prerequisites or when not to use it. This lack of context forces the AI to infer usage from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

query_rangeC

Execute time-window aggregation query using GreptimeDB's RANGE query syntax.

ParametersJSON Schema
NameRequiredDescriptionDefault
byNo
fillNo
alignYes
limitNo
tableYes
whereNo
formatNojson
selectYes
order_byNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description should disclose behavioral traits like idempotency or side effects. It only describes the action without mentioning any constraints or implications.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence with no unnecessary words or information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 9 parameters, no schema descriptions, and no annotations, the single-sentence description is severely lacking. The output schema exists but is not utilized in the description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and the description adds no details about any of the 9 parameters, leaving the agent entirely dependent on parameter names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool executes time-window aggregation queries using GreptimeDB's RANGE syntax, which is specific. However, it does not differentiate from sibling tools like execute_sql or execute_tql that might also handle queries.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives, nor are there any conditions or prerequisites mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool updatev0.5.1
    • Changedexplain_query1 field changed
      • addedInput schema / properties / verbose
        Added value: +{
        +  "default": false,
        +  "title": "Verbose",
        +  "type": "boolean"
        +}
  2. 13 tool updatesv0.5.0
    • Addedcreate_dashboard
    • Addedcreate_pipeline
    • Addeddelete_dashboard
    • Addeddelete_pipeline
    • Addeddescribe_table
    • Addeddryrun_pipeline
    • Changedexecute_sql6 fields changed
      • addedInput schema / properties / format
        Added value: +{
        +  "default": "csv",
        +  "title": "Format",
        +  "type": "string"
        +}
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 1000,
        +  "title": "Limit",
        +  "type": "integer"
        +}
      • removedInput schema / properties / query / description
        Removed value: -"The SQL query to execute (using MySQL dialect)"
      • addedInput schema / properties / query / title
        Added value: +"Query"
      • addedInput schema / title
        Added value: +"execute_sqlArguments"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "properties": {
        +    "result": {
        +      "title": "Result",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "result"
        +  ],
        +  "title": "execute_sqlOutput",
        +  "type": "object"
        +}
    • Addedexecute_tql
    • Addedexplain_query
    • Addedhealth_check
    • Addedlist_dashboards
    • Addedlist_pipelines
    • Addedquery_range
  3. 1 tool updatev1.0.0
    • First observedexecute_sql

TDQS

A3.5/5.0
Disambiguation5/5

All tools have clearly distinct purposes: dashboard management, pipeline management, SQL/TQL queries, health check, and table description. No overlaps or ambiguity.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (e.g., create_dashboard, delete_pipeline, execute_sql). The naming convention is uniform and predictable.

Tool Count5/5

With 13 tools, the set is well-scoped for a time-series database MCP server. It covers essential operations without being excessive or sparse.

Completeness4/5

The tool surface covers CRUD for dashboards, CRD for pipelines (missing update/transform), querying (SQL, TQL, range), and health check. Minor gap in pipeline update, but mostly complete.

Maintenance

ActivityMaintained
ResponsivenessWithin a week

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server implementation that enables AI assistants to execute SQL queries and interact with SQLite databases through a structured interface.
    7
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    A Model Context Protocol (MCP) server that provides read-only TDengine database queries for AI assistants, allowing users to execute queries, explore database structures, and investigate data directly from AI-powered tools.
    6
    10
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server that provides AI assistants with comprehensive access to SQL databases, enabling schema inspection, query execution, and database operations with enterprise-grade security.
    46
    7
    MIT

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/GreptimeTeam/greptimedb-mcp-server'

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