MCP server for debugging GeoChat Desktop application, providing tools for database queries, problem bank access, GeoGebra canvas control, and UI status monitoring
16 tools with significant quality gaps. Most tools have minimal descriptions (10-30 chars, well below the 50-200 char baseline for A+ tools). Input schemas present but sparse, many parameters lack descriptions entirely. Tool #16 (send_desktop_message) has a dangerously vague schema (type:object with no properties defined). No output schemas documented. Error handling absent. Naming is verb-forward but descriptions fail to explain WHEN to use each tool or what it returns. This server reads as a debug/internal tool exposed without production-grade documentation.
Execute GeoGebra commands
Execute GeoGebra commands in the desktop canvas
Check GeoGebra object existence
Get GeoGebra canvas context
Get GeoGebra object type
Export GeoGebra canvas PNG
Get GeoGebra numeric value
send_desktop_message has dangerously vague schema: input is {type:object} with no properties defined. LLM cannot determine what fields to pass. This violates pattern:constrained-input and creates a footgun for agents.
All 16 tools have descriptions under 30 characters (baseline 50-200 for A+ tools). Descriptions like 'Get GeoChat Desktop runtime diagnostics' and 'Check GeoGebra object existence' do not explain WHEN to use the tool, what it returns, or how it differs from similar tools. LLMs cannot reliably select the right tool.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields. Pattern:tool and pattern:response-shaper require documented return types.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 53 | 2025-06-18+ | v2 |
Get GeoGebra value string
Get GeoChat Desktop runtime diagnostics
Get desktop renderer UI status
Search desktop problem bank problems
List desktop problem bank sets
Reset GeoGebra canvas
Send message to desktop renderer
Set GeoGebra perspective
Set GeoGebra numeric value
Duplicate tools: execute_geogebra_commands (tools.ts) and executeGeoGebraCommands (backend-tools.ts) do the same thing with identical schemas. LLMs waste reasoning cycles deciding between them. Consolidate to one canonical name.
No error handling guidance. Tools lack descriptions of failure modes, recovery steps, or actionable error messages. Pattern:recovery-guide requires errors to tell the LLM what to do next.