MCP server exposing Actian documentation, GA4 content gaps, and Jenkins build status to Claude
Server has well-structured tool definitions with clear names, descriptions, and input schemas. All 5 tools follow verb_noun naming (search_docs, get_topic, list_topics, get_content_gaps, get_build_status). Descriptions are substantive (100-200 chars, within baseline 194 avg). Input schemas are present with type definitions and enums where appropriate. However, output schemas are not documented, LLMs cannot predict response structure for downstream chaining. Error handling is absent; no recovery guidance or actionable error messages. Parameters lack validation constraints (e.g., limit bounds, version format). Resources feature is implemented but not integrated with tool outputs (search_docs returns topic_id but resources use different URI scheme).
Returns the current status of the documentation CI/CD build pipeline in Jenkins, including the last build result, timestamp, and duration.
Returns search queries from the analytics data that returned zero or low results — i.e. topics that users searched for but documentation does not cover. Use this to identify missing documentation.
Retrieve the full Markdown content of a specific documentation topic by its ID. Use search_docs first to find the topic_id, then call this to read the full content.
List all available documentation topics, optionally filtered by product or topic type.
Semantic search across Actian documentation. Returns the top matching sections with product, version, and topic-type metadata. Use this to answer questions about Actian products.
Output schemas not documented. LLMs cannot predict response structure (fields, types, pagination) for search_docs, get_topic, list_topics, get_content_gaps, get_build_status. This breaks downstream tool chaining and forces agents to guess field names.
No error handling or recovery guidance. Tool implementations (src/tools/*.ts not shown) likely throw raw errors. LLMs receive no actionable guidance on retryability, user-fixable vs fatal errors, or next steps.
Numeric parameter bounds not specified. 'limit' in search_docs and get_content_gaps lack min/max constraints (stated as 1-10 and 1-20 in descriptions but not enforced in schema). 'days' and 'min_searches' unbounded. LLMs may pass invalid values.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 69 | 2026-07-28+ | v2 |
Resource URI scheme mismatch. search_docs returns 'topic_id' but resources expose 'actian-docs://topic/{id}' URIs. No documented mapping between tool output IDs and resource URIs. Agents cannot reliably link search results to browseable resources.
Pagination not implemented. list_topics and get_content_gaps return unbounded lists. No offset/limit/cursor parameters or total_count in response. Large result sets will exhaust context window.