Intercom MCP Pack — contacts, conversations, companies via OAuth.
All 5 tools have basic schemas and descriptions, but quality is inconsistent. Naming follows verb_noun convention (ic_search, ic_get, ic_list), which is good. However, descriptions are minimal (10-50 chars), parameter descriptions lack detail about constraints/formats, and output schemas are completely undocumented. No error handling guidance, no pagination limits stated, and no indication of what fields are returned. The server exposes a custom context injection pattern (_context) that is non-standard and undocumented. Overall, this is a functional but minimal implementation that would struggle in production agent scenarios.
Get an Intercom contact by ID.
Get an Intercom conversation by ID with full message thread.
List Intercom companies.
List Intercom conversations.
Search Intercom contacts (users and leads).
Output schemas completely undocumented. No indication of what fields are returned by any tool, forcing LLMs to guess at response structure and preventing proper chaining.
Descriptions are too brief (10-50 chars, baseline 194 chars). 'Search Intercom contacts' and 'List Intercom conversations' lack context about when to use each tool, what data is returned, or prerequisites.
Pagination parameters (per_page, page, starting_after) lack constraints. No min/max specified, no default behavior documented, no indication of result limits or total count in response.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
Non-standard context injection pattern (_context parameter) is undocumented and breaks MCP conventions. This is a custom workaround for OAuth token passing that should use server-side secret injection.
No error handling guidance. icFetch() throws raw errors without recovery hints. LLMs cannot determine if errors are retryable, user-fixable, or fatal.