Stdio-to-HTTP bridge for the hosted Citlyze MCP server. Provides AI visibility metrics, prompt tracking, measurement windows, citations, recommendations, competitor visibility, and crawler event data.
All 9 tools have explicit names, descriptions, and input schemas visible in the TOOL_CATALOG. Naming follows verb_noun convention (get_, list_) and is clear. Descriptions are concise (40 - 90 chars) and state what each tool does. However, parameter descriptions are entirely absent, the schema declares properties but provides no guidance on what each parameter controls, valid ranges, or dependencies. Output schemas are not documented. No error handling guidance is provided. Tool annotations (readOnlyHint, openWorldHint) are present but minimal. This is a read-only analytics API with low mutation risk, but the lack of parameter documentation and output schema specification significantly limits LLM reasoning quality.
Per-engine and per-location visibility metrics for a single tracked prompt.
Headline AI visibility metrics per brand and engine for a measurement window.
Workspace name, target brand, active prompt/location/engine counts, competitors, and the latest completed measurement window.
Domains cited in AI answers, grouped with citation counts and sample URLs.
Compare AI visibility across the target brand and tracked competitors.
Daily AI crawler visits (GPTBot, ClaudeBot, PerplexityBot, Bingbot, and more) on tracked sites.
No parameter descriptions. All 9 tools declare properties (active, search, limit, status, domain, crawler_id, etc.) but provide zero guidance on what each parameter controls, valid ranges, or constraints. LLMs cannot infer parameter semantics from names alone.
Output schemas not documented. No specification of what fields each tool returns, their types, or structure. LLMs cannot plan downstream tool calls or extract required data without knowing response shape.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
List measurement windows (tracking snapshots), newest first.
List tracked prompts with text, intent, tier, and active state.
AI visibility optimization recommendations, highest priority first.
No pagination guidance. list_* tools accept 'limit' but no documentation of default, max, or whether results include total_count or next_cursor. Large result sets risk context window exhaustion.
No error handling guidance. No documentation of what errors can occur, whether they are retryable, or what the LLM should do next. Bare error codes provide no recovery path.
Parameter constraints not specified. 'limit' and 'status' parameters lack enum values, min/max bounds, or format constraints. LLMs may pass invalid values (e.g. limit=999999 or status='unknown').