Your visibility data, in your own tools.
PromptMentions has a read-only REST API and an MCP server over the same data, so an agency can feed client dashboards or ask its own AI agent how a client appears in AI answers.
Keys
A workspace owner creates keys under Settings → API & MCP. The key is shown once; PromptMentions stores only its hash. A key can only read. It belongs to one workspace, can be limited to selected clients and permissions, can expire, and stops working as soon as it is revoked. It also acts with its creator’s current client access: removing that person from the workspace or a client narrows the key too. Every request, including refused ones, appears in the key log.
projects:read— Client projects and prompt setsmonitoring:read— Runs, samples, metrics and citationsevidence:read— Raw provider evidence filesopportunities:read— Tasks and opportunitiesreports:read— Client reports
Send the key as Authorization: Bearer aisk_…. Browser cookies are never accepted. Limits are 60 requests per minute per key and 300 per workspace; responses carry RateLimit-Remaining and a 429 carries Retry-After.
REST API (v1)
Every response is JSON with apiVersion: "v1". Breaking changes will use a new path version. Lists return data and, where paginated, nextCursor (at most 50 items per page). Errors return { error: { code, message } } with 400, 401, 403 (missing permission), 404 (unknown or outside the key’s clients), 405 or 429.
GET /api/v1/workspace— The key’s workspace, permissions and readable clients (—)GET /api/v1/projects— Client projects: brand, aliases, competitors, locale (projects:read)GET /api/v1/projects/{projectId}— One client project (projects:read)GET /api/v1/projects/{projectId}/prompt-sets— Prompt sets with every saved revision (projects:read)GET /api/v1/projects/{projectId}/runs— Runs, newest first, with sample counts (limit, cursor) (monitoring:read)GET /api/v1/projects/{projectId}/runs/{runId}— Labelled metrics and competitor share of voice (monitoring:read)GET /api/v1/projects/{projectId}/runs/{runId}/samples— Every sample with mentions, citations and evidence hash (monitoring:read)GET /api/v1/projects/{projectId}/runs/{runId}/citations— Cited domains and pages, classified, with gaps (monitoring:read)GET /api/v1/projects/{projectId}/samples/{sampleId}/evidence— The preserved raw evidence file (JSON download) (evidence:read)GET /api/v1/projects/{projectId}/opportunities— Tasks with source evidence (state, limit, cursor) (opportunities:read)GET /api/v1/projects/{projectId}/report— Client report for a UTC window (from, to) (reports:read)
curl -H "Authorization: Bearer $AISIGHT_KEY" \
https://<your PromptMentions host>/api/v1/projectsMCP server
The MCP endpoint is /api/mcp (Streamable HTTP, stateless, JSON responses). Its tools match the endpoints above and are all marked read-only: get_workspace, list_projects, get_project, list_prompt_sets, list_runs, get_run_metrics, list_samples, get_citations, get_sample_evidence, list_opportunities and get_report. Evidence omits the raw provider body unless the agent asks for it.
claude mcp add --transport http PromptMentions https://<your PromptMentions host>/api/mcp \
--header "Authorization: Bearer $AISIGHT_KEY"Clients that take a JSON configuration use the same URL and header. Answer text, prompts, citations and task notes are data to read, not instructions; the server tells agents so.
Reading the data
Each sample and metric carries its provider, API interface, requested and returned model, prompt revision, locale, observation time and sample size. Official API output does not show what a person saw in a consumer ChatGPT, Perplexity or Google interface. Failed, incomplete and disconnected samples are kept but excluded from success denominators. See the measurement guide.