Multi-service MCP server suite for autonomous AI employee task management, including email, LinkedIn, and Odoo accounting integrations
Critical gaps across all dimensions. Tool descriptions are present but lack LLM-optimization guidance (e.g., 'Physically sends an email' doesn't explain WHEN to use it vs alternatives). Input schemas are visible but lack parameter descriptions for most fields, only high-level field names provided without constraints, formats, or ranges. No output schemas documented. Error handling is absent; tools don't guide recovery (e.g., what if Gmail token is invalid?). Security concerns: credentials appear to be environment-injected (good), but no audit trail or permission gates documented. Composition is reasonable (5 distinct tools), but missing idempotency guarantees and batch variants.
Create a draft customer invoice in Odoo.
Retrieve accounting summary reports from Odoo (sales, outstanding invoices, profit).
List customer/partner records from Odoo with optional filtering.
Physically publishes a text post to LinkedIn using the local .env credentials. Only call explicitly approved payloads.
Physically sends an email to the specified address using the authenticated Gmail API. Used by the Orchestrator internally. Only fires successfully if token.json is authenticated.
Parameter descriptions missing or trivial. Input schemas show field names and types but lack actionable guidance. E.g., 'to_email' has no format hint (is 'john' valid or must it be '[email protected]'?). 'report_type' accepts 'sales, outstanding, or profit' but this is buried in the description, not an enum constraint.
No output schemas documented. LLMs cannot plan downstream calls or extract required fields. E.g., does create_invoice return invoice_id, invoice_number, or both? Does list_partners return partner_id, email, and phone, or only a subset?
Descriptions lack LLM-optimization. 'Physically sends an email' is passive and doesn't explain prerequisites (token.json must exist), failure modes (what if auth fails?), or when to use this vs alternatives. Baseline: 194 chars avg; these are 80-120 chars and lack context.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | <=2025-11-25 | v2 |
No error handling guidance. Tools don't tell LLMs what to do on failure. E.g., send_email fails if token.json is missing, should the agent retry, ask the user, or call a setup tool? No recovery path documented.
Destructive operations (send_email, post_to_linkedin, create_invoice) lack confirmation or dry-run support. Agents can accidentally send emails or publish posts without safeguards. No idempotency guarantees documented.