A desktop assistant application with MCP server integration, tool execution, and approval workflows. Provides core file system operations, command execution, and MCP tool management.
DesktopAssistant exposes 16 tools with basic descriptions but critical gaps in schema documentation and parameter clarity. Tool names follow verb_noun convention (execute_command, read_file, write_to_file), which is good. However, input schemas are not visible in the provided source code, only parameter names and descriptions are shown. No output schemas are documented. Descriptions are present but generic (e.g., 'Executes a command in the terminal and returns the execution result'). Parameter descriptions lack format constraints, ranges, and validation rules. Error handling is minimal, no recovery guidance or categorization. Security concerns: execute_command and write_to_file are destructive but lack confirmation patterns or dry-run support. No tool annotations (readOnlyHint, destructiveHint, idempotentHint) are visible. Composition is reasonable (each tool has one responsibility), but chaining support is unclear, output fields are not documented, so downstream tool compatibility is unknown.
Adds an MCP server to the configuration
Signals end of agent work and returns message to host
Creates a sub-agent and waits for it to complete the task
Executes a command in the terminal and returns the execution result including stdout, stderr, and exit code.
Fetches the README from an MCP server repository
Returns the path to the MCP configuration file
Returns the path for cloning MCP servers
No input schemas visible in source code. All 16 tools lack documented JSON Schema with type definitions and constraints.
No output schemas documented. LLMs cannot plan downstream tool calls or extract required fields. Baseline: 100% of A+ tools have documented return types.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 31 | 2026-07-28+ | v2 |
Returns a list of files and subdirectories in the specified directory.
Lists all available assistant profiles for sub-agent creation
Lists all sub-agent conversations created in this conversation
Checks whether a file or directory exists at the specified path.
Reads the contents of a text file and returns its text.
Search for MCP servers in the catalog
Sends a follow-up message to an existing sub-agent and waits for its response
Test function: waits 10 seconds and returns a message. Used for testing cancellation and timeouts.
Writes content to a file. Creates directories if they do not exist.
Destructive tools (execute_command, write_to_file) lack confirmation or dry-run patterns. No tool annotations (destructiveHint) visible. Agents can cause irreversible damage without safeguards.
Parameter descriptions lack format constraints, ranges, and validation rules. E.g., 'command' parameter has no guidance on shell syntax, escaping, or injection risks. Baseline: descriptions should state format, range, and allowed values.
No error handling guidance. Tools do not categorize errors as retryable, user-fixable, or fatal. No recovery suggestions (e.g., 'file not found, try list_directory first'). Baseline: error responses must tell LLM what to do next.