Multiple MCP servers for Dex personal knowledge management system, including analytics, Pipedrive CRM integration, and integration setup utilities for Google Workspace, Notion, and Slack
The Dex MCP server has significant gaps in definition quality. While 11 tools are present with basic descriptions, most lack sufficient depth for LLM reasoning. Parameter descriptions are minimal or missing entirely. Input schemas are present but incomplete, many lack type information or validation constraints. Error handling is not evident from the code provided. The analytics tools (4) are redundant and poorly distinguished. Pipedrive tools (7) have better naming but still lack actionable parameter descriptions. No tool annotations (readOnlyHint/destructiveHint) are present despite having WRITE and IRREVERSIBLE operations. Average tool score across all 11 is 38/100.
Check if analytics is enabled and configured correctly.
Identify user in Pendo (called once during onboarding or session start).
Add an activity (call, email, meeting) to a Pipedrive deal.
Create a new deal in Pipedrive (requires writes.allow_create enabled).
Create a new organization in Pipedrive (requires writes.allow_create enabled).
Get a specific deal from Pipedrive by ID with full details.
Get deals from Pipedrive CRM with filtering and pagination.
Analytics tools (track_event, identify_user, check_analytics_status, test_connection) are poorly distinguished and redundant. LLMs will struggle to select the correct one without clearer parameter and return value descriptions.
Destructive operations (pipedrive_update_deal_stage, pipedrive_add_activity, pipedrive_create_deal, pipedrive_create_org) lack tool annotations. No readOnlyHint/destructiveHint/idempotentHint present. LLMs cannot determine which tools are safe to retry or require confirmation.
Parameter descriptions are sparse. 'properties' property in identify_user has only 'User metadata (role, company_size, pillars_count, etc.)' without explaining what each field means. 'term' in pipedrive_search_deals has no description of what fields it searches (title, org name, person name?).
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 56 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 38 | - | v1 |
Search deals in Pipedrive by title, organization, or person.
Move a deal to a different stage in Pipedrive pipeline.
Test Pendo connection with a test event.
Track a Dex usage event. Only fires if user has opted into analytics.
No output schemas documented. Callers cannot know what fields are returned (e.g., does pipedrive_get_deals return deal_id, title, value, stage_id, etc.?). LLMs cannot plan downstream chaining.
Pagination limit parameter in pipedrive_get_deals caps at 500 but no guidance on default. 'limit' parameter has no description of default value; 'start' offset documentation does not explain total count or next_cursor availability.
dry_run parameters default to true but this is not stated in the parameter description. LLMs may assume writes are happening when they are actually preview-only.
No error handling guidance. No indication of what happens on failure (permission denied, resource not found, API error). LLMs have no recovery path.
The 'metadata' parameter in identify_user is of type 'object' with no schema. LLMs cannot know what sub-fields are allowed or required. Description 'User metadata (role, company_size, pillars_count, etc.)' is an example list, not a schema.
pipedrive_search_deals 'limit' parameter lacks description of default value. Maximum is 500, default unknown.