A desktop assistant agent that uses tools to help with file operations, note creation, memory management, and application launching. Integrates with MCP servers for extended functionality.
This server has significant structural issues. Tool definitions exist with schemas and descriptions, but quality is inconsistent. Critical problems: (1) Duplicate tool names (echo, read_file, open_app appear twice) create ambiguity and will confuse LLMs about which variant to call. (2) Descriptions are minimal (10-50 chars) and lack actionable context, e.g., 'list files in a directory' doesn't explain when to use it vs get_project_tree. (3) Parameter descriptions are sparse; many lack detail about format, constraints, or valid values. (4) No output schemas documented, LLMs cannot predict what fields to expect. (5) Error handling is absent from tool definitions. (6) Mock/test tools (echo, get_status) are mixed with production tools, polluting the namespace. (7) No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels. Average tool description length ~35 chars (baseline 194 chars); baseline requires 10-1024 chars with 50-200 optimal for LLM selection.
create a markdown note
Echo a message back to the caller.
Echo a message back to the caller.
find files by filename
show a directory tree for a project
Return a deterministic test status.
list files in a directory
List resources via MCP
Duplicate tool names (echo, read_file, open_app) appear in multiple files. LLMs cannot disambiguate which variant to invoke. This violates single-responsibility and creates namespace collision.
Tool descriptions are too short (avg 35 chars vs baseline 194 chars). Examples: 'list files in a directory' (28 chars), 'read a local file' (17 chars). Descriptions lack WHEN to use, prerequisites, or context for LLM selection.
No output schemas documented. LLMs cannot predict return structure, forcing them to guess what fields exist. This breaks tool chaining and increases hallucination risk.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 41 | 2026-07-28+ | v2 |
Read a ticket via MCP
Search documentation via MCP
A deliberately colliding MCP tool name.
open a desktop application
read a local file
A deliberately colliding MCP tool name.
read several local files at once
save durable user memory
search text content across files
Test/mock tools (echo, get_status from test fixtures) are mixed with production tools. This pollutes the namespace and confuses agents about which tools are real vs test harness.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels. create_note and save_memory_fact are marked WRITE but lack destructiveHint annotation. Agents cannot reason about side effects.