MCP Server with integrated text processing agents (query refactoring, sentiment analysis, text optimization, grammar correction) and utility services (web extraction, search, anonymization, PDF conversion, NTP time)
Server has 13 tools with basic schemas and descriptions, but significant quality gaps. Tool naming is inconsistent (extract_website_text vs extract_website_content; anonymize_text vs anonymize_sensitive_text; get_current_time vs get_current_time_info). Descriptions are present but generic (avg ~80 chars, below 194-char baseline). Parameter descriptions exist but lack constraint details (ranges, enums, formats). No documented output schemas. Error handling is absent from visible code. Duplicate/near-duplicate tools suggest poor composition. No tool annotations (readOnlyHint/destructiveHint). Schema completeness varies; some tools lack type info on optional params.
Anonymize sensitive information in text.
Anonymizes potentially sensitive information within the provided text.
Converts various file types to PDF format. Supported file types: .txt, .md, .py, .csv, .html, .docx, .pptx, .xlsx, .jpg, .png, .gif, .bmp
Performs a web and weather search using DuckDuckGo.
Extract text content from a website.
Extracts the main textual content from a given website URL.
Gets the current accurate time from an NTP server.
Duplicate/near-duplicate tools reduce clarity. extract_website_text vs extract_website_content; anonymize_text vs anonymize_sensitive_text; get_current_time vs get_current_time_info; duckduckgo_search vs search_web_information. LLMs will struggle to choose between them.
Tool 'lektor' has a non-descriptive name. Does not start with action verb. 'lektor' is a German word for 'reader/editor' but provides no hint to English-speaking LLMs about its function (grammar correction). Should be 'correct_german_text' or 'fix_german_grammar'.
No output schemas documented. Tools return results but LLMs cannot see expected response structure. E.g., sentiment returns 'sentiment label, confidence score, and optionally detailed emotions' but no JSON schema showing field names/types. Breaks downstream tool chaining.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | <=2025-11-25 | v2 |
Get current time information by calling MCP service.
Corrects grammar, spelling, punctuation, syntax and readability of German text.
Transforms unprofessional customer complaints into polite, professional emails with specified tonality.
Refactors user queries to be clearer, more precise, and more efficient for LLM processing.
Search for information on the web using DuckDuckGo via MCP calls.
Analyzes sentiment of provided text, returning sentiment label, confidence score, and optionally detailed emotions.
No error handling guidance in tool definitions. No recovery hints, retryability classification, or actionable error messages. Code shows try/except blocks but no structured error responses visible.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Risk classification is provided in metadata but not in tool definitions. Agents cannot determine which tools are safe to retry or have side effects.