MCP client for Baselight database queries and catalog search. Supports both API key authentication and MPP pay-per-query payments via EVM private keys.
Server provides 8 tools with basic schemas and descriptions, but quality is inconsistent. All tools have descriptions (10-80 chars, mostly short), and input schemas are present with parameter types. However, descriptions are generic and lack LLM-optimized guidance on WHEN to use each tool or HOW to chain them. No output schemas documented. Error handling is absent, no guidance on retries, user-fixable errors, or recovery paths. Tool naming follows verb_noun convention (search_, get_, query) but lacks clarity on distinctions (search_catalog vs search_tables). Parameters lack enums, ranges, and format constraints. No tool annotations (readOnlyHint, idempotentHint). Composition is weak, tools operate on opaque IDs (dataset_id, table_id, job_id) without natural identifiers or lookup helpers.
Retrieve metadata for a specific dataset by ID
List tables in a dataset with optional query filter and pagination
Retrieve results from a query job with optional limit, offset, and polling
Health check command to verify server connectivity
Execute a SQL query against Baselight
Search the Baselight catalog with optional category filter and result limit
No output schemas documented. LLMs cannot infer what fields to expect from search_catalog, dataset_metadata, query, or get_results. This breaks tool chaining, agents don't know which IDs to extract for downstream calls.
Descriptions are too generic and lack LLM-optimized guidance. 'Search the Baselight catalog with optional category filter and result limit' (50 chars) does not explain WHEN to use search_catalog vs search_tables, what 'catalog' means, or what fields are returned. Baseline for A+ tools is 50-200 chars with clear WHAT/WHEN/WHY.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 58 | <=2025-11-25 | v2 |
Search tables in Baselight with optional category filter and result limit
Retrieve metadata for a specific table by ID
Parameters lack enums, ranges, and format constraints. 'category' and 'query' accept free-form strings with no validation hints. 'limit' and 'page' have no min/max bounds, LLMs may pass absurd values (limit=999999, page=-1). Baseline: constrained inputs prevent hallucinated values.
No error handling or recovery guidance. Tools return no indication of retryability, user-fixable errors, or next steps. If 'query' fails, the agent has no guidance on whether to retry, adjust the SQL, or call a different tool.
Tool composition relies on opaque IDs (dataset_id, table_id, job_id) without natural identifiers or lookup helpers. Users say 'Show me the sales dataset', not 'Call dataset_metadata with dataset_id=d_12345'. No search-by-name or name-to-ID resolution.