Skip to content
Back to search
📊 Intel view 📋 Audit JSON 🔄 Changelog
59
A2A v1.0.5

MCP Analytics

mcpanalytics.ai · MCP Analytics

The statistical analyst in your AI chat: bring a dataset and a question, get back a citable, re-runnable report with its method named.

Build a free agent shortlist. Save this listing to revisit it from your account. Sign in to save
🛡
Own this agent?
Verify the domain mcpanalytics.ai via a single DNS TXT record to add the verified by owner badge, embed an Agenstry badge on your README, and earn back the missing conformance points listed below.
Verify ownership

Compare public evidence

🔔 Watch this agent. Choose one alert: availability and recovery, card drift, price, payment rail, settlement wallet, inflow or verification changes. Add more alert types from your account. Free and unmetered on agents you've verified owning; 3 watches on agents you don't own, 25 on Pro. Sign in to watch
Trust score
59/100
grade D · 9 criteria
Uptime
100.0%
53 direct probes · 30d
~653 ms response
Observed inflow · 30d
—
no payment wallet declared
Invocations · 7d
0
no calls observed
Card drift · 7d
stable
6 snapshots tracked
Owner
unverified
claim this listing →

Dispute or improve this rating

D
Conformance score: 59/100
D-grade: significant issues, auth-gated, partially broken, or stale.
click to expand breakdown click to collapse breakdown
pass Valid AgentCard 10/10
Parseable AgentCard returned by the well-known endpoint (Agenstry readiness signal; not an official TCK certification).
partial Live JSON-RPC 15/25
Endpoint requires auth, real agent but not anonymously callable.
How to earn +10 points
Respond live on JSON-RPC
Implement SendMessage for v1.0 (or message/send for v0.x), negotiate A2A-Version, and return a schema-valid JSON-RPC response. Our probe sends a no-op heartbeat; see the methodology page for the exact payload. If your endpoint already answers, nothing is broken at your end: a stored result older than 30 days is scored as dated, and the points come back on the next probe.
Docs
fail Protocol version 0/10
No protocolVersion in card.
How to earn +10 points
Declare protocolVersion
Add `"protocolVersion": "1.0"` (Major.Minor, no patch number — §3.6) to every entry in `supportedInterfaces[]`. A2A v1.0 removed the AgentCard root field.
Docs
info JWS signature 0/10
Card is unsigned (most published agents are).
pass Uptime track record 15/15
53/53 probes succeeded (100% uptime).
pass Skill declaration 10/10
Declares 28 skills with structured metadata. 28 skills without tags — optional in 0.x, REQUIRED once you move the card to v1.0.
partial Verified Identity 5/10
Provider declared: MCP Analytics (https://mcpanalytics.ai). Add a registry identifier (LEI, Companies House number, KvK, ABN, …) to provider.legalEntity for full verified-business credit.
How to earn +5 points
Verify your domain ownership
Claim your listing and add the DNS TXT record we generate. Alternatively, sign your card with a JWS key that resolves to a verified-business LEI / KvK / Companies House registration.
Docs
pass Freshness + modern flags 4/5
seen in upstream source within 0d
info Security declaration 0/5
Neither securitySchemes nor securityRequirements declared — how to authenticate is unstated.

Activity (audit trail)

last 24h · 0 invocations Public aggregate · no PII recorded

Nothing observed in the last 7 days — no invocations, no lookups, no listing impressions. Use the try-it console above to invoke this agent; calls are logged here automatically.

Card history

6 snapshots drifted 5× Every change to agent-card.json
Agent card snapshots
Captured Hash Snapshot
2026-10-15 02:47:26 current bda9b92d93b9… view →
2026-10-10 15:57:03 30e1ac43dfd2… view →
2026-10-08 16:34:49 8a61f3fe1eca… view →
2026-10-07 18:18:39 bda9b92d93b9… view →
2026-10-05 03:28:18 8a61f3fe1eca… view →
2026-10-01 08:52:01 bda9b92d93b9… view →
Uptime
100.0%
53 direct probes · 30d
Response
70ms
last direct probe
Skills
28
declared
Streaming
—
SSE-capable

Endpoints

Agent cardhttps://mcpanalytics.ai/.well-known/agent.json
Providerhttps://mcpanalytics.ai
Docshttps://mcpanalytics.ai/docs/quickstart
About this provider off-card enrichment
Domain age
Registered 2025-08-22
via HOSTINGER operations, UAB
SSL certificate
Google Trust Services
expires 2026-11-10
Discovered via
smithery recrawl_hot recrawl_warm

Skills · 28 declared by this agent

These skills are declared by the agent. A taxonomy link appears only when we can classify a skill confidently.

account link

Direct link to the right account page for anything not doable in chat: billing, browser upload, report management. Hand the user the link and guide them.

No taxonomy category yet
about

Platform documentation and info: how it works, tiers, usage.

No taxonomy category yet
agent advisor

AI help desk: which analysis fits your question, interpreting results, fixing errors. Multi-turn.

No taxonomy category yet
datasets upload

Get your data in. Pass `data` as an array of row objects to create the dataset immediately and get a dataset_ref ready for create_analysis; omit it to get an up…

No taxonomy category yet
datasets list

List and search your uploaded datasets, with fuzzy matching on name, description, and tags. Returns each dataset's uuid:// reference for use in create_analysis …

No taxonomy category yet
discover tools

Browse the analyses you can run: the ones you commissioned plus the platform Standard Library (prebuilt tools; each result tagged source:'own' or 'standard_libr…

No taxonomy category yet
tools schema

Get an analysis's parameter schema. ALWAYS call before run_analysis.

No taxonomy category yet
run analysis

Run an analysis on your data. Returns a shareable interactive report URL with statistics you can cite, re-run and share, and the method named.

No taxonomy category yet
create analysis

Commission a NEW analysis built for your question. tier is REQUIRED. The user picks. Easiest: fuzzy_request (plain language) + dataset_ref + tier. Snapshot = in…

No taxonomy category yet
modify analysis

Modify an EXISTING analysis into a new version: reword the question, swap the method, or add a variable. Pass tool_name + changes (plain language). Rebuilds on …

No taxonomy category yet
request estimate

START HERE for a new question: free, ~30 s. A rough answer over a sample plus the layout of the complete package, every place named with the question it will an…

No taxonomy category yet
review estimate

The estimate as you review it WITH the user: the question as understood, the estimated answer (sample, marked), every place and its question, the page link, a r…

No taxonomy category yet
adjust estimate

Apply the user's layout wishes to the estimate's page through the layout agent; a new named arrangement, nothing overwritten, no number changes.

No taxonomy category yet
answer now

A read of the data (average, count, total, highest/lowest by group, a value in a month) answered in this response, in seconds. Not a read -> immediate=false wit…

No taxonomy category yet
decide path

Step 0 for a new question: which path answers it on this data. One record: route (reuse | answer | package | ask | none), a score with its reason for each of an…

No taxonomy category yet
find precedent

Before estimating: how did we answer this objective before, on this data or any data? Prior packages and library runs with their tools, mappings, bespoke module…

No taxonomy category yet
check tool fit

Before naming a library tool: does it fit THIS dataset for THIS question? Column mapping, missing required inputs, method-fit verdict, the places it delivers. R…

No taxonomy category yet
order analytics package

Order what the estimate promised after reviewing it: library tools that fit, a bespoke build, or both, computed on the whole dataset; one reviewed page delivere…

No taxonomy category yet
package status

Read an analytics package back: status, every run under it, the report link once delivered.

No taxonomy category yet
rerun package

Run a delivered package again, on its own data or new data: the same tools, the same curated objects, the same layout, as a new package with its own link.

No taxonomy category yet
my objects

List and search the objects you own across every question: the curated charts, tables and figures of each delivered package, grouped by objective.

No taxonomy category yet
build status

Check a commissioned build in-chat: stage progress, queue position, rejection reason if the data didn't match the objective, honest ETA, report link when delive…

canonical Human Approval Gates match 88%
ask library

Ask a question across all your delivered analyses: a synthesized answer with citations back to specific reports.

canonical Literature Review and Synthesis match 87%
reports list

Your report library: every analysis delivered, with status and links. Pass semantic_query to search report content in plain language.

No taxonomy category yet
warehouse

Query your org's data warehouse free: browse the catalog (tables with column roles + computed metrics), semantically find data, plain-language ask, or named tem…

canonical Data Warehouse Operations match 87%
schedules

Standing re-runs of analyses you own: action='create' (weekly/monthly against a re-runnable data reference, connector:// or an https:// link; report emailed aft…

No taxonomy category yet
reports view

Get a shareable browser link for a report, viewable without authentication.

canonical Webpage Screenshot Capture match 87%
report cards

Browse a delivered report's individual cards (charts, tables, insights) inline in chat.

No taxonomy category yet

Health · last 30 probes

When HTTP Live JSON-RPC Latency
2026-10-25 17:17:19 200 ✗ 70ms
2026-10-25 02:39:12 200 ✗ 66ms
2026-10-24 14:00:53 200 ✗ 247ms
2026-10-24 01:25:14 200 ✗ 65ms
2026-10-23 12:28:22 200 ✗ 68ms
2026-10-22 23:13:34 200 ✗ 55ms
2026-10-22 10:07:12 200 ✗ 83ms
2026-10-21 20:57:40 200 ✗ 70ms
2026-10-21 07:52:03 200 ✗ 92ms
2026-10-20 18:55:41 200 ✗ 62ms

Cheaper or better alternatives per-skill

↑ 3 higher quality

For each canonical skill this agent serves, the cheapest priced competitor and the highest-quality competitor. Only shown when at least one beats the current agent. Skills where this agent is already best on both axes are hidden.

Similar agents embedding-nearest

Blockquote
Blockquote scores a public URL 0-100 for how likely ChatGPT, Perplexity and Google AI Overviews are to cite it, and returns the fixes. The s
Arne Kellmann · q 90%
GAIP
GAIP, the Governed Agentic Intelligence Platform, keeps an independent, dated record of what AI agents, MCP servers and online shops publish
GAIP · q 80%
GAIP
GAIP, the Governed Agentic Intelligence Platform, keeps an independent, dated record of what AI agents, MCP servers and online shops publish
GAIP · q 80%
GAIP
GAIP, the Governed Agentic Intelligence Platform, keeps an independent, dated record of what AI agents, MCP servers and online shops publish
GAIP · q 80%
INITE live
INITE over A2A and MCP. Over A2A: the AI visibility audit - how ChatGPT, Claude, Gemini and Perplexity read a website, a score out of 100 an
inite LLC · q 100%
BotGathering live
Tested step-by-step recipes (playbooks) for AI agents, rated by bots that tried them. Read without a key; register free to report results. S
BotGathering · q 100%

Embed your Agenstry badge

Paste any of these into your README, agent card, or marketing page. Each badge auto-updates and links back to this page.

Agenstry grade Uptime
Markdown / HTML snippets
[![Agenstry grade](https://agenstry.com/badge/mcpanalytics.ai.svg)](https://agenstry.com/agents/mcpanalytics.ai)
[![Verified Business](https://agenstry.com/badge/mcpanalytics.ai/identity.svg)](https://agenstry.com/agents/mcpanalytics.ai)
[![Uptime](https://agenstry.com/badge/mcpanalytics.ai/uptime.svg)](https://agenstry.com/agents/mcpanalytics.ai)
[![A2A version](https://agenstry.com/badge/mcpanalytics.ai/protocol.svg)](https://agenstry.com/agents/mcpanalytics.ai)

Audit-grade evidence bundle

JSON snapshot for vendor-review files. Add ?sign=true for a JWS-signed envelope verifiable against our JWKS. See the methodology.

audit.json audit.json (JWS-signed) verification history
Raw agent card JSON
{
  "name": "MCP Analytics",
  "description": "The statistical analyst in your AI chat: bring a dataset and a question, get back a citable, re-runnable report with its method named.",
  "url": "https://api.mcpanalytics.ai/auth0",
  "version": "1.0.5",
  "provider": {
    "organization": "MCP Analytics",
    "url": "https://mcpanalytics.ai"
  },
  "documentationUrl": "https://mcpanalytics.ai/docs/quickstart",
  "authentication": {
    "schemes": [
      "oauth2",
      "api-key"
    ],
    "oauthMetadata": "https://api.mcpanalytics.ai/.well-known/oauth-authorization-server",
    "note": "Authentication required for tool execution. Tool discovery is public via /mcp/discover."
  },
  "defaultInputModes": [
    "application/json"
  ],
  "defaultOutputModes": [
    "application/json"
  ],
  "skills": [
    {
      "id": "account_link",
      "name": "account link",
      "description": "Direct link to the right account page for anything not doable in chat: billing, browser upload, report management. Hand the user the link and guide them."
    },
    {
      "id": "about",
      "name": "about",
      "description": "Platform documentation and info: how it works, tiers, usage."
    },
    {
      "id": "agent_advisor",
      "name": "agent advisor",
      "description": "AI help desk: which analysis fits your question, interpreting results, fixing errors. Multi-turn."
    },
    {
      "id": "datasets_upload",
      "name": "datasets upload",
      "description": "Get your data in. Pass `data` as an array of row objects to create the dataset immediately and get a dataset_ref ready for create_analysis; omit it to get an upload link for a file only the user can reach. Add replace_ref (uuid://ID:KEY) with data to REFRESH an existing dataset in place; schedules and tools holding that reference read the new data on their next run."
    },
    {
      "id": "datasets_list",
      "name": "datasets list",
      "description": "List and search your uploaded datasets, with fuzzy matching on name, description, and tags. Returns each dataset's uuid:// reference for use in create_analysis and run_analysis."
    },
    {
      "id": "discover_tools",
      "name": "discover tools",
      "description": "Browse the analyses you can run: the ones you commissioned plus the platform Standard Library (prebuilt tools; each result tagged source:'own' or 'standard_library'). Plain-language match; no query lists everything, your own first. Nothing fits? Commission it with create_analysis."
    },
    {
      "id": "tools_schema",
      "name": "tools schema",
      "description": "Get an analysis's parameter schema. ALWAYS call before run_analysis."
    },
    {
      "id": "run_analysis",
      "name": "run analysis",
      "description": "Run an analysis on your data. Returns a shareable interactive report URL with statistics you can cite, re-run and share, and the method named."
    },
    {
      "id": "create_analysis",
      "name": "create analysis",
      "description": "Commission a NEW analysis built for your question. tier is REQUIRED. The user picks. Easiest: fuzzy_request (plain language) + dataset_ref + tier. Snapshot = instant automated report (~2-10 min). JSON = a fast computed answer, numbers + method, re-runnable tool you own (~5 min). Brief = the computed answer on a one-page report: chart, numbers, method (~7 min). Deck = commissioned deep analysis, a durable re-runnable module you own (30-45 min). Failed builds are never billed."
    },
    {
      "id": "modify_analysis",
      "name": "modify analysis",
      "description": "Modify an EXISTING analysis into a new version: reword the question, swap the method, or add a variable. Pass tool_name + changes (plain language). Rebuilds on the analysis's own dataset by default; the original stays put. Returns pipeline tracking. Follow with build_status."
    },
    {
      "id": "request_estimate",
      "name": "request estimate",
      "description": "START HERE for a new question: free, ~30 s. A rough answer over a sample plus the layout of the complete package, every place named with the question it will answer, and a page link. Then review_estimate with the user."
    },
    {
      "id": "review_estimate",
      "name": "review estimate",
      "description": "The estimate as you review it WITH the user: the question as understood, the estimated answer (sample, marked), every place and its question, the page link, a review checklist. Before order_analytics_package."
    },
    {
      "id": "adjust_estimate",
      "name": "adjust estimate",
      "description": "Apply the user's layout wishes to the estimate's page through the layout agent; a new named arrangement, nothing overwritten, no number changes."
    },
    {
      "id": "answer_now",
      "name": "answer now",
      "description": "A read of the data (average, count, total, highest/lowest by group, a value in a month) answered in this response, in seconds. Not a read -> immediate=false with the reason; continue with decide_path."
    },
    {
      "id": "decide_path",
      "name": "decide path",
      "description": "Step 0 for a new question: which path answers it on this data. One record: route (reuse | answer | package | ask | none), a score with its reason for each of answer, package, ask and none, the compiled read plan when it is a read, the method family and the library's tool fit when it is a package, and the one question to ask when something is missing. Deterministic, read-only."
    },
    {
      "id": "find_precedent",
      "name": "find precedent",
      "description": "Before estimating: how did we answer this objective before, on this data or any data? Prior packages and library runs with their tools, mappings, bespoke module names, method and verdicts. Platform-wide, read-only."
    },
    {
      "id": "check_tool_fit",
      "name": "check tool fit",
      "description": "Before naming a library tool: does it fit THIS dataset for THIS question? Column mapping, missing required inputs, method-fit verdict, the places it delivers. Read-only."
    },
    {
      "id": "order_analytics_package",
      "name": "order analytics package",
      "description": "Order what the estimate promised after reviewing it: library tools that fit, a bespoke build, or both, computed on the whole dataset; one reviewed page delivered. Credits per tool run; failed runs never billed."
    },
    {
      "id": "package_status",
      "name": "package status",
      "description": "Read an analytics package back: status, every run under it, the report link once delivered."
    },
    {
      "id": "rerun_package",
      "name": "rerun package",
      "description": "Run a delivered package again, on its own data or new data: the same tools, the same curated objects, the same layout, as a new package with its own link."
    },
    {
      "id": "my_objects",
      "name": "my objects",
      "description": "List and search the objects you own across every question: the curated charts, tables and figures of each delivered package, grouped by objective."
    },
    {
      "id": "build_status",
      "name": "build status",
      "description": "Check a commissioned build in-chat: stage progress, queue position, rejection reason if the data didn't match the objective, honest ETA, report link when delivered."
    },
    {
      "id": "ask_library",
      "name": "ask library",
      "description": "Ask a question across all your delivered analyses: a synthesized answer with citations back to specific reports."
    },
    {
      "id": "reports_list",
      "name": "reports list",
      "description": "Your report library: every analysis delivered, with status and links. Pass semantic_query to search report content in plain language."
    },
    {
      "id": "warehouse",
      "name": "warehouse",
      "description": "Query your org's data warehouse free: browse the catalog (tables with column roles + computed metrics), semantically find data, plain-language ask, or named templates. Requires warehouse enablement (business plans)."
    },
    {
      "id": "schedules",
      "name": "schedules",
      "description": "Standing re-runs of analyses you own: action='create' (weekly/monthly against a re-runnable data reference, connector:// or an https:// link; report emailed after each run), 'list', or 'cancel'."
    },
    {
      "id": "reports_view",
      "name": "reports view",
      "description": "Get a shareable browser link for a report, viewable without authentication."
    },
    {
      "id": "report_cards",
      "name": "report cards",
      "description": "Browse a delivered report's individual cards (charts, tables, insights) inline in chat."
    }
  ],
  "_generated": {
    "by": "scripts/generate-agent-manifests.py",
    "from": [
      "https://api.mcpanalytics.ai/.well-known/mcp/server-card.json",
      "https://api.mcpanalytics.ai/.well-known/mcp.json"
    ],
    "note": "Derived from the canonical MCP documents; do not hand-edit."
  }
}