MCP server for Orion Voice Assistant providing web search, Google Maps integration, email communication, and WhatsApp messaging capabilities
Server has 5 tools with basic schemas and Spanish-language descriptions, but significant quality gaps. All tools have input schemas with types and descriptions, meeting minimum requirements. However, descriptions are generic and lack LLM-optimized guidance on WHEN to use each tool vs. alternatives. No output schemas documented. Error handling is absent, no recovery guidance, no categorization of retryable vs. fatal errors. Tool naming is acceptable (verb_noun pattern) but descriptions don't explain dependencies or prerequisites. Security concerns: send_email and send_whatsapp are WRITE operations with no confirmation/dry-run pattern. No evidence of input validation, rate limiting, or permission gates. Composition is weak, tools operate independently with no chaining IDs returned (e.g., web_search doesn't return structured results for downstream use).
Busca lugares, restaurantes, hoteles y servicios usando Google Maps. Ideal para consultas como: - "restaurantes cerca de Bogotá" - "mejores hoteles en Madrid" - "gasolineras cerca" - "direcciones de mi casa a la oficina" - "cómo llegar al aeropuerto" Args: query: Lo que buscar (restaurantes, hoteles, etc.) location: Ubicación de referencia (opcional) search_type: Tipo de búsqueda - "places", "directions", "geocode" Returns: Lugares encontrados con información detallada
Lee correos electrónicos de la bandeja de entrada. Ideal para: - "lee mis correos" - "muestra mis emails" Args: max_emails: Número máximo de correos a leer (default: 5) Returns: Lista de correos con remitente, asunto y contenido
Envía un correo electrónico a través de SMTP. Ideal para: - "envía un email a [email protected]" - "manda un correo" Args: to: Dirección de correo del destinatario subject: Asunto del correo body: Cuerpo del mensaje Returns: Confirmación de envío
Envía un mensaje de WhatsApp a través de pywhatkit. Ideal para: - "envía un WhatsApp a Juan" - "manda un mensaje por WhatsApp" Args: phone: Número de teléfono con código de país (ej: +34123456789) message: Contenido del mensaje Returns: Confirmación de envío
Busca información en la web usando Tavily AI. Ideal para consultas como: - "busca información sobre inteligencia artificial" - "qué es el machine learning" - "define blockchain" - "dime sobre las últimas noticias de tecnología" Args: query: La consulta de búsqueda max_results: Número máximo de resultados (default: 5) Returns: Resultados de búsqueda con títulos, contenido y URLs
No output schemas documented. LLMs cannot plan downstream tool calls or extract structured data from results. web_search, google_maps_search, read_emails lack documented return types.
Destructive operations (send_email, send_whatsapp) lack confirmation/dry-run pattern. No mechanism to prevent accidental sends. Agents cannot safely retry on ambiguous failures.
Error handling absent. No recovery guidance, no error categorization (retryable vs. fatal), no actionable error messages. Stack traces or raw API errors would confuse LLMs.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | <=2025-11-25 | v2 |
Descriptions lack LLM-optimized guidance. No explicit WHEN to use each tool, no dependency hints, no prerequisites. Descriptions are generic (50-100 chars) vs. production baseline of 194 chars.
No input validation or constraint enforcement visible in source. Parameters like 'max_results' (integer) and 'search_type' (enum) lack runtime validation. LLMs can pass invalid values unchecked.