MCP server for Flespi telematics platform API - provides 157 tools for fleet management, device tracking, and telemetry data processing
This server exposes only 2 actual tools (flespi_get_protocols, flespi_list_tools) to the MCP interface, despite claiming to provide 157 tools. The source code shows tool generation from a Flespi API spec file (flespi.json), but that file is not included in the repository. The two visible tools have basic parameter descriptions and enum constraints, but are underdeveloped for production use. The code claims to generate tools from an external spec (generateTools() iterates flespi.json), but without seeing the actual spec file or the generated tool definitions, most of the promised toolset is invisible to evaluation. Tool naming follows verb_noun pattern (flespi_get_protocols), but descriptions are minimal (under 200 chars). Parameter schemas are present but sparse. No output schemas are documented. Error handling is absent, no recovery guidance, no categorization, no user-fixable hints. Security patterns are missing: the token is exposed as a required parameter (antipattern; should use server-side injection). Overall, the server is a stub that claims to wrap a large API but only exposes two utility tools with weak definitions.
Get available channel protocols, stream protocols, device types, or plugin types
List all available Flespi tools with their descriptions
Token exposed as tool parameter instead of server-side secret injection. Credentials in parameters leak into agent logs and prompt history.
No output schemas documented for any tool. LLMs cannot infer what fields to expect, preventing downstream tool chaining and forcing manual field extraction.
No error handling or recovery guidance. Errors are logged but never communicated to the LLM with actionable next steps.
Tool descriptions are minimal and lack WHEN/WHY context. 'List all available Flespi tools' does not explain when the agent should call this vs. other discovery tools or when it is useful.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 45 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 0 | - | v1 |
Promised 157 tools from Flespi API are not visible in source code. Tool generation code exists (generateTools() method) but relies on external flespi.json file which is not provided. These tools cannot be evaluated, their definitions are inferred/invisible.
Parameter descriptions lack constraints. 'type' parameter has enum constraint (visible in schema), but 'filter' parameter has no type annotation, format, or length limits, LLMs cannot determine valid input ranges.
No pagination support visible. If flespi_list_tools returns many items, there is no limit parameter, offset/page parameter, or total count field. Large result sets will blow context windows.