Skip to main content
Glama
influxdata

InfluxDB MCP Server

Official
by influxdata

InfluxDB MCP Server

CI

Trust Score

Model Context Protocol (MCP) server for InfluxDB 3 integration. Provides tools, resources, and prompts for interacting with InfluxDB v3 (Core/Enterprise/Cloud Dedicated/Clustered/Cloud Serverless) via MCP clients.


Prerequisites

  • InfluxDB 3 Instance: URL and token (Core/Enterprise/Cloud Serverless) or Cluster ID and tokens (Cloud Dedicated/Clustered)

  • Node.js: v20.11 or newer (for npm/npx usage)

  • npm: v9 or newer (for npm/npx usage)

  • Docker: (for Docker-based setup)


Related MCP server: InfluxDB OSS API MCP Server

Read-only Agent Workflows

Set INFLUX_MCP_TOOL_PROFILE=readonly when you want an MCP client to explore and query InfluxDB 3 data without exposing write, admin, token-management, or host-level tools. In Enterprise deployments that use preview user auth, the same read-only flow works when the configured bearer credential is a JWT instead of an apiv3_ token.

Analyst explores an unfamiliar database

An analyst can connect an MCP client such as Claude Desktop, Cursor, Codex, or another agent harness and ask a question like:

Which sensors had the highest average temperature in the last 24 hours?

With the read-only profile, the agent can:

  1. Call list_databases to see accessible databases.

  2. Call list_tables and describe_table to discover measurements and columns.

  3. Treat uncertain tag and field categories as unknown.

  4. Build a bounded SQL query with db, q, and optional params.

  5. Call query_sql with structured JSON output.

  6. Return the result, row count, truncation status, warnings, and correlation metadata.

The user gets a grounded answer and a reusable query while the agent explores and queries data without access to mutation or administration tools.

Operator investigates an InfluxQL dashboard query

An operator can troubleshoot an existing InfluxQL dashboard panel and ask:

Why did this panel stop showing data after the deploy?

With the read-only profile, the agent can:

  1. Keep the user's query in InfluxQL and call query_influxql.

  2. Use SHOW queries and schema discovery to verify the measurement and referenced columns.

  3. Sample recent rows with bounded reads to distinguish missing data from a broken query.

  4. Reject unsafe follow-up attempts, such as SELECT INTO or destructive statements.

  5. Return request_id, query_id, and query_id_source so the operator can correlate the MCP result with system.queries.id when query history is available.

  6. Emit structured logs to stderr for stdio transports so stdout remains reserved for MCP protocol messages.

The user gets a practical diagnosis, such as missing data, renamed schema, a wrong time predicate, or a query failure. The investigation is traceable without logging full query text by default.


Available Tools

Tool Name

Description

Availability

load_database_context

Load optional custom database context and documentation

All versions

get_help

Get help and troubleshooting guidance for InfluxDB operations

All versions

write_line_protocol

Write data using InfluxDB line protocol

All versions

create_database

Create a new database (with cloud-specific config options)

All versions

update_database

Update database configuration (retention for all; maxTables/maxColumns for Cloud Dedicated/Clustered)

All versions

delete_database

Delete a database by name (irreversible)

All versions

execute_query

Run a SQL query against a database (supports multiple formats)

All versions

query_sql

Run bounded read-only SQL with structured response metadata

All versions

query_influxql

Run bounded read-only InfluxQL with structured response metadata

All versions

get_measurements

List all measurements (tables) in a database

All versions

get_measurement_schema

Get schema (columns/types) for a measurement/table

All versions

list_tables

List tables, also called measurements, in a database

All versions

describe_table

Describe table schema with conservative column categories

All versions

investigate_database

Run high-level read-only database discovery and sampling

All versions

create_admin_token

Create a new admin token (full permissions)

Core/Enterprise only

list_admin_tokens

List all admin tokens (with optional filtering)

Core/Enterprise only

create_resource_token

Create a resource token for specific DBs and permissions

Core/Enterprise only

list_resource_tokens

List all resource tokens (with filtering and ordering)

Core/Enterprise only

delete_token

Delete a token by name

Core/Enterprise only

regenerate_operator_token

Regenerate the operator token (dangerous/irreversible)

Core/Enterprise only

cloud_list_database_tokens

List all database tokens for Cloud-Dedicated/Clustered cluster

Cloud Dedicated/Clustered

cloud_get_database_token

Get details of a specific database token by ID

Cloud Dedicated/Clustered

cloud_create_database_token

Create a new database token for Cloud-Dedicated/Clustered cluster

Cloud Dedicated/Clustered

cloud_update_database_token

Update an existing database token

Cloud Dedicated/Clustered

cloud_delete_database_token

Delete a database token from Cloud-Dedicated/Clustered cluster

Cloud Dedicated/Clustered

list_databases

List all available databases in the instance

All versions

health_check

Check InfluxDB connection and health status

All versions


Available Resources

Resource Name

Description

influx-config

Read-only access to InfluxDB configuration

influx-status

Real-time connection and health status

influx-databases

List of all databases in the instance

context-file

Custom user-provided database context and documentation


Available Prompts

Prompt Name

Description

list-databases

Generate a prompt to list all available databases

check-health

Generate a prompt to check InfluxDB health status

load-context

Load custom database context and documentation


Setup & Integration Guide

1. Environment Variables

For Core/Enterprise InfluxDB:

You must provide:

  • INFLUX_DB_INSTANCE_URL (e.g. http://localhost:8181/)

  • INFLUX_DB_TOKEN

  • INFLUX_DB_PRODUCT_TYPE (core or enterprise)

Example .env:

INFLUX_DB_INSTANCE_URL=http://localhost:8181/
INFLUX_DB_TOKEN=your_influxdb_token_here
INFLUX_DB_PRODUCT_TYPE=core

For Cloud Serverless InfluxDB:

You must provide:

  • INFLUX_DB_INSTANCE_URL (e.g. https://us-east-1-1.aws.cloud2.influxdata.com)

  • INFLUX_DB_TOKEN

  • INFLUX_DB_PRODUCT_TYPE (cloud-serverless)

Example .env:

INFLUX_DB_INSTANCE_URL=https://us-east-1-1.aws.cloud2.influxdata.com
INFLUX_DB_TOKEN=your_influxdb_token_here
INFLUX_DB_PRODUCT_TYPE=cloud-serverless

For Cloud Dedicated InfluxDB:

You must provide INFLUX_DB_PRODUCT_TYPE=cloud-dedicated and INFLUX_DB_CLUSTER_ID, plus one of these token combinations:

Option 1: Database Token Only (Query/Write operations only):

INFLUX_DB_PRODUCT_TYPE=cloud-dedicated
INFLUX_DB_CLUSTER_ID=your_cluster_id_here
INFLUX_DB_TOKEN=your_database_token_here

Option 2: Management Token Only (Database management only):

INFLUX_DB_PRODUCT_TYPE=cloud-dedicated
INFLUX_DB_CLUSTER_ID=your_cluster_id_here
INFLUX_DB_ACCOUNT_ID=your_account_id_here
INFLUX_DB_MANAGEMENT_TOKEN=your_management_token_here

Option 3: Both Tokens (Full functionality):

INFLUX_DB_PRODUCT_TYPE=cloud-dedicated
INFLUX_DB_CLUSTER_ID=your_cluster_id_here
INFLUX_DB_ACCOUNT_ID=your_account_id_here
INFLUX_DB_TOKEN=your_database_token_here
INFLUX_DB_MANAGEMENT_TOKEN=your_management_token_here

For Clustered InfluxDB:

You must provide INFLUX_DB_PRODUCT_TYPE=clustered and INFLUX_DB_INSTANCE_URL, plus one of these token combinations:

Option 1: Database Token Only (Query/Write operations only):

INFLUX_DB_PRODUCT_TYPE=clustered
INFLUX_DB_INSTANCE_URL=https://your_cluster_host.com
INFLUX_DB_TOKEN=your_database_token_here

Option 2: Management Token Only (Database management only):

INFLUX_DB_PRODUCT_TYPE=clustered
INFLUX_DB_INSTANCE_URL=https://your_cluster_host.com
INFLUX_DB_MANAGEMENT_TOKEN=your_management_token_here

Option 3: Both Tokens (Full functionality):

INFLUX_DB_PRODUCT_TYPE=clustered
INFLUX_DB_INSTANCE_URL=https://your_cluster_host.com
INFLUX_DB_TOKEN=your_database_token_here
INFLUX_DB_MANAGEMENT_TOKEN=your_management_token_here

See corresponding env.<instancetype>.example for examples and detailed info.

Optional MCP tool profile and telemetry

Use INFLUX_MCP_TOOL_PROFILE=readonly to expose only read-only tools. If unset, the server uses the full operator tool profile.

INFLUX_MCP_TOOL_PROFILE=readonly

Tool-call telemetry is enabled by default and writes structured JSON lines to stderr, which keeps stdout reserved for MCP stdio protocol messages. To disable telemetry:

MCP_LOG_TOOL_CALLS=false

To write telemetry to a file, configure the file backend:

MCP_LOG_BACKEND=file
MCP_LOG_FILE=/logs/influxdb-mcp.jsonl

The telemetry log includes tool name, request ID, query ID, duration, database, row count, truncation state, success state, and error code. It does not log API tokens, request headers, tool arguments, or query text. Sample harness profiles live in harness-profiles/; for approval settings and repeatable E2E prompts, see AGENT_E2E_TESTS.md.


2. Integration with MCP Clients

A. Local (npm install & run)

  1. Install dependencies:

    npm install
  2. Build the server:

    npm run build
  3. Configure your MCP client to use the built server. Example (see example-local.mcp.json):

    {
      "mcpServers": {
        "influxdb": {
          "command": "node",
          "args": ["/path/to/influx-mcp-standalone/build/index.js"],
          "env": {
            "INFLUX_DB_INSTANCE_URL": "http://localhost:8181/",
            "INFLUX_DB_TOKEN": "<YOUR_INFLUXDB_TOKEN>",
            "INFLUX_DB_PRODUCT_TYPE": "core"
          }
        }
      }
    }

B. Local (npx, no install/build required)

  1. Run directly with npx (after publishing to npm, won't work yet):

    {
      "mcpServers": {
        "influxdb": {
          "command": "npx",
          "args": ["-y", "@influxdata/influxdb3-mcp-server"],
          "env": {
            "INFLUX_DB_INSTANCE_URL": "http://localhost:8181/",
            "INFLUX_DB_TOKEN": "<YOUR_INFLUXDB_TOKEN>",
            "INFLUX_DB_PRODUCT_TYPE": "core"
          }
        }
      }
    }

C. Docker

Before running the Docker integration, you must build the Docker image:

# Option 1: Use docker compose (recommended)
docker compose build
# Option 2: Use npm script
npm run docker:build

a) Docker with remote InfluxDB instance (see example-docker.mcp.json):

{
  "mcpServers": {
    "influxdb": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "INFLUX_DB_INSTANCE_URL",
        "-e",
        "INFLUX_DB_TOKEN",
        "-e",
        "INFLUX_DB_PRODUCT_TYPE",
        "mcp/influxdb"
      ],
      "env": {
        "INFLUX_DB_INSTANCE_URL": "http://remote-influxdb-host:8181/",
        "INFLUX_DB_TOKEN": "<YOUR_INFLUXDB_TOKEN>",
        "INFLUX_DB_PRODUCT_TYPE": "core"
      }
    }
  }
}

b) Docker with InfluxDB running in Docker on the same machine (see example-docker.mcp.json):

Use host.docker.internal as the InfluxDB URL so the MCP server container can reach the InfluxDB container:

{
  "mcpServers": {
    "influxdb": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "--add-host=host.docker.internal:host-gateway",
        "-e",
        "INFLUX_DB_INSTANCE_URL",
        "-e",
        "INFLUX_DB_TOKEN",
        "-e",
        "INFLUX_DB_PRODUCT_TYPE",
        "influxdb-mcp-server"
      ],
      "env": {
        "INFLUX_DB_INSTANCE_URL": "http://host.docker.internal:8181/",
        "INFLUX_DB_TOKEN": "<YOUR_INFLUXDB_TOKEN>",
        "INFLUX_DB_PRODUCT_TYPE": "enterprise"
      }
    }
  }
}

Example Usage

  • Use your MCP client to call tools, resources, or prompts as described above.

  • Custom Context: Edit the provided context/database-context.md file or remove it and create your own context file with "context" in the name (.json, .txt, .md) to provide database documentation. Use the load_database_context tool or load-context prompt to access it.

  • See the example-*.mcp.json files for ready-to-use configuration templates:

    • example-local.mcp.json - Local development setup

    • example-npx.mcp.json - NPX-based setup

    • example-docker.mcp.json - Docker-based setup

    • example-cloud-dedicated.mcp.json - Cloud Dedicated with all variables

    • example-clustered.mcp.json - Clustered with all variables

    • example-cloud-serverless.mcp.json - Cloud Serverless configuration

  • See the env.example, env.cloud-dedicated.example, env.clustered.example, and env.cloud-serverless.example files for environment variable templates.

  • See AGENT_E2E_TESTS.md for MCP harness tips, read-only profile runs, and telemetry correlation checks.

Database Retention Policy Examples

Core/Enterprise - Set 90-day Retention

// Set 90-day retention policy on Enterprise instance
await mcp.update_database({
  name: "my_database",
  retentionPeriod: 7776000000000000, // 90 days in nanoseconds
});

Cloud Dedicated - Update Multiple Settings

// Update retention, maxTables, and maxColumnsPerTable
await mcp.update_database({
  name: "my_database",
  retentionPeriod: 7776000000000000, // 90 days
  maxTables: 1000,
  maxColumnsPerTable: 250,
});

Common Retention Periods

Duration

Nanoseconds

7 days

604,800,000,000,000

30 days

2,592,000,000,000,000

90 days

7,776,000,000,000,000

180 days

15,552,000,000,000,000

1 year

31,536,000,000,000,000


Support & Troubleshooting

  • Use the get_help tool for built-in help and troubleshooting.

  • For connection issues, check your environment variables and InfluxDB instance status.

  • For advanced configuration, see the comments in the example .env and MCP config files.

Write errors

write_line_protocol surfaces InfluxDB's own error text, not a generic message. If InfluxDB rejects a write — a duplicate tag key, an unauthenticated token, a payload over the size limit — the tool error includes the specific reason, for example:

Bad request: invalid line protocol - multiple instances of 'region' tag found

A 503 reaching this server is phrased as retryable (Service temporarily unavailable, retry the write: ...) — safe to retry the write. Any other status is not.

InfluxDB 3.11 compatibility

Verified against InfluxDB 3.11.2 Core and Enterprise (including a multi-node Enterprise cluster). Core and Enterprise write through POST /api/v3/write_lp, which 3.11's write-availability changes for the legacy /api/v2/write endpoint do not affect; only clustered calls /api/v2/write. Query and schema-discovery tools behave the same whether the target database is on Parquet (Core, or Enterprise before an upgrade) or PachaTree (Enterprise 3.11+ by default, or after --upgrade-pacha-tree) — new system.pt_* tables are excluded from get_measurements/get_measurement_schema results by the same table_schema = 'iox' filter that already excludes other system tables.


License

MIT

Available Tools

27 tools
cloud_create_database_tokenA

Create a new database token for InfluxDB Cloud-Dedicated/Clustered cluster. Specify exact permissions per database or create a no-access token.

Permissions format: [{"database": "db_name", "action": "read|write"}, ...] Examples: • No access: omit permissions field or use [] • Read-only on 'analytics': [{"database": "analytics", "action": "read"}] • Mixed permissions: [{"database": "logs", "action": "read"}, {"database": "metrics", "action": "write"}] • Full access: [{"database": "", "action": "read"}, {"database": "", "action": "write"}]

ParametersJSON Schema
NameRequiredDescriptionDefault
descriptionYesDescription/name for the token
permissionsNoArray of permission objects. Each object specifies database and action. Leave empty array [] for no-access token.

TDQS

A4.1/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses the permission structure, wildcard usage, and the option for a no-access token, which adds value. However, it does not mention security implications, that the token may be shown only once, or what happens on invalid input. The description adequately explains the core behavior but omits some operational consequences.

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 well-structured: it opens with the main purpose, then explains the permissions format, and lists examples. It is slightly longer than ideal but every sentence contributes necessary information, especially the examples. It is concise for the complexity involved.

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?

The tool has two parameters with full schema descriptions, and the description adds detailed permission examples, making it sufficiently complete for invocation. It lacks any mention of the response format (e.g., what the API returns), but since there is no output schema, that is a gap. Overall, for a creation tool with well-documented inputs, it is nearly 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?

Schema coverage is 100%, so the baseline is 3. The description goes beyond the schema by providing a detailed permission format, examples for no-access, read-only, mixed, and full-access tokens, and clarifying the wildcard '*' behavior. This enriches the parameters with practical usage semantics that the schema alone does not convey.

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's purpose: 'Create a new database token for InfluxDB Cloud-Dedicated/Clustered cluster.' It uses a specific verb ('Create') and resource ('database token'), and distinguishes it from sibling tools like cloud_delete_database_token and create_admin_token by focusing on database tokens with per-database permissions.

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 the context (Cloud-Dedicated/Clustered) and provides concrete examples of how to use permissions. While it does not explicitly name alternatives or say when not to use this tool, the permission format and examples make its intended use clear. It implies this is the tool for creating database-scoped tokens, contrasting with admin or resource tokens.

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

cloud_delete_database_tokenA

Delete a database token from InfluxDB Cloud-Dedicated/Clustered cluster. This action cannot be undone.

ParametersJSON Schema
NameRequiredDescriptionDefault
token_idYesThe ID of the token to delete

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description carries the burden of behavioral disclosure. It discloses 'This action cannot be undone,' which is a critical irreversible trait. However, it does not mention permissions, potential cascading effects, or what happens to the token's associated resources, leaving the disclosure incomplete.

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?

Two concise sentences that front-load the core action and then add the key irreversible caveat. No wasted words or irrelevant details.

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?

For a simple one-parameter delete operation with no output schema and no annotations, the description adequately covers purpose and the most important caveat (irreversibility). It does not explain prerequisites or return behavior, but these are less critical for a delete tool.

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?

The input schema has 100% description coverage for the single parameter 'token_id' as 'The ID of the token to delete.' The tool description does not add further meaning beyond the schema, so the baseline score of 3 is appropriate.

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 ('database token'), and the specific environment ('InfluxDB Cloud-Dedicated/Clustered cluster'), which distinguishes it from the generic 'delete_token' sibling. This is a specific verb+resource+scope definition.

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 implies the tool is for deleting database tokens in a Cloud-Dedicated/Clustered environment, providing clear context. However, it does not explicitly contrast it with the sibling 'delete_token' or state when not to use it, so it lacks explicit alternatives/exclusions.

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

cloud_get_database_tokenA

Get details of a specific database token by ID for InfluxDB Cloud-Dedicated/Clustered cluster.

ParametersJSON Schema
NameRequiredDescriptionDefault
token_idYesThe ID of the token to retrieve

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description carries the burden. It clearly indicates a read operation ('Get details'), but it does not disclose what happens if the token is not found, whether the full token value is returned, or any permissions required. This is adequate but lacks richer behavioral detail.

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, clear sentence that directly states the tool's purpose and scope. No fluff or redundant information.

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?

For a simple one-parameter get tool, the description and schema together are reasonably complete. The agent knows the required parameter and the resource type. However, the absence of an output schema means the return format ('details') remains vague, so it's not a 5.

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?

Schema description coverage is 100% (token_id is fully described in the schema), so the baseline is 3. The description adds no additional parameter semantics beyond what the schema already provides.

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 and resource: 'Get details of a specific database token by ID.' It clearly differentiates from sibling tools like list, create, update, and delete database tokens by focusing on retrieving a single token by its ID.

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 phrase 'by ID' implies the tool is for fetching one specific token, and the context of Cloud-Dedicated/Clustered clusters helps. However, it does not explicitly mention alternatives like cloud_list_database_tokens for listing all tokens, so when-to-use guidance is only implied rather than clearly stated.

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

cloud_list_database_tokensA

List all database tokens for InfluxDB Cloud-Dedicated/Clustered cluster. Returns token information including permissions and creation dates.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description carries the burden of disclosing behavior. It clearly indicates a read-only listing operation and mentions returned fields (permissions, creation dates), but omits authentication requirements, error conditions, or scope limitations. Adequate but minimal.

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, two sentences, and front-loaded with the action ('List all database tokens'). It adds no redundant information.

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?

The description states the tool's scope and key return fields, which is good for a simple list tool. It could mention pagination or boundaries of 'all', but the core functionality is covered adequately.

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 zero parameters, so parameter semantics are not applicable. The description clarifies what the tool lists and returns, which is sufficient given the parameterless 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 lists database tokens for InfluxDB Cloud-Dedicated/Clustered clusters, specifying the resource (database tokens) and scope. It distinguishes itself from sibling tools like list_admin_tokens by focusing on database tokens.

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 provides context (targets cloud-dedicated/clustered clusters) but does not explicitly mention when to use this tool versus alternatives like list_admin_tokens or list_resource_tokens. The name implies usage, but no direct guidance is given.

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

cloud_update_database_tokenA

Update an existing database token for InfluxDB Cloud-Dedicated/Clustered cluster. Can update description and/or permissions with precise control.

Permissions format: [{"database": "db_name", "action": "read|write"}, ...] Note: Permissions completely replace existing ones - include all desired permissions. Examples: • No access: use [] • Read-only on 'analytics': [{"database": "analytics", "action": "read"}] • Mixed permissions: [{"database": "logs", "action": "read"}, {"database": "metrics", "action": "write"}] • Full access: [{"database": "", "action": "read"}, {"database": "", "action": "write"}]

ParametersJSON Schema
NameRequiredDescriptionDefault
token_idYesThe ID of the token to update
descriptionNoNew description for the token (optional)
permissionsNoArray of permission objects. Each object specifies database and action. Use empty array [] for no-access token.

TDQS

A4/5.0
Behavior3/5

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

Since no annotations are provided, the description carries the full burden. It discloses a critical behavioral trait: 'Permissions completely replace existing ones - include all desired permissions.' This is valuable. However, it does not clarify whether omitted fields (like description) remain unchanged, nor does it mention response behavior, authorization requirements, 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.

Conciseness4/5

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

The description is well-structured: a clear opening sentence, a permissions format note, and bulleted examples. It is slightly padded with phrases like 'with precise control' that add little value, but overall the content is purposeful and the examples earn their 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 main operational detail (permission replacement) and provides examples, which is good for a moderate-complexity tool. However, it lacks information about the return value or success/failure response, and it does not explicitly state that omitting optional fields leaves them unchanged. Given no output schema and no annotations, these gaps leave the description incomplete.

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 input schema already covers all parameters with descriptions (100% coverage), so the baseline is 3. The description adds substantial value by explaining the permissions format in detail, providing concrete examples (no-access, read-only, mixed, full access), and clarifying the replacement semantics. This goes beyond the schema's generic 'Array of permission objects'.

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 begins with a clear verb+resource phrase: 'Update an existing database token for InfluxDB Cloud-Dedicated/Clustered cluster.' It explicitly states what can be updated (description and/or permissions) and distinguishes itself from sibling tools like cloud_create_database_token and cloud_delete_database_token.

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 makes clear this tool is for updating existing tokens, and it provides essential usage guidance about permissions replacing existing ones. However, it does not explicitly mention alternatives or when-not-to-use (e.g., 'use create for new tokens'), though the context with sibling tools makes this somewhat implicit.

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

create_admin_tokenA

Create a new InfluxDB named admin token with full administrative permissions (Core/Enterprise only). Named admin tokens can manage databases, users, and resource tokens, but cannot manage other admin tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoOptional name for the admin token (e.g., "backup-admin-token"). If not provided, a unique name will be generated.

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations provided, the description must fully disclose behavior. It does state the permissions granted and a key limitation (cannot manage other admin tokens), plus the Core/Enterprise requirement. However, it omits operational details such as whether the token is returned in the response, how authentication is handled, or behavior if a token with the same name already exists.

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 two sentences long and front-loads the core purpose. The first sentence states the action and scope, and the second clarifies capabilities and limitations. No unnecessary words or repetition; every sentence contributes 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?

For a simple one-parameter creation tool, the description covers the essential action and the token's permissions. However, it lacks explicit mention of the output (token string) or how the token is meant to be used afterwards, which is important for an agent. The absence of an output schema heightens this need. The description is adequate but not fully complete.

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?

The schema documents the only parameter 'name' with 100% coverage, so the baseline is 3. The description references 'named admin token' which aligns with the parameter but adds no new meaning beyond the schema's own description. There is no additional context about naming conventions or format.

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 ('Create'), the resource ('new InfluxDB named admin token'), and the key attribute ('full administrative permissions'). It also distinguishes from sibling token tools by specifying 'admin' and 'Core/Enterprise only', making it unambiguous which tool to select.

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 full administrator-level access is needed and mentions a limitation ('cannot manage other admin tokens'), but it does not explicitly contrast with alternatives like create_resource_token or cloud_create_database_token. There is no direct 'use this when' guidance, only inferred from the permissions described.

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

create_databaseA

Create a new database in InfluxDB. Database names must follow InfluxDB naming rules: alphanumeric characters, dashes (-), underscores (_), and forward slashes (/) are allowed. Must start with a letter or number. Maximum 64 characters. For Cloud Dedicated/Clustered: maxTables, maxColumnsPerTable, retentionPeriod. For Cloud Serverless: description, retentionPeriod.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the database to create (alphanumeric, -, _, / allowed; max 64 chars; must start with letter/number)
maxTablesNoMaximum number of tables (Cloud Dedicated/Clustered only, default: 500)
descriptionNoDescription for the bucket/database (Cloud Serverless only)
retentionPeriodNoRetention period in nanoseconds (Cloud Dedicated/Clustered: default 0 = no expiration, Cloud Serverless: default 30 days)
maxColumnsPerTableNoMaximum columns per table (Cloud Dedicated/Clustered only, default: 200)

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It adds value by detailing naming rules and cloud-specific parameter applicability, which are behavioral constraints. However, it does not mention permissions, side effects (e.g., what happens if the database already exists), or whether the operation is reversible, leaving gaps that are typically expected for a mutating tool.

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 front-loaded with the purpose and is concise at about four sentences. It efficiently summarizes naming rules and cloud-specific parameters, though some content duplicates the schema descriptions. Overall, it earns its place without being bloated.

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?

For a tool with five parameters, no annotations, and no output schema, the description is adequate but not complete. It explains naming constraints and parameter applicability, but it omits the return value, error behavior, and prerequisites (e.g., authentication). Given the lack of structured annotations, these gaps make it only minimally viable.

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?

The input schema already provides 100% coverage with detailed descriptions for all five parameters, including cloud-specific notes. The description's grouping of parameters by cloud type is helpful but largely redundant with the schema descriptions, so it adds only marginal semantic value beyond the baseline.

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 begins with 'Create a new database in InfluxDB', a specific verb+resource statement. This clearly distinguishes it from sibling tools like update_database, delete_database, and list_databases, so there is no ambiguity about its purpose.

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 provides clear context about which parameters apply to Cloud Dedicated/Clustered vs Cloud Serverless, guiding the agent on what to use in different environments. However, it does not explicitly state when this tool should be used instead of alternatives or mention any exclusions, such as checking if a database already exists first.

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

create_resource_tokenA

Create a new InfluxDB resource token with specific database permissions (Core/Enterprise only). Example: databases=["mydb", "testdb"], actions=["read", "write"]

ParametersJSON Schema
NameRequiredDescriptionDefault
actionsYesArray of permissions for the databases. Example: ["read"] for read-only, ["read", "write"] for full access, or ["write"] for write-only.
databasesYesArray of database names this token can access. Example: ["database1", "database2"]. Use exact database names from your InfluxDB instance.
descriptionYesDescription/name for the resource token (e.g., "My App Token")
expiry_secsNoOptional expiration time in seconds (e.g., 3600 for 1 hour, 86400 for 1 day, 604800 for 1 week). If not specified, token never expires.

TDQS

A3.9/5.0
Behavior2/5

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

With no annotations, the description carries the full burden, but it does not disclose behavior such as whether the token is shown only once, any authentication requirements, or security implications beyond the simple 'create' action. The Core/Enterprise restriction is mentioned, but other behavioral traits (e.g., irreversible creation, possible need for admin privileges) are absent.

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 two concise sentences with the main purpose stated first and an example second. It wastes no words and is front-loaded with the key verb and resource.

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 has four parameters, no output schema, and no annotations, so the description is the only source of non-schema context. It conveys the purpose and gives an example, but it does not describe the return value or success behavior. This is adequate for a simple creation tool but leaves gaps that could mislead an agent about what to expect after the call.

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?

Schema coverage is 100%, so all parameters are already explainable. The description adds a concrete example (databases=["mydb", "testdb"], actions=["read", "write"]) that clarifies the expected array syntax and usage. This adds value beyond the schema, justifying a score above the baseline of 3.

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 states a specific action ('Create'), specific resource ('InfluxDB resource token'), and a clear scope ('with specific database permissions', 'Core/Enterprise only'). This distinguishes it from sibling tools like create_admin_token and cloud_create_database_token, making its purpose unambiguous.

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 explicitly notes 'Core/Enterprise only', which tells the agent not to use it for cloud environments (where cloud_create_database_token would be appropriate). However, it does not explicitly name alternative tools for other token types (e.g., admin tokens), so the guidance is clear but not fully explicit.

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

delete_databaseA

Delete a database from InfluxDB. Use the exact database name as returned by the list_databases tool.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the database to delete (use exact name from database list)

TDQS

A3.9/5.0
Behavior2/5

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

With no annotations provided, the description must fully disclose behavioral traits. It states the action but does not explicitly mention that the deletion is permanent, cannot be undone, or that it removes all data in the database. It also does not address permission requirements or error conditions, which is a significant gap for a destructive operation.

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 two concise sentences with no redundant information. It front-loads the core function and adds a practical usage tip, making it efficient and easy to parse.

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 simple with one parameter and no output schema. The description covers the main action and parameter sourcing, but omits details about the permanence of deletion and potential error scenarios. Given the simplicity, the description is adequate but could be enhanced with a note on irreversible consequences.

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 schema fully documents the single 'name' parameter with a description. The description adds value by instructing the agent to use the exact database name returned by list_databases, providing a reliable source for the parameter value. This goes beyond the schema's basic field description.

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's function with a specific verb and resource ('Delete a database from InfluxDB'), distinguishing it from sibling tools like create_database, update_database, and list_databases. The added guidance about using the exact name from list_databases reinforces the purpose.

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 provides clear context for when to use this tool (when a database needs to be deleted) and offers a specific prerequisite (use the exact database name from list_databases). It does not explicitly mention when not to use it or enumerate alternatives, but no direct alternatives are apparent among the sibling tools.

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

delete_tokenB

Delete an InfluxDB token by name (Core/Enterprise only).

ParametersJSON Schema
NameRequiredDescriptionDefault
token_nameYesName of the token to delete (required)

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose side effects. It indicates the action (delete) but does not mention irreversibility, permission requirements, or consequences, leaving important behavioral context out.

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?

One short sentence that is front-loaded with the action and scope, with no unnecessary words.

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 no output schema and no annotations, the description is too sparse to be fully complete; it omits return behavior, error conditions, and token type clarity, and offers no guidance on successful deletion outcomes.

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?

The input schema fully documents token_name with description (100% coverage). The description adds no new information beyond echoing 'by name', so it meets the baseline without adding 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 tool deletes an InfluxDB token by name and specifies it is Core/Enterprise only, distinguishing it from cloud token deletion sibling tools.

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 provides a scoping constraint (Core/Enterprise only) implying it is not for Cloud, but it does not name alternative tools or specify when to use this versus other token deletion options.

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

describe_tableA

Describe table schema using InfluxDB metadata. Unknown tag/field roles are returned as category=unknown instead of guessed. Use this before retrying SQL queries that fail on quoted wildcard or unknown-field selectors; expand matching fields explicitly and run one bounded query_sql.

ParametersJSON Schema
NameRequiredDescriptionDefault
dbYesDatabase name containing the table
tableYesTable or measurement name to describe

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations, the description carries the burden of disclosing behavior. It adds a key behavioral trait: 'Unknown tag/field roles are returned as category=unknown instead of guessed.' This clarifies non-guessing behavior. However, it does not disclose other aspects like return format, error handling, or read-only safety, leaving some gaps.

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?

Two sentences, front-loaded with the purpose, followed by a clear usage directive. No filler or redundant repetition of schema fields. Every sentence earns its place, making it highly concise and well-structured.

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 has no output schema and no annotations, so the description must carry more weight. It explains the purpose, a key behavior, and a usage scenario, which is decent. However, it does not describe the returned schema structure or error behavior, leaving some contextual gaps for an agent to fully rely on it.

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?

Schema description coverage is 100%, so the schema already fully documents both parameters (db, table). The description adds no additional parameter semantics beyond the existing schema, so the baseline score of 3 applies.

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's function: 'Describe table schema using InfluxDB metadata.' It distinguishes its behavior by noting unknown roles are returned as 'category=unknown' rather than guessed. However, it does not explicitly differentiate from the similarly named sibling tool 'get_measurement_schema', so it misses full sibling differentiation.

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?

Provides explicit usage context: 'Use this before retrying SQL queries that fail on quoted wildcard or unknown-field selectors.' It gives a clear workflow instruction: 'expand matching fields explicitly and run one bounded query_sql.' It does not mention when not to use it or alternatives, but the guidance is specific and actionable.

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

execute_queryB

Execute a SQL query against an InfluxDB database (all versions). Returns results in the specified format (defaults to JSON).

Large Dataset Warning: InfluxDB might contain massive time-series data. Always use COUNT(*) first to check size, then LIMIT/OFFSET for large results (>1000 rows).

Cloud Dedicated/Clustered & Cloud Serverless (v3) Requirements:

  • GROUP BY: Include all group columns in SELECT (e.g., SELECT place, COUNT(*) ... GROUP BY place)

  • Aggregations: Cast and alias COUNT (e.g., CAST(COUNT(*) AS DOUBLE) AS count)

  • Note: Both products require CAST for all aggregation functions (COUNT, SUM, AVG, MIN, MAX) to ensure results appear properly in response

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSQL query to execute.
formatNoOutput format for query resultsjson
databaseYesName of the database/bucket to query

TDQS

B3.4/5.0
Behavior3/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 does warn about large datasets and cloud-specific SQL requirements, but it does not explicitly state whether the tool is read-only or if it can execute write queries. The term 'SQL query' is ambiguous regarding side effects.

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 front-loaded with the purpose, followed by warnings and cloud requirements. It is somewhat long but well-structured with clear sections. Every sentence adds informative value, though it could be more concise.

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?

For a query tool with no output schema, the description covers important behavioral nuances: large dataset handling and cloud-specific GROUP BY/CAST requirements. It lacks explicit read-only confirmation and error behavior, but otherwise provides sufficient context for a complex tool.

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?

Schema coverage is 100%, providing a baseline of 3. The description adds value beyond the schema by explaining output format defaults already in schema, but also by detailing cloud-specific query construction requirements (GROUP BY columns in SELECT, CAST for aggregations) that are not in the schema. This meaningfully helps the agent formulate the query parameter correctly.

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 it executes a SQL query against an InfluxDB database across all versions, and mentions return format. However, it does not distinguish this tool from sibling query_sql/query_influxql, so it lacks explicit sibling differentiation.

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?

There is no guidance on when to use this tool vs. alternatives like query_sql or query_influxql. The large dataset warning and cloud requirements are operational advice, not tool-selection guidance.

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

get_helpA

Get help and troubleshooting guidance for InfluxDB operations. Supports specific categories or keyword search.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations, the description carries the burden of behavioral disclosure. It mentions support for 'specific categories or keyword search', which is a behavioral trait, but lacks details about how the tool actually behaves (e.g., whether it returns a list, requires follow-up, or has restrictions). This is minimal but not absent.

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?

Two short, front-loaded sentences. Every word is informative and no filler exists. The structure is clean and easily parsed.

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?

For a zero-parameter, no-output-schema tool, the description conveys the core purpose but omits practical details like how the 'keyword search' is initiated given no parameters. It is adequate but leaves questions about the interaction model, so it is not fully 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 zero parameters, so there is no schema detail to augment. The description's mention of categories and keyword search adds context that could guide invocation, though it is somewhat underspecified. Baseline for 0 parameters is 4, and the description does not detract.

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 provides 'help and troubleshooting guidance for InfluxDB operations', using a specific verb and resource. It is distinct from sibling tools, which are all operational (queries, tokens, databases), so the purpose is unambiguous.

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 as a help resource but does not explicitly state when to prefer it over other tools or any exclusions. The phrase 'Supports specific categories or keyword search' hints at interaction modes but stops short of clear guidance on when to invoke this tool.

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

get_measurementsA

Get a list of all measurements (tables) in a database/bucket (all versions). Uses the InfluxDB information_schema.columns to discover tables.

ParametersJSON Schema
NameRequiredDescriptionDefault
databaseYesName of the database/bucket to list measurements from

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are provided, so the description carries the burden. It discloses that the tool uses InfluxDB's information_schema.columns, implying a read-only metadata query. However, it does not clarify permissions, response format, or the exact meaning of 'all versions', leaving behavioral gaps.

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 two sentences with no wasted words. It front-loads the core action and includes a useful technical detail about how discovery works, making it efficient and well-structured.

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?

For a simple one-parameter list tool, the description covers the main purpose and mechanism. Minor ambiguity around 'all versions' and lack of return structure keep it from being fully complete, but it is sufficient for most invocation scenarios.

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?

The schema fully describes the 'database' parameter with 100% coverage. The description only repeats 'database/bucket' and adds no extra constraints or format details, warranting the baseline score of 3.

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 returns a list of all measurements (tables) in a database/bucket, using a specific verb and resource. It also distinguishes itself from sibling tools like list_tables by specifying InfluxDB context and 'all versions', making the purpose unambiguous.

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 when to use the tool: when you need to discover measurements in an InfluxDB database/bucket. However, it does not explicitly mention alternatives or when not to use it, leaving some room for misinterpretation.

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

get_measurement_schemaA

Get the schema (column information) for a specific measurement/table (all versions). Shows column names, types, and categories (time/tag/field).

ParametersJSON Schema
NameRequiredDescriptionDefault
databaseYesName of the database/bucket containing the measurement
measurementYesName of the measurement to describe

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations provided, the description is responsible for behavioral disclosure. It states it 'Shows column names, types, and categories' which implies a read-only operation, and adds the behavioral nuance of returning schema for 'all versions'. However, it does not mention potential errors, pagination, or limits, leaving some gaps.

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 compact, two sentences long, and front-loads the action ('Get the schema...'). Every word adds value, with no filler or repetition.

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?

For a simple read-only schema retrieval tool with two parameters and no output schema, the description covers the return value fields (column names, types, categories) and version scope. It could be enhanced by clarifying the relationship to similar sibling tools, but overall it is sufficiently complete.

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?

Schema description coverage is 100% (both 'database' and 'measurement' have clear descriptions). The tool description adds no additional parameter-level meaning beyond the schema, so the baseline of 3 applies.

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 'Get' and the specific resource: the schema (column information) for a specific measurement/table. It further details what is shown (column names, types, categories) and includes the scope '(all versions)', distinguishing it from a simple 'describe' tool.

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 usage is implied: use this tool to retrieve schema information for a measurement. However, there is no explicit guidance on when to use this vs. similar siblings like 'describe_table' or 'list_tables', and no mention of alternatives or exclusions.

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

health_checkA

Check current connection status to the InfluxDB instance. Returns connection status, configuration, and available endpoint results. Health assessment is flexible - if any check passes (client initialization, /health endpoint, or /ping), the instance is considered healthy. Available checks depend on the InfluxDB product type and token configuration.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description discloses a key behavioral trait: the instance is considered healthy if any of the checks pass (client init, /health, /ping), and available checks depend on product type/token. This goes beyond a simple 'check health' statement, providing non-obvious context about the evaluation logic.

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 two sentences, front-loaded with the primary purpose, and every sentence adds value (purpose + return values + health logic). No redundancy or filler.

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?

For a no-input health check, the description covers what it does, what it returns, and the flexible evaluation logic. However, it could be more specific about the format of the returned configuration, but this is a minor gap given the tool's simplicity.

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 zero parameters, so the description need not explain parameter meanings. The baseline of 4 applies, and no parameter info is missing.

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 'Check' and resource 'connection status to the InfluxDB instance', and clarifies it returns connection status, configuration, and endpoint results. This clearly distinguishes it from sibling tools that focus on database operations.

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 explicit guidance on when to use this tool versus alternatives. While the name implies health checking, there is no statement like 'use this before querying' or exclusions. The flexible health assessment note is behavioral, not usage guidance.

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

investigate_databaseA

Discover tables and schemas in a database, optionally sampling recent rows from each table with bounded reads.

ParametersJSON Schema
NameRequiredDescriptionDefault
dbYesDatabase name to investigate
maxTablesNo
includeSamplesNoWhether to include recent sample rows
sampleRowsPerTableNo

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It adds useful safety context with 'bounded reads' and 'sampling recent rows', but it does not explicitly state that the tool is read-only or mention permission 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?

A single, front-loaded sentence that communicates purpose and optional behavior with no filler. Every phrase 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?

The description is minimal but adequate for a discovery tool, covering core purpose and safety. However, with no output schema and no annotations, it does not explain return values or prerequisite conditions like database existence.

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?

The schema covers 50% of parameters (db and includeSamples). The description adds meaning by connecting 'sampling recent rows' to the sampling parameters, but it does not explain maxTables or sampleRowsPerTable limitations beyond the schema's numeric constraints.

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's function: 'Discover tables and schemas in a database' with a specific verb and resource. It also mentions optional row sampling, distinguishing it from sibling tools like list_tables or describe_table.

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 use cases (exploration, discovery) but does not explicitly state when to prefer this tool over alternatives like list_tables or describe_table. It lacks exclusions or alternative recommendations.

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

list_admin_tokensA

List all admin tokens (operator and named admin tokens) with optional filtering by token name (Core/Enterprise only). Named admin tokens have full administrative access including resource token management.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenNameNoOptional filter to search for tokens with names containing this text (case-insensitive partial match)

TDQS

A4/5.0
Behavior3/5

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

There are no annotations, so the description carries the transparency burden. It implies a read-only listing operation and provides useful context about named admin tokens' access, but it does not disclose return format, permissions, or any side effects. This is adequate but not rich.

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, consisting of two sentences that front-load the core action. Each sentence adds relevant information: the listing scope and the nature of admin tokens.

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?

The tool is simple with one optional parameter and no output schema. The description covers the purpose, filtering, licensing constraint, and token context. It does not explain the return structure, which would be helpful without an output schema, but the overall completeness is strong for a list 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?

The schema fully describes the tokenName parameter with a case-insensitive partial-match filter. The description only repeats that filtering is optional, adding little beyond the schema, so the baseline of 3 applies.

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 lists all admin tokens (operator and named), with optional filtering. It explicitly distinguishes itself from sibling tools like list_resource_tokens by specifying 'admin tokens' and the operator/named distinction.

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 conveys its use case by naming the resource type and mentions the 'Core/Enterprise only' constraint. However, it does not explicitly mention alternatives or when not to use it, though the scope is clear from the name and description.

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

list_databasesA

List all databases in the InfluxDB instance (all versions). Returns database names, count, and status information.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

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 the burden. It discloses return information (names, count, status) and notes compatibility with all InfluxDB versions, adding behavioral context. However, it doesn't explicitly state that the operation is read-only, though 'list' implies 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, front-loaded sentence that states the action, scope, and return value. Every word earns its place, with no fluff or redundancy.

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 zero-parameter list tool with no output schema, the description is complete: it specifies what is returned (names, count, status) and mentions version compatibility. This is sufficient for an agent to select and invoke the tool correctly.

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 zero parameters, so the baseline is 4. The description doesn't mention parameters, but none are required, and the schema confirms this. No further parameter explanation is necessary.

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 'List all databases' with a specific verb and resource, and it distinguishes itself from sibling mutation tools like create_database and delete_database. It also specifies the output (database names, count, status), making its purpose unambiguous.

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 provides clear context for when to use this tool: to list all databases across all versions. It doesn't explicitly mention alternatives, but the context is sufficient given the sibling tool names (e.g., investigate_database for deeper inspection).

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

list_resource_tokensA

List all resource tokens with optional filtering by database name and/or token name, and ordering (Core/Enterprise only).

ParametersJSON Schema
NameRequiredDescriptionDefault
orderByNoOptional field to order results by
tokenNameNoOptional filter to search for tokens with names containing this text (case-insensitive partial match)
databaseNameNoOptional filter to show only tokens that have access to this database (partial match)
orderDirectionNoOptional direction for ordering (ASC or DESC). Defaults to ASC.ASC

TDQS

A4/5.0
Behavior3/5

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

Without annotations, the description carries the burden of behavioral disclosure. It adds the 'Core/Enterprise only' licensing restriction and implies read-only behavior via 'List'. However, it does not explicitly state safety (e.g., no side effects), pagination, or return format. The description provides some useful context but lacks full transparency.

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, front-loaded sentence that conveys all essential information without redundancy. Every word adds value, and the structure is clean.

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?

For a filtered-list tool with four well-documented parameters and no output schema, the description sufficiently conveys that it returns a list of resource tokens. It includes the licensing caveat and optional filters. It lacks some details like response shape or pagination, but for this simple tool, the description is reasonably complete.

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?

Schema coverage is 100%, so the baseline is 3. The description mentions filtering and ordering, which maps to the parameters, but the schema already describes each parameter in detail. The description adds minimal value beyond the schema, not elevating the score.

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 ('List'), the resource ('all resource tokens'), and the optional capabilities ('filtering by database name and/or token name, and ordering'). It also distinguishes from sibling token tools by specifying 'resource tokens' and the Core/Enterprise restriction.

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 provides clear context for when to use this tool: when listing resource tokens, with options to filter by database or token name and to order results. It does not explicitly mention alternatives or exclusions, but the purpose is well-scoped and implies appropriate usage.

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

list_tablesA

List tables, also called measurements, in an InfluxDB database.

ParametersJSON Schema
NameRequiredDescriptionDefault
dbYesDatabase name to inspect

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations provided, the description carries the burden of behavioral disclosure. The word 'List' implies a non-mutating read operation, and the clarification 'also called measurements' adds terminological context. However, it does not mention pagination, authentication, or whether the output includes all tables by default.

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, front-loaded with the verb and resource. Every word earns its place, and there is no redundant or extraneous information.

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?

For a simple list tool with one parameter and no output schema, the description is adequate: it states what is listed and where. It could mention that the output is a list of table names, but this is strongly implied by the verb 'List' and the context is otherwise complete.

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?

The schema fully documents the single parameter 'db' with description 'Database name to inspect', so schema coverage is 100%. The tool description adds no additional parameter semantics beyond restating that the operation is within an InfluxDB database, which is already clear from the parameter description.

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 'List' with a clear resource ('tables, also called measurements') and scope ('in an InfluxDB database'). This clearly distinguishes it from sibling tools like list_databases and describe_table, even though get_measurements may overlap.

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?

There is no explicit guidance on when to use this tool versus alternatives such as get_measurements or query_sql. The description only states what the tool does, offering no context about when it is preferred or when other tools should be chosen.

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

load_database_contextA

Check for and load custom database context if available. Always check this first as it can significantly speed up analysis and clarify data nuances. User-provided context is optional but when present, it contains valuable information about database structure, business context, or personal notes that can guide more accurate analysis.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It mentions the conditional nature ('if available') and the optional context, but does not explicitly state that it is a non-modifying read operation or describe what happens after loading (e.g., whether it returns data or sets internal state). This is a moderate gap for a simple 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 two sentences, front-loaded with the primary action and followed by value rationale. Every sentence serves a purpose: the first states what it does, the second explains when and why. No wasted words.

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's simplicity (zero parameters, no output schema), the description is mostly complete: it explains purpose, timing, and optionality. However, it does not specify what the tool returns or how the context is delivered (e.g., as a string, or loaded into memory), which leaves a small gap for the agent.

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 schema has zero parameters, so the baseline is 4. The description adds meaningful context about what the loaded data contains (e.g., 'database structure, business context, or personal notes'), which implicitly clarifies that the tool itself does not require inputs. There are no parameters to elaborate on.

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's function: 'Check for and load custom database context if available.' It uses a specific verb ('load') and resource ('database context'), and distinguishes itself from sibling tools by highlighting its role as an optional context provider that should be checked first.

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

Usage Guidelines5/5

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

The description explicitly provides usage guidance: 'Always check this first as it can significantly speed up analysis and clarify data nuances.' This tells the agent when to use the tool (before analysis) and why, while noting context is optional—so no misuse if absent.

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

query_influxqlA

Run one bounded, read-only InfluxQL query against an InfluxDB 3 database. Rejects SELECT INTO and destructive statements. Prefer query_sql for SQL prompts; use InfluxQL regex field selection only when the user explicitly asks for InfluxQL or regex field matching.

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesRead-only InfluxQL query to run
dbYesDatabase name to query
formatNoOutput format for query resultsjson
paramsNoOptional query parameters to pass through
maxRowsNoMaximum rows to return. Default 1000; hard max 5000.
timeoutMsNoOptional query timeout in milliseconds

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations provided, the description fully discloses key behavioral traits: the query is bounded and read-only, and destructive statements like SELECT INTO are rejected. This provides essential safety information beyond the schema, making the tool's behavior 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 two well-structured sentences. The first delivers the core action and constraints, the second offers usage guidance. Every word earns its place with no redundancy.

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?

Despite no output schema, the description is complete for an agent to select and invoke the tool: it states the exact purpose, constraints, and when to use alternatives. The 'bounded' mention complements the maxRows parameter, and the read-only nature is explicitly stated. No crucial context is missing.

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?

Input schema covers all 6 parameters with descriptions, so baseline is 3. The description does not add specific parameter-level semantics beyond what the schema already provides, but that is acceptable given the high schema coverage.

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 runs one bounded, read-only InfluxQL query against an InfluxDB 3 database. It uses a specific verb (run) and resource (InfluxQL query), and distinguishes it from query_sql by explicitly noting the tool is for InfluxQL, making its purpose unmistakable.

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

Usage Guidelines5/5

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

The description provides explicit guidance: prefer query_sql for SQL prompts, and use InfluxQL only when the user explicitly asks for InfluxQL or regex field matching. This clearly differentiates when to use this tool versus siblings.

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

query_sqlA

Run one bounded, read-only SQL query against an InfluxDB 3 database. Defaults to JSON output and returns structured rows, warnings, and query metadata. In SQL, quoted identifiers are exact column names; if a quoted selector contains *, treat it as wildcard intent, call describe_table, expand matching fields explicitly, then retry one bounded query_sql. Use query_influxql regex only when the user explicitly asks for InfluxQL or regex field selection.

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesRead-only SQL query to run
dbYesDatabase name to query
formatNoOutput format for query resultsjson
paramsNoOptional query parameters to pass through
maxRowsNoMaximum rows to return. Default 1000; hard max 5000.
timeoutMsNoOptional query timeout in milliseconds

TDQS

A4.3/5.0
Behavior4/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 discloses the tool is read-only, bounded, defaults to JSON, and returns structured rows/warnings/metadata. It also reveals a subtle behavior: quoted identifiers are exact, but if the quoted selector contains '*', it's treated as wildcard intent requiring describe_table expansion. This is valuable added context beyond the schema. It doesn't mention permissions or error handling, but the disclosed traits are significant.

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 somewhat long but well-structured: a clear first sentence for purpose, a second for output behavior, then a caveat and an alternative. Each sentence adds meaningful information, and the length is justified by the tricky wildcard behavior and sibling guidance. It could be slightly more compact, but it's not wasteful.

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 6 parameters, no output schema, and no annotations, the description covers the essential aspects: purpose, output format, return contents, a non-obvious edge case, and an alternative tool. It doesn't explain what 'bounded' means in detail (schema covers maxRows/timeout), nor does it distinguish from sibling execute_query, but for a read-only SQL query tool, it is reasonably complete.

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?

The schema provides descriptions for all 6 parameters (100% coverage), so the bar for added value is low. The description adds minimal param-specific meaning; it implies boundedness relates to maxRows/timeout and mentions format default, but doesn't explain any parameter syntax or semantics beyond what the schema already states. Baseline 3 is appropriate.

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 runs 'one bounded, read-only SQL query against an InfluxDB 3 database.' It specifies the verb (run), resource (SQL query), and scope (bounded, read-only), and distinguishes from sibling query_influxql by explicitly mentioning SQL. The mention of default JSON output and return of structured rows/warnings/metadata further clarifies its function.

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

Usage Guidelines5/5

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

The description provides explicit usage guidance: 'Use query_influxql regex only when the user explicitly asks for InfluxQL or regex field selection.' It also offers a clear conditional workflow for quoted wildcard selectors (call describe_table, expand, retry one bounded query_sql), which helps the agent decide when to take extra steps. This is strong alternative/context guidance.

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

regenerate_operator_tokenA

Regenerate the InfluxDB operator token (Core/Enterprise only). Returns the new token value. ⚠️ This action invalidates current operator token and is irreversible. Receive the explicit user confirmation before proceeding.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations provided, the description carries full disclosure burden. It explicitly states the token is invalidated, the action is irreversible, returns the new token value, and requires explicit user confirmation before proceeding. This covers key behavioral consequences and prerequisites beyond what the tool name alone implies.

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 three sentences, each earning its place: purpose, return value, and critical warnings. It is front-loaded with the action and resource, followed by necessary cautionary notes. No redundant or vague filler.

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 is simple (0 params, no output schema) and the description fully covers what it does, what it returns ('the new token value'), and the critical downside (invalidates current token, irreversible). The confirmation requirement is also included, making the description complete for safe invocation.

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 zero parameters and an empty input schema, so the baseline is 4. The description adds no parameter details because none exist, which is appropriate and sufficient.

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 'Regenerate the InfluxDB operator token' which is a specific verb+resource combination. It also scopes to 'Core/Enterprise only,' distinguishing it from sibling tools like create_admin_token or cloud_create_database_token. The focus on 'operator token' uniquely identifies its purpose.

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 provides clear context: it is for Core/Enterprise, requires explicit user confirmation, and emphasizes irreversibility. It does not explicitly name alternatives or exclusions, but the 'only' scope and uniqueness of the operator token implicitly guide usage. It falls short of a 5 by not mentioning when not to use or alternative token operations.

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

update_databaseA

Update database configuration for InfluxDB. For Cloud Dedicated/Clustered: modify maxTables, maxColumnsPerTable, and retentionPeriod. For Cloud Serverless: modify bucket name, description, and retentionPeriod. For Core/Enterprise: modify retentionPeriod only (Core requires v3.2.0+).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the database/bucket to update
newNameNoNew name for the database/bucket (Cloud Serverless only)
maxTablesNoMaximum number of tables (Cloud Dedicated/Clustered only)
descriptionNoDescription for the bucket (Cloud Serverless only)
retentionPeriodNoRetention period in nanoseconds (Cloud Dedicated/Clustered, Cloud Serverless, and Core/Enterprise)
maxColumnsPerTableNoMaximum columns per table (Cloud Dedicated/Clustered only)

TDQS

A4.4/5.0
Behavior4/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 discloses product-specific limitations (e.g., Core/Enterprise can only modify retentionPeriod) and the Core v3.2.0+ requirement, adding meaningful behavioral context. It does not mention authorization, reversibility, or side effects, but the included constraints provide more than minimal transparency.

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 two sentences: the first states the core purpose, and the second efficiently maps product variants to allowed fields. Every clause earns its place with no filler or redundancy, and it is structured to front-load the primary intent.

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 parameter count (6) and no output schema, the description covers all major usage scenarios across InfluxDB product types and includes version constraints. It does not describe return values or error cases, but for a configuration update tool with strong parameter schema coverage, the provided context is largely sufficient.

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 input schema already documents each parameter with 100% coverage, so the description need not repeat definitions. It adds value by grouping parameters by product type, clarifying that fields like maxTables and maxColumnsPerTable are only for Cloud Dedicated/Clustered, which is not immediately obvious from the schema 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 tool updates InfluxDB database configuration and specifies exact fields per product variant, which distinguishes it from sibling tools like create_database and delete_database. The verb 'update' plus the resource 'database configuration' is specific and unambiguous.

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 provides clear guidance on which parameters to use for each InfluxDB product type (Cloud Dedicated/Clustered, Cloud Serverless, Core/Enterprise) and includes a version prerequisite. However, it does not explicitly contrast with alternative tools or state when not to use this tool, so it stops short of a perfect score.

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

write_line_protocolA

Write data to InfluxDB using line protocol format (all versions). Supports single records or batches.

Line Protocol Syntax: measurement,tag1=value1,tag2=value2 field1=value1,field2=value2 timestamp

Components:

  • measurement: table/measurement name (required)

  • tags: indexed metadata (optional) - comma-separated key=value pairs

  • fields: actual data (required) - space-separated from tags, comma-separated key=value pairs

  • timestamp: optional timestamp (precision must be specified in tool parameters)

Field Value Types:

  • Strings: "quoted string"

  • Floats: 123.45

  • Integers: 123i (note the 'i' suffix)

  • Booleans: t or f

Examples: Single record: temperature,location=office,building=main value=23.5,humidity=45i 1640995200 Batch (separate with newlines): temperature,location=office value=23.5 1640995200 humidity,location=office value=45i 1640995201

Important: Always specify correct precision parameter to match your timestamp format. Use any precision if writing data with no timestamp. Escaping required for special characters in tags/fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesLine protocol formatted data. For multiple records, separate each line with \n
noSyncNoAcknowledge without waiting for WAL persistence
databaseYesName of the database/bucket to write to
precisionYesPrecision of timestamps
acceptPartialNoAccept partial writes

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations provided, the description carries full responsibility for behavioral disclosure. It does this well by explaining line protocol syntax, field value types, timestamp precision requirements, and escaping needs. It also states 'all versions' and batch support. It lacks details on error handling or side effects beyond writing, but the write operation itself is clearly described with practical examples.

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 long (~200 words) but well-structured with clear sections (Line Protocol Syntax, Components, Field Value Types, Examples, Important). It front-loads the purpose and then provides necessary format details. Some redundancy, like repeating 'comma-separated key=value pairs,' but the structured format and examples justify the length.

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 complexity (custom line protocol format), 5 parameters, no annotations, and no output schema, the description covers syntax, types, examples, precision, and escaping. It does not explicitly state return values or error behavior, but for a write tool this is reasonably complete. The presence of a detailed schema further supplements parameter usage.

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?

Schema description coverage is 100%, so the baseline is 3. The description adds substantial value beyond the schema by explaining the line protocol structure, field types (strings, floats, integers with 'i', booleans), and the importance of matching precision to timestamp format. These details directly help construct the 'data' parameter correctly, which the schema description only handles at a high level.

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 opens with a specific verb and resource: 'Write data to InfluxDB using line protocol format (all versions).' It clearly distinguishes from sibling query tools by indicating this is for writing data, not reading or managing. The line protocol format is explicitly named, making the tool's core function unambiguous.

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 provides clear context for when to use the tool: it supports single records or batches and emphasizes precision handling and escaping. While it doesn't explicitly mention alternatives, the sibling tools are predominantly read/query/management operations, so the usage context is clear. No explicit when-not-to-use guidance, but the detailed examples and syntax instructions inherently guide correct invocation.

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. 27 tool updatesv1.4.1-test.1
    • First observedcloud_create_database_token
    • First observedcloud_delete_database_token
    • First observedcloud_get_database_token
    • First observedcloud_list_database_tokens
    • First observedcloud_update_database_token
    • First observedcreate_admin_token
    • First observedcreate_database
    • First observedcreate_resource_token
    • First observeddelete_database
    • First observeddelete_token
    • First observeddescribe_table
    • First observedexecute_query
    • First observedget_help
    • First observedget_measurement_schema
    • First observedget_measurements
    • First observedhealth_check
    • First observedinvestigate_database
    • First observedlist_admin_tokens
    • First observedlist_databases
    • First observedlist_resource_tokens
    • First observedlist_tables
    • First observedload_database_context
    • First observedquery_influxql
    • First observedquery_sql
    • First observedregenerate_operator_token
    • First observedupdate_database
    • First observedwrite_line_protocol

TDQS

A3.5/5.0
Disambiguation2/5

Several tools overlap significantly: query_sql and execute_query both execute SQL queries, list_tables and get_measurements both list tables, and describe_table and get_measurement_schema both describe schemas. This creates ambiguity for an agent trying to select the right tool.

Naming Consistency3/5

Most tools follow a verb_noun snake_case pattern (create_database, delete_database, list_databases), but there are inconsistencies: get_help and health_check are not verb_noun, regenerate_operator_token uses an unusual verb, and cloud_* tokens are prefixed differently from other token tools. Overall readable but mixed.

Tool Count2/5

With 27 tools, the server is over the typical threshold for a coherent set. Many tools could be consolidated (e.g., query_sql and execute_query, list_tables and get_measurements) to reduce redundancy without losing functionality.

Completeness4/5

The server covers core database lifecycle (create/update/delete/list), query and write operations, schema introspection, and comprehensive token management across Cloud and Core/Enterprise. Minor gaps exist (e.g., no direct tool to delete data from a measurement), but the essential workflows are well represented.

Maintenance

ActivityActive
ResponsivenessSlow

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
    A
    quality
    D
    maintenance
    A Model Context Protocol server that provides Claude with access to InfluxDB time-series database instances, enabling data writing, querying, and management of organizations and buckets through natural language.
    4
    1,632
    44
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables interaction with InfluxDB v3 (Core/Enterprise/Cloud Dedicated) through MCP clients. Supports database management, data querying and writing, schema inspection, and token administration operations.
    1,632
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    InfluxDB-v1-MCP is a powerful Model Context Protocol (MCP) interface specifically designed for InfluxDB v1.x, enabling AI assistants to intelligently manage and query time-series databases.
    Apache 2.0

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/influxdata/influxdb3_mcp_server'

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