MCP server for integrating with Fibery workspace management platform, enabling database queries, entity creation/updates, and schema introspection
Server has 7 tools with mostly complete schemas and descriptions. Naming follows verb_noun convention (list_, describe_, query_, create_, update_). Descriptions are present and substantive (avg ~150 chars), exceeding the 10-char minimum. However, several critical gaps: (1) query_database has complex nested parameter descriptions that could confuse LLMs; (2) create_entity and update_entity lack clear guidance on required vs optional fields; (3) no output schemas documented for any tool; (4) error handling is minimal, tool call wrapper catches exceptions but returns generic 'Error: {str(e)}' with no recovery guidance; (5) no tool annotations (readOnlyHint, destructiveHint) despite clear read/write distinction. Schemas are present and typed, but descriptions for nested objects (q_select, q_where, q_params in query_database) are verbose and example-heavy, which can lead LLMs to reuse examples literally.
Create multiple entities in a Fibery database in a single batch operation, supporting rich text documents and enum fields
Create a new entity in a Fibery database with specified field values, supporting rich text documents and enum fields
Get today's date in ISO 8601 format (YYYY-mm-dd.HH:MM:SS.000Z)
Get list of all fields (in format of 'Title [name]: type') in the selected Fibery database and for all related databases.
Get list of all databases (their names) in user's Fibery workspace (schema)
Query Fibery database with support for filtering, sorting, pagination, and field selection including related entities and rich text documents
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields (e.g., entity IDs after create_entity). Violates pattern:tool and pattern:response-shaper.
Error handling is generic. Tool call wrapper catches all exceptions and returns 'Error: {str(e)}' with no recovery guidance. LLMs cannot determine if error is retryable, user-fixable, or fatal. Violates pattern:recovery-guide and pattern:error-classification.
query_database parameter descriptions contain example values (e.g., 'Product Management/feature', 'Product Management/Name') that LLMs may reuse literally. Violates pattern:constrained-input guidance to use enums/patterns instead of examples.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | <=2025-11-25 | v2 |
Update an existing entity in a Fibery database with new field values, supporting rich text document append/replace and enum fields
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear semantic distinction: 4 read-only tools (current_date, list_databases, describe_database, query_database) vs 3 write tools (create_entity, create_entities_batch, update_entity). Agents cannot distinguish safe from risky operations.
create_entity and update_entity lack clarity on which fields are required vs optional. 'entity' parameter description says 'Dictionary that defines what fields to set' but does not specify if all fields must be provided or if some are mandatory. Violates pattern:tool-description.