InfluxDB MCP Server
OfficialThis server is an MCP integration for InfluxDB 3 that lets AI agents discover, query, manage, and write to InfluxDB instances across all product tiers.
Query data: Run bounded, read-only SQL (
query_sql) and InfluxQL (query_influxql) queries with JSON/CSV/Parquet output and row limits.Explore schema: List databases, list tables/measurements, describe table schemas, and investigate database structure with optional row sampling.
Write data: Send single or batch line protocol records via
write_line_protocol.Manage databases: Create, update (retention, limits), and delete databases.
Manage tokens: Create/list/delete admin and resource tokens for Core/Enterprise, plus database tokens for Cloud Dedicated/Clustered.
Health & context: Check connection health, load custom database context, and get built-in help/troubleshooting.
Read-only mode: Optionally expose only read-only tools via
INFLUX_MCP_TOOL_PROFILE=readonlyfor safe agent exploration.
Provides tools for managing InfluxDB 3 instances (Core, Enterprise, Cloud Serverless, Cloud Dedicated, Clustered) including database CRUD, token management, query execution, and schema introspection.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@InfluxDB MCP ServerShow me the measurements in my database"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
InfluxDB MCP Server
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:
Call
list_databasesto see accessible databases.Call
list_tablesanddescribe_tableto discover measurements and columns.Treat uncertain tag and field categories as
unknown.Build a bounded SQL query with
db,q, and optionalparams.Call
query_sqlwith structured JSON output.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:
Keep the user's query in InfluxQL and call
query_influxql.Use
SHOWqueries and schema discovery to verify the measurement and referenced columns.Sample recent rows with bounded reads to distinguish missing data from a broken query.
Reject unsafe follow-up attempts, such as
SELECT INTOor destructive statements.Return
request_id,query_id, andquery_id_sourceso the operator can correlate the MCP result withsystem.queries.idwhen query history is available.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 optional custom database context and documentation | All versions |
| Get help and troubleshooting guidance for InfluxDB operations | All versions |
| Write data using InfluxDB line protocol | All versions |
| Create a new database (with cloud-specific config options) | All versions |
| Update database configuration (retention for all; maxTables/maxColumns for Cloud Dedicated/Clustered) | All versions |
| Delete a database by name (irreversible) | All versions |
| Run a SQL query against a database (supports multiple formats) | All versions |
| Run bounded read-only SQL with structured response metadata | All versions |
| Run bounded read-only InfluxQL with structured response metadata | All versions |
| List all measurements (tables) in a database | All versions |
| Get schema (columns/types) for a measurement/table | All versions |
| List tables, also called measurements, in a database | All versions |
| Describe table schema with conservative column categories | All versions |
| Run high-level read-only database discovery and sampling | All versions |
| Create a new admin token (full permissions) | Core/Enterprise only |
| List all admin tokens (with optional filtering) | Core/Enterprise only |
| Create a resource token for specific DBs and permissions | Core/Enterprise only |
| List all resource tokens (with filtering and ordering) | Core/Enterprise only |
| Delete a token by name | Core/Enterprise only |
| Regenerate the operator token (dangerous/irreversible) | Core/Enterprise only |
| List all database tokens for Cloud-Dedicated/Clustered cluster | Cloud Dedicated/Clustered |
| Get details of a specific database token by ID | Cloud Dedicated/Clustered |
| Create a new database token for Cloud-Dedicated/Clustered cluster | Cloud Dedicated/Clustered |
| Update an existing database token | Cloud Dedicated/Clustered |
| Delete a database token from Cloud-Dedicated/Clustered cluster | Cloud Dedicated/Clustered |
| List all available databases in the instance | All versions |
| Check InfluxDB connection and health status | All versions |
Available Resources
Resource Name | Description |
| Read-only access to InfluxDB configuration |
| Real-time connection and health status |
| List of all databases in the instance |
| Custom user-provided database context and documentation |
Available Prompts
Prompt Name | Description |
| Generate a prompt to list all available databases |
| Generate a prompt to check InfluxDB health status |
| 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_TOKENINFLUX_DB_PRODUCT_TYPE(coreorenterprise)
Example .env:
INFLUX_DB_INSTANCE_URL=http://localhost:8181/
INFLUX_DB_TOKEN=your_influxdb_token_here
INFLUX_DB_PRODUCT_TYPE=coreFor Cloud Serverless InfluxDB:
You must provide:
INFLUX_DB_INSTANCE_URL(e.g.https://us-east-1-1.aws.cloud2.influxdata.com)INFLUX_DB_TOKENINFLUX_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-serverlessFor 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_hereOption 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_hereOption 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_hereFor 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_hereOption 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_hereOption 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_hereSee 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=readonlyTool-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=falseTo write telemetry to a file, configure the file backend:
MCP_LOG_BACKEND=file
MCP_LOG_FILE=/logs/influxdb-mcp.jsonlThe 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)
Install dependencies:
npm installBuild the server:
npm run buildConfigure 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)
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:builda) 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.mdfile or remove it and create your own context file with "context" in the name (.json,.txt,.md) to provide database documentation. Use theload_database_contexttool orload-contextprompt to access it.See the
example-*.mcp.jsonfiles for ready-to-use configuration templates:example-local.mcp.json- Local development setupexample-npx.mcp.json- NPX-based setupexample-docker.mcp.json- Docker-based setupexample-cloud-dedicated.mcp.json- Cloud Dedicated with all variablesexample-clustered.mcp.json- Clustered with all variablesexample-cloud-serverless.mcp.json- Cloud Serverless configuration
See the
env.example,env.cloud-dedicated.example,env.clustered.example, andenv.cloud-serverless.examplefiles for environment variable templates.See
AGENT_E2E_TESTS.mdfor 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_helptool 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
.envand 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 foundA 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
Available Tools
27 toolscloud_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"}]
| Name | Required | Description | Default |
|---|---|---|---|
| description | Yes | Description/name for the token | |
| permissions | No | Array of permission objects. Each object specifies database and action. Leave empty array [] for no-access token. |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| token_id | Yes | The ID of the token to delete |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| token_id | Yes | The ID of the token to retrieve |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
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.
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.
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.
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.
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.
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"}]
| Name | Required | Description | Default |
|---|---|---|---|
| token_id | Yes | The ID of the token to update | |
| description | No | New description for the token (optional) | |
| permissions | No | Array of permission objects. Each object specifies database and action. Use empty array [] for no-access token. |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Optional name for the admin token (e.g., "backup-admin-token"). If not provided, a unique name will be generated. |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name of the database to create (alphanumeric, -, _, / allowed; max 64 chars; must start with letter/number) | |
| maxTables | No | Maximum number of tables (Cloud Dedicated/Clustered only, default: 500) | |
| description | No | Description for the bucket/database (Cloud Serverless only) | |
| retentionPeriod | No | Retention period in nanoseconds (Cloud Dedicated/Clustered: default 0 = no expiration, Cloud Serverless: default 30 days) | |
| maxColumnsPerTable | No | Maximum columns per table (Cloud Dedicated/Clustered only, default: 200) |
TDQS
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.
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.
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.
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.
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.
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"]
| Name | Required | Description | Default |
|---|---|---|---|
| actions | Yes | Array of permissions for the databases. Example: ["read"] for read-only, ["read", "write"] for full access, or ["write"] for write-only. | |
| databases | Yes | Array of database names this token can access. Example: ["database1", "database2"]. Use exact database names from your InfluxDB instance. | |
| description | Yes | Description/name for the resource token (e.g., "My App Token") | |
| expiry_secs | No | Optional 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
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name of the database to delete (use exact name from database list) |
TDQS
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.
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.
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.
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.
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.
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).
| Name | Required | Description | Default |
|---|---|---|---|
| token_name | Yes | Name of the token to delete (required) |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| db | Yes | Database name containing the table | |
| table | Yes | Table or measurement name to describe |
TDQS
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.
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.
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.
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.
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.
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
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | SQL query to execute. | |
| format | No | Output format for query results | json |
| database | Yes | Name of the database/bucket to query |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| database | Yes | Name of the database/bucket to list measurements from |
TDQS
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.
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.
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.
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.
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.
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).
| Name | Required | Description | Default |
|---|---|---|---|
| database | Yes | Name of the database/bucket containing the measurement | |
| measurement | Yes | Name of the measurement to describe |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| db | Yes | Database name to investigate | |
| maxTables | No | ||
| includeSamples | No | Whether to include recent sample rows | |
| sampleRowsPerTable | No |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| tokenName | No | Optional filter to search for tokens with names containing this text (case-insensitive partial match) |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
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.
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.
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.
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.
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.
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).
| Name | Required | Description | Default |
|---|---|---|---|
| orderBy | No | Optional field to order results by | |
| tokenName | No | Optional filter to search for tokens with names containing this text (case-insensitive partial match) | |
| databaseName | No | Optional filter to show only tokens that have access to this database (partial match) | |
| orderDirection | No | Optional direction for ordering (ASC or DESC). Defaults to ASC. | ASC |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| db | Yes | Database name to inspect |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Read-only InfluxQL query to run | |
| db | Yes | Database name to query | |
| format | No | Output format for query results | json |
| params | No | Optional query parameters to pass through | |
| maxRows | No | Maximum rows to return. Default 1000; hard max 5000. | |
| timeoutMs | No | Optional query timeout in milliseconds |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Read-only SQL query to run | |
| db | Yes | Database name to query | |
| format | No | Output format for query results | json |
| params | No | Optional query parameters to pass through | |
| maxRows | No | Maximum rows to return. Default 1000; hard max 5000. | |
| timeoutMs | No | Optional query timeout in milliseconds |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
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.
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.
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.
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.
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.
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+).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name of the database/bucket to update | |
| newName | No | New name for the database/bucket (Cloud Serverless only) | |
| maxTables | No | Maximum number of tables (Cloud Dedicated/Clustered only) | |
| description | No | Description for the bucket (Cloud Serverless only) | |
| retentionPeriod | No | Retention period in nanoseconds (Cloud Dedicated/Clustered, Cloud Serverless, and Core/Enterprise) | |
| maxColumnsPerTable | No | Maximum columns per table (Cloud Dedicated/Clustered only) |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | Line protocol formatted data. For multiple records, separate each line with \n | |
| noSync | No | Acknowledge without waiting for WAL persistence | |
| database | Yes | Name of the database/bucket to write to | |
| precision | Yes | Precision of timestamps | |
| acceptPartial | No | Accept partial writes |
TDQS
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.
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.
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.
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.
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.
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.
27 tool updates
v1.4.1-test.1- First observed
cloud_create_database_token - First observed
cloud_delete_database_token - First observed
cloud_get_database_token - First observed
cloud_list_database_tokens - First observed
cloud_update_database_token - First observed
create_admin_token - First observed
create_database - First observed
create_resource_token - First observed
delete_database - First observed
delete_token - First observed
describe_table - First observed
execute_query - First observed
get_help - First observed
get_measurement_schema - First observed
get_measurements - First observed
health_check - First observed
investigate_database - First observed
list_admin_tokens - First observed
list_databases - First observed
list_resource_tokens - First observed
list_tables - First observed
load_database_context - First observed
query_influxql - First observed
query_sql - First observed
regenerate_operator_token - First observed
update_database - First observed
write_line_protocol
TDQS
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.
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.
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.
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
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
Access New Relic observability data through MCP - query metrics, logs, traces, entities, and more
- SupabaseOAuthcom.supabase
MCP server for interacting with the Supabase platform
Query, join, profile, clean and convert CSV/JSON/Parquet with server-side DuckDB over MCP.
The Instant MCP server is a wrapper around the Instant Platform SDK that enables creating, managing, and updating InstantDB applications directly within an editor. It provides tools for fetching rules files for LLMs, retrieving and pushing app schemas, managing permission rules, and executing database queries. Key capabilities include schema management (get-schema, push-schema), permission management (get-perms, push-perms), query execution, and listing recent query history.
Related MCP Servers
- AlicenseAqualityDmaintenanceA 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.41,63244MIT
- FlicenseNot gradedqualityDmaintenanceAn MCP server that enables interactions with InfluxDB's open-source time-series database API, allowing data querying, management, and operations through natural language.-
- AlicenseNot gradedqualityDmaintenanceEnables 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,632MIT
- AlicenseNot gradedqualityDmaintenanceInfluxDB-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
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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