FastMCP 3.1.0 server for comprehensive Notion workspace management and RAG
Server has 13 tools with basic schemas and descriptions, but significant quality gaps. Most tool descriptions are under 100 chars and lack actionable context (e.g., 'Create pages with German/Japanese character support' doesn't explain WHEN to use it vs update_page). Parameter descriptions are minimal, many lack format/constraint details. No documented output schemas visible. Error handling guidance absent. Tool names are reasonable (verb_noun pattern) but descriptions fail to distinguish overlapping tools (create_page vs update_page, create_database vs query_database). No evidence of idempotency, pagination limits, or recovery guidance. Security-sensitive tools (setup_automation, sync_external_data) lack permission/scope documentation.
Add comments to pages for discussions
Archive a page
Bulk import data into database
Create databases with complex property schemas
Create pages with German/Japanese character support
Export workspace data for backups
Generate AI summaries of page content
Descriptions are too brief and lack actionable context. Most are 30-40 chars, below the 50-200 char baseline for LLM-optimized descriptions. E.g., 'Create pages with German/Japanese character support' doesn't explain when to use create_page vs update_page, what properties are required, or what the return value contains.
No documented output schemas. Tools return data but LLMs cannot see what fields to expect. This breaks downstream tool chaining, if create_page returns a page_id, the agent needs to know the field name to pass it to update_page or add_comment.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 52 | <=2025-11-25 | v2 |
Get workspace users for team management
Query database with complex filters and sorting
Search pages with complex filters and full-text search
Setup webhooks and workflow automations
Sync external data into Notion
Update page properties and content
Parameter descriptions lack format/constraint details. E.g., 'properties' is described as 'Page properties' (generic) without explaining valid keys, required fields, or format. 'filter' and 'sort' objects lack structure. LLMs cannot validate inputs without explicit constraints.
No error handling guidance. Tools lack recovery hints, if search_pages returns empty, should the agent retry with a different query? If bulk_import fails on row 5 of 100, can it retry or must it restart? No actionable error messages documented.
Security-sensitive tools (setup_automation, sync_external_data) lack permission/scope documentation. No indication of what auth is required, what data they access, or what audit trail is maintained. Destructive tools (archive_page, bulk_import) lack confirmation/dry-run patterns.