Repository navigation
v2.0.0
InfluxDB 3 MCP Server 2.0.0
Version 2.0.0 adds query completeness reporting, permission-aware discovery, and recovery guidance for agents. It also fixes query-tool loading in Claude Code.
Breaking changes and migration
This release changes query result envelopes, health-check output, validation errors, and telemetry fields. If your client parses these responses, update it to follow the [read-only output contract](https://github.com/influxdata/influxdb3_mcp_server/blob/v2.0.0/docs/read-only-output-contract.md).
- Check
metadata.completeness:complete,capped, orinterrupted. A successful request alone doesn’t establish a complete answer. - For capped results, read
capandcap_source(server_boundorquery_limit). - The response field
truncatedremains available. Telemetry replaces it withcompletenessandcap_source. - Health checks return JSON and distinguish credential denial from endpoint failure.
- Invalid arguments return structured
invalid_argumentstool errors.
Query results and recovery
- Results capped by
maxRowsare correctly reported as capped. - Interrupted responses return
ok: falsewithquery_interrupted. JSON responses preserve whole rows received before the interruption. - The
formatfield reports the returned format. Aformat_mismatchwarning identifies differences from the requested format. - Read-only queries support JSON, JSONL, and CSV on Core and Enterprise. Cloud Serverless, Cloud Dedicated, and Clustered support JSON. Unsupported formats are rejected before execution.
- Unsupported Flight SQL timeouts and parameters return
unsupported_query_option. - Query errors provide recovery guidance for incorrect references, ingest-only endpoints, and observed memory-exhaustion failures.
EXPLAIN ANALYZEbounds the query and reports that it executes it.get_helpexplains how to interpret query results.
Discovery and investigation
- Core and Enterprise report observed column roles from
system.influxdb_schema. - When your credential can read
_internal, table descriptions and investigations report schema mode and deletion flags with catalog provenance. - Unavailable metadata remains
unknown. Timestamp-shaped table names produce advisory tombstone warnings. - Investigation preserves per-table failures, reports truncation and request budgets, and samples recent rows within a configurable time window.
- Cardinality estimation returns
unsupported_option.
Fixes
- Claude Code loads
query_sqlandquery_influxqlafter removal of top-level input-schema combinators. - Both tools accept
databaseas an alias fordbandqueryas an alias forq. Missing or conflicting pairs fail validation before querying. - Read-only validation accepts keywords and semicolons inside string literals or quoted identifiers, including
SELECT 'DROP TABLE metrics' AS note. - Empty server error bodies retain the HTTP client’s error message.
- MCP Registry publishing waits for npm validation before registering the package.
The query and discovery changes are in [#140](#140). Registry publishing is fixed in [#136](#136).
Deprecated
execute_query is deprecated. Use query_sql for bounded, read-only SQL queries with completeness metadata.
Existing clients can continue using execute_query with unchanged behavior. Removal requires a future major release after at least 90 days or two InfluxDB 3 minor releases, whichever is longer.
Build and dependency updates
Development, CI, Docker builds, and release packaging use pinned pnpm and pnpm-lock.yaml. Packages continue to publish to npm.
Dependency updates include MCP SDK 1.32.0, Hono 4.13.13, follow-redirects 1.16.1, protobufjs 7.6.6, proxy-addr 2.0.8, source-map-js 1.2.2, Vite 8.3.5, Vitest 4.1.12, and ip-address 10.7.4.
Verification limits
Unclassified server failures return recovery: none. Server timeout and backpressure classifications, partial per-table denial, and failures after streaming begins retain their documented verification limits.