Collection of MCP servers for AI Employee agents - reusable with any MCP client. Includes memory, notifications, orchestrator, and platform-specific servers.
Three tools with complete schemas and reasonable descriptions, but significant gaps in parameter documentation and error handling guidance. All tools are read-only (low risk), but descriptions lack actionable context for LLM selection. analyze_document and analyze_spreadsheet have similar names and overlapping functionality (both read files), risking LLM confusion. Parameter descriptions are minimal, 'path' lacks format guidance, 'max_chars' lacks rationale. No output schemas documented. Error handling is absent.
Extract and analyse text from documents (PDF, DOCX, TXT, MD). Returns the full extracted text plus metadata (page count, word count). Use this to read contracts, reports, or any document before asking the LLM to summarise, review, or answer questions about it.
Read and analyze spreadsheet or CSV files (xlsx, xls, csv, ods). Returns a structured summary with row/column counts, data types, basic statistics, and the first rows as a preview. Optionally filter to a specific sheet.
Generate a structured finance / budget report from a CSV or Excel file. Detects amount columns automatically, groups by category, computes totals, finds top-10 largest expenses, and returns a Markdown report. Ideal for expense lists, bank exports, or any tabular cost data.
analyze_document and analyze_spreadsheet have overlapping names and functionality (both read files, return summaries). LLMs will struggle to distinguish when to use each. Rename to clarify: extract_text_from_document vs summarize_spreadsheet_structure.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract specific fields. Document return types: e.g., analyze_document returns {text: string, page_count: int, word_count: int, metadata: object}.
Parameter descriptions are minimal and lack actionable constraints. 'path' does not specify absolute vs relative, allowed extensions, or max file size. 'max_chars' lacks rationale (why 50000 default?). Add format constraints and examples.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | 2026-07-28+ | v2 |
No error handling guidance. What happens if file is not found, unreadable, or exceeds max_chars? Tools must return actionable error messages: 'File not found at /path/to/file. Check path and permissions.' instead of raw exceptions.
generate_finance_report auto-detects amount_column and category_column but does not document fallback behavior if detection fails. Describe what happens when no numeric or categorical columns are found.