Single MCP server providing complete Machbase Neo control: Database queries and TQL execution (via /db/ API, no auth), File management and TQL file saving (via /web/api/, JWT auth), Dashboard creation and chart management (via /web/api/, JWT auth), Machbase Neo documentation access (local file system)
This MCP server provides 15 database and file management tools for Machbase Neo. While tool names follow verb-noun conventions and basic descriptions exist, the implementation has significant quality gaps: (1) Parameter descriptions are minimal or missing for most tools, most params lack any explanation of format, constraints, or dependencies. (2) Output schemas are not documented anywhere, LLMs cannot predict what fields will be returned. (3) No error handling guidance, tools provide no recovery hints or actionable error messages. (4) Security issues, credentials passed via environment variables with no indication of scope or validation. (5) Several tools accept optional 'host' and 'port' parameters that should be environment defaults, not user-facing params, increasing cognitive load. (6) No pagination support documented for list_* tools, risking context window exhaustion. (7) Descriptions are generic and lack 'when to use' guidance, e.g., 'Execute SQL query' doesn't explain when query() vs tql() applies. Per-tool analysis below.
Add a chart to an existing dashboard in Machbase Neo. Supports multiple chart types (Line, Bar, Scatter, Pie, Gauge, etc.) with automatic layout positioning.
Create a new dashboard in Machbase Neo Web API. Dashboard is created with empty layout and can be populated with charts.
Create a folder structure in Machbase Neo file system via Web API. Creates nested directories as needed. Requires JWT authentication.
Delete a file from Machbase Neo file system via Web API. Requires JWT authentication.
Get detailed schema information for a specific table in Machbase Neo, including all columns, their types, and constraints.
Get detailed information about a specific dashboard including its charts and layout.
Missing output schemas for all tools. No documentation of return types, field names, or structures. LLMs cannot predict response shape or plan downstream tool calls.
Parameter descriptions are minimal or absent. Most parameters (host, port, table_name, file_path, etc.) lack any explanation of format, allowed values, or constraints. E.g., 'table_name' has only 'Name of the table to describe', no guidance on case sensitivity, reserved names, or format.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 43 | <=2025-11-25 | v2 |
Get Machbase Neo documentation from local 'neo' folder. Returns formatted markdown documentation for requested topics.
List all dashboards available in Machbase Neo Web API.
List files and folders in Machbase Neo file system via Web API. Returns directory contents with file metadata.
List all tables in Machbase Neo database using M$SYS_TABLES system table. Includes table names, counts, and creation times.
Execute SQL query against Machbase Neo database and return results in JSON format. Uses the /db/query REST API endpoint with no authentication.
Read the contents of a file from Machbase Neo file system via Web API. Requires JWT authentication.
Retrieve sample data from a table with optional LIMIT and WHERE clause filtering.
Save a TQL query as a file in Machbase Neo file system via Web API. Automatically creates parent folders if needed. Requires JWT authentication.
Execute TQL (Time Query Language) command against Machbase Neo and return results. Uses the /db/tql REST API endpoint with no authentication.
No error handling guidance. Tools declare risk levels (READ_ONLY, WRITE, DESTRUCTIVE) but provide no error messages or recovery hints. LLMs cannot self-correct on failures.
Confusing parameter exposure: 'host' and 'port' are repeated across all 15 tools as optional parameters with defaults from env vars. This exposes infrastructure details (server hostname/port) to the LLM, increasing cognitive load. These should be handled entirely server-side.
No pagination or limit enforcement. 'list_tables', 'list_files', 'list_dashboards' may return unbounded results, risking context window exhaustion. No documentation of result limits or pagination support.
Ambiguous tool selection guidance. 'query' and 'tql' are separate tools but descriptions don't clarify when to use each. LLMs will struggle to choose between them without clear differentiation.
Credentials in environment variables are documented in install script but no scope declarations or permission gating in tool definitions. Destructive operations (delete_file) have no confirmation step or dry-run option.
Missing natural identifiers. Tools accept 'table_name' and 'file_path' as strings but no guidance on escaping, quoting, or handling special characters. SQL injection vectors not addressed.
'sample_data' tool accepts 'where_clause' as a free-form string parameter with no validation or constraint description. LLMs could pass arbitrary SQL, risking injection or performance issues.
Incomplete parameter documentation for 'add_chart_to_dashboard': 'chart_config' is typed as object but has no schema or example. LLMs cannot construct valid chart configurations.