A powerful service that automatically generates read-only APIs for datasets by utilizing SQL templates. Built on top of DuckDB and leveraging its SQL engine and extension ecosystem, flAPI offers a seamless way to connect to various data sources and expose them as RESTful APIs.
Critical failures across all 19 tools. Every tool has an empty input schema (only `{"type":"object","properties":{}}` visible), meaning zero parameters are documented. Descriptions exist but are generic and lack depth. No parameter documentation, no output schemas, no error handling guidance. Tools show no annotations for read-only vs destructive operations (despite risk classifications in metadata). The server appears to be a configuration/templating tool for flAPI (a DuckDB-backed REST API generator), but the tool definitions themselves are severely under-specified for agent use.
Create a new endpoint with the provided configuration. Returns the full endpoint configuration.
Delete an endpoint by its path. The endpoint becomes unavailable for API calls immediately.
Expand a Mustache template by substituting parameters
Get cache audit log with operation history and statistics
Get the current cache status and statistics
Get the complete configuration for a specific endpoint including validators, cache settings, and auth requirements
ALL 19 TOOLS: Empty input schemas. Every tool declares only `{"type":"object","properties":{}}`, zero documented parameters. This violates the foundational requirement that every parameter must have a description and type. An LLM cannot know what arguments to pass.
NO OUTPUT SCHEMAS DOCUMENTED. No tool documents what fields it returns. Agents cannot plan downstream operations without knowing the response structure.
Inferred effective spec: 2025-06-18+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 50 | 2025-06-18+ | v2 |
| 2026-03-09 | D | 50 | - | v1 |
List available environment variables matching whitelist patterns
Get the template directory tree structure with YAML and SQL file detection
Get the current flAPI project configuration including connections, DuckLake settings, and server configuration
Introspect database schema including tables, columns, and their types for a given connection
Retrieve the SQL template content for a specific endpoint
List all configured REST endpoints and MCP tools with their basic information
Manually trigger a cache refresh for a specific endpoint or all endpoints
Refresh the cached database schema information by querying the database again
Reload an endpoint configuration from disk without restarting the server. Useful after manual YAML edits.
Run cache garbage collection to free unused memory
Execute a template against the database with sample parameters and return results
Update the configuration of an existing endpoint. Preserves any settings not explicitly changed.
Write or update the SQL template content for an endpoint
NO ERROR HANDLING GUIDANCE. No tool explains what can go wrong or how to recover. Descriptions like 'Retrieve the SQL template content for a specific endpoint' do not mention failures (endpoint not found, invalid format, etc.). Agents have no recovery path.
DESTRUCTIVE TOOLS LACK CONFIRMATION PATTERN. flapi_delete_endpoint (marked DESTRUCTIVE) has no mention of a dry-run, confirmation step, or undo mechanism. Agents can permanently delete endpoints without safeguard.
TOOL ANNOTATIONS MISSING. Despite metadata indicating risk levels (READ_ONLY, WRITE, DESTRUCTIVE), the tool definitions themselves carry no readOnlyHint, idempotentHint, or destructiveHint annotations. The MCP spec (2026-07-28) supports these; flAPI does not emit them.
GENERIC DESCRIPTIONS DO NOT GUIDE TOOL SELECTION. Descriptions like 'Get cache audit log with operation history and statistics' are too vague. An LLM cannot distinguish flapi_get_cache_audit from flapi_get_cache_status without trial and error. Descriptions need WHEN-to-use context.
NO PARAMETER NAMING FOR REQUIRED INPUTS. Tools like flapi_get_endpoint and flapi_delete_endpoint almost certainly require an 'endpoint_path' or 'endpoint_id' parameter, but the schema shows no parameters. LLMs cannot invoke these tools without guessing parameter names.