A filesystem-based tool execution system that exposes tools as virtual files and directories, with MCP proxy support for bridging to MCP servers
This server has severe definition quality issues. Tool definitions are inferred from Python FastMCP decorators rather than explicitly visible in the Rust codebase. The source shows a Rust FUSE filesystem server (LiveFolders) with a custom Tool trait, but the actual MCP tool implementations are scattered across research/criteria Python files with minimal descriptions. 12 of 13 tools have descriptions under 100 chars (baseline 194). No input schemas are visible in the Rust code, only Python type hints. Duplicate tool names (list_users appears 3 times). No error handling guidance, no output schemas documented, no parameter constraints. The server appears to be a research artifact mixing multiple test implementations rather than a cohesive production MCP server.
Returns the total number of users as a plain integer.
Filter users by name substring. Returns 'count: N' on first line, then matching id:name pairs. Use for aggregate/filter tasks.
Fetch full details for one user by ID. Returns name, id, createdAt, avatar.
Increments and returns the counter.
Reflects back a JSON object.
Fetches all users from the JSONPlaceholder API.
Fetches all users. Returns full markdown with name, ID, created date, avatar.
Tool definitions inferred from Python code, not visible in Rust implementation. Actual MCP registration logic not found in provided source.
Duplicate tool name 'list_users' appears 3 times with different descriptions and implementations. LLMs cannot disambiguate.
No output schemas documented. Tools return unstructured strings (e.g., 'count: N' then id:name pairs). LLMs cannot parse or chain results reliably.
Descriptions too brief (avg 45 chars vs baseline 194). Missing WHEN to use, prerequisites, and dependencies. E.g., 'Reflects back whatever text is passed' does not explain when to call reflect vs json_reflect.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | <=2025-11-25 | v2 |
Fetches all users. Returns compact id:name lines, one per user.
Reflects back whatever text is passed.
Search with a required string query and optional integer limit.
Find users by name substring (case-insensitive). Returns id:name lines. Use for lookup or bulk filtering.
Echoes input in uppercase.
Shouts input then counts words.
No error handling guidance. Tools return bare strings on failure (e.g., 'not found' for get_user 404). No recovery hints for LLM.