ai.mcpanalytics/analytics
REMOTE · API.MCPANALYTICS.AI · 2 COMPONENTS · SCANNED SEP 21
The statistical analyst in your AI chat — validated, citable, re-runnable analysis of your data.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security83
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation is enforced on tool calls, but the challenge carries no valid RFC 9728 metadata, so a client cannot discover where to get a token. See how to fix → View diagnostics → Fail
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability71
- AI-judged instruction clarity (good).Pass
- Tool/resource definitions use about 2391 tokens (~85/item across 28 items; 28 tools + 0 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage86
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 59% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 28 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 29 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities20
- Spec-recency check failed: implements MCP spec 2024-11-05; the latest is 2026-07-28. See how to fix → Fail
How do I install the ai.mcpanalytics/analytics MCP server?
ai.mcpanalytics/analytics is a hosted endpoint at https://api.mcpanalytics.ai/mcp/api-key, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · api.mcpanalytics.ai
claude mcp add --transport http ai-mcpanalytics-analytics 'https://api.mcpanalytics.ai/mcp/api-key'
{
"mcpServers": {
"ai-mcpanalytics-analytics": {
"url": "https://api.mcpanalytics.ai/mcp/api-key"
}
}
} {
"servers": {
"ai-mcpanalytics-analytics": {
"type": "http",
"url": "https://api.mcpanalytics.ai/mcp/api-key"
}
}
} [mcp_servers.ai-mcpanalytics-analytics] url = "https://api.mcpanalytics.ai/mcp/api-key"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"ai-mcpanalytics-analytics": {
"type": "remote",
"url": "https://api.mcpanalytics.ai/mcp/api-key",
"enabled": true
}
}
} openclaw mcp add ai-mcpanalytics-analytics --url 'https://api.mcpanalytics.ai/mcp/api-key' --transport streamable-http
mcp_servers:
ai-mcpanalytics-analytics:
url: "https://api.mcpanalytics.ai/mcp/api-key" {
"McpServers": {
"ai-mcpanalytics-analytics": {
"Transport": "http",
"Url": "https://api.mcpanalytics.ai/mcp/api-key"
}
}
} assistant mcp add ai-mcpanalytics-analytics -t streamable-http -u 'https://api.mcpanalytics.ai/mcp/api-key'
{
"mcpServers": {
"ai-mcpanalytics-analytics": {
"type": "http",
"url": "https://api.mcpanalytics.ai/mcp/api-key"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 21 Sept 26 0
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
- 20 Sept 26 0
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
- 19 Sept 26 0
- Tool coverage: 66% → 61% ▼ functional
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
- 18 Sept 26 0
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
- 17 Sept 26 0
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
- 16 Sept 26 0
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
- 15 Sept 26 0
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
- 14 Sept 26 0
- This server's schema is too large to store in full, so we cannot compare its tools day to day functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 21 Sept 2026 · Probed https://api.mcpanalytics.ai/mcp/api-key
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=mcpanalytics.ai | CN=WE1,O=Google Trust Services,C=US | 11 Aug 2026 | 9 Nov 2026 | ECDSA 256 | ECDSA-SHA256 | 58e8199b2b74b8a20ee8c49ed701671a |
| SANs: mcpanalytics.ai, *.mcpanalytics.ai | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of api.mcpanalytics.ai. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| ai. | present | 3799 | 8 | Verified |
| mcpanalytics.ai. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Challenged, unverified
The endpoint asked for a token, but we could not retrieve and validate the RFC 9728 metadata that tells a client how to obtain one.
| Result | Challenged, unverified |
|---|---|
| Enforced | On tool calls |
| HTTP status | 200 |
WWW-Authenticate challenge API-Key realm="https://api.mcpanalytics.ai"
API-Key realm="https://api.mcpanalytics.ai" | Header | Value |
|---|---|
| x-content-type-options | nosniff |
| x-frame-options | SAMEORIGIN |
| referrer-policy | strict-origin-when-cross-origin |
Protected resource metadata
| Retrieved | No |
|---|---|
| Problem | no_resource_metadata |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://api.mcpanalytics.ai/mcp/api-key | Verified | 200 | |
| http (plaintext) | http://api.mcpanalytics.ai/mcp/api-key | HTTPS enforced | 301 | https://api.mcpanalytics.ai/mcp/api-key |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
about ~39
Platform documentation and info: how it works, tiers, usage.
| Name | Type | Req | Description |
|---|---|---|---|
| topic | string | yes | Topic: platform, manual, connectors, or a docs section |
No output schema declared.
No examples provided.
account_link ~51
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.
| Name | Type | Req | Description |
|---|---|---|---|
| section | string | – | Where to send the user |
No output schema declared.
No examples provided.
adjust_estimate ~59
Apply the user's layout wishes to the estimate's page through the layout agent; a new named arrangement, nothing overwritten, no number changes.
| Name | Type | Req | Description |
|---|---|---|---|
| estimate_id | string | yes | – |
| instructions | string | yes | What to change, in the user's words |
No output schema declared.
No examples provided.
agent_advisor ~39
AI help desk: which analysis fits your question, interpreting results, fixing errors. Multi-turn.
| Name | Type | Req | Description |
|---|---|---|---|
| message | string | yes | Your question or request |
No output schema declared.
No examples provided.
answer_now ~70
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.
| Name | Type | Req | Description |
|---|---|---|---|
| dataset_ref | string | yes | – |
| objective | string | yes | – |
No output schema declared.
No examples provided.
ask_library ~43
Ask a question across all your delivered analyses: a synthesized answer with citations back to specific reports.
| Name | Type | Req | Description |
|---|---|---|---|
| question | string | yes | Plain-language question to answer from your report library |
No output schema declared.
No examples provided.
build_status ~65
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.
| Name | Type | Req | Description |
|---|---|---|---|
| pipeline_id | integer | – | pipeline_id from create_analysis |
| track_token | string | – | Token from the tracking URL |
No output schema declared.
No examples provided.
check_tool_fit ~66
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.
| Name | Type | Req | Description |
|---|---|---|---|
| dataset_ref | string | yes | – |
| objective | string | – | – |
| tool_name | string | yes | – |
No output schema declared.
No examples provided.
create_analysis ~282
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.
| Name | Type | Req | Description |
|---|---|---|---|
| column_mapping | object | – | Optional semantic-to-real column map (hint only) |
| dataset_ref | string | – | Single-dataset URI: 'uuid://UUID:KEY' |
| datasets_refs | object | – | Multi-dataset URIs keyed by role |
| fuzzy_request | string | – | Plain-language description of the analysis you want |
| notes | string | – | Optional context for the build, constraints, definitions, or preferences the analyst agents should honor |
| specification | object | – | Full 11-field spec (legacy path, prefer fuzzy_request) |
| tier | string | – | snapshot = instant report (~2-10 min); json = fast computed answer (~5 min, default); brief = one-page report of the answer (~7 min); deck = commissioned re-runnable module (30-45 min) |
No output schema declared.
No examples provided.
datasets_list ~66
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.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results |
| search | string | – | Search by name, description, or tags |
No output schema declared.
No examples provided.
datasets_upload ~154
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.
| Name | Type | Req | Description |
|---|---|---|---|
| data | array | – | Rows as an array of flat objects, creates the dataset in one call |
| expires_in | integer | – | Token expiration in seconds |
| replace_ref | string | – | uuid://ID:KEY of an existing dataset to overwrite in place with `data` (the push/refresh mode) |
No output schema declared.
No examples provided.
decide_path ~113
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.
| Name | Type | Req | Description |
|---|---|---|---|
| dataset_ref | string | yes | – |
| objective | string | yes | – |
No output schema declared.
No examples provided.
discover_tools ~85
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.
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | – | Plain-language search over your library + the Standard Library; omit to list everything |
No output schema declared.
No examples provided.
find_precedent ~76
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.
| Name | Type | Req | Description |
|---|---|---|---|
| dataset_ref | string | – | – |
| k | integer | – | – |
| objective | string | yes | – |
No output schema declared.
No examples provided.
modify_analysis ~156
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.
| Name | Type | Req | Description |
|---|---|---|---|
| changes | string | yes | What to change, in plain language, e.g. 'also break it down by region' or 'use a random forest instead' |
| dataset_ref | string | – | Optional, rebuild against a different dataset ('uuid://UUID:KEY') |
| tier | string | – | Optional, change the depth of the new version |
| tool_name | string | yes | The analysis to modify (from discover_tools or your library) |
No output schema declared.
No examples provided.
my_objects ~58
List and search the objects you own across every question: the curated charts, tables and figures of each delivered package, grouped by objective.
| Name | Type | Req | Description |
|---|---|---|---|
| include_dropped | boolean | – | – |
| limit | integer | – | – |
| query | string | – | – |
No output schema declared.
No examples provided.
order_analytics_package ~84
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.
| Name | Type | Req | Description |
|---|---|---|---|
| bespoke | boolean | – | – |
| estimate_id | string | yes | – |
| layout_objective | string | – | – |
| tool_names | array | – | – |
No output schema declared.
No examples provided.
package_status ~35
Read an analytics package back: status, every run under it, the report link once delivered.
| Name | Type | Req | Description |
|---|---|---|---|
| package_id | string | yes | – |
No output schema declared.
No examples provided.
report_cards ~47
Browse a delivered report's individual cards (charts, tables, insights) inline in chat.
| Name | Type | Req | Description |
|---|---|---|---|
| processing_id | string | yes | The report's processing id, returned by run_analysis or build_status |
No output schema declared.
No examples provided.
reports_list ~57
Your report library: every analysis delivered, with status and links. Pass semantic_query to search report content in plain language.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results |
| semantic_query | string | – | Natural-language search over your reports' content |
No output schema declared.
No examples provided.
reports_view ~39
Get a shareable browser link for a report, viewable without authentication.
| Name | Type | Req | Description |
|---|---|---|---|
| processing_id | string | yes | Processing ID from run_analysis / reports_list |
No output schema declared.
No examples provided.
request_estimate ~121
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.
| Name | Type | Req | Description |
|---|---|---|---|
| dataset_ref | string | yes | 'uuid://UUID:KEY' |
| layout_objective | string | – | Optional: how the page should read |
| objective | string | yes | The user's question in their own words |
| tool_names | array | – | Optional library tools, each checked with check_tool_fit |
No output schema declared.
No examples provided.
rerun_package ~61
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.
| Name | Type | Req | Description |
|---|---|---|---|
| dataset_ref | string | – | – |
| package_id | string | yes | – |
No output schema declared.
No examples provided.
review_estimate ~60
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.
| Name | Type | Req | Description |
|---|---|---|---|
| estimate_id | string | yes | – |
No output schema declared.
No examples provided.
run_analysis ~106
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.
| Name | Type | Req | Description |
|---|---|---|---|
| estimate_id | string | – | Optional. The estimate this run answers (from an estimate page); the run's objects are then written beside the estimate's for comparison. |
| taskList | object | yes | Execution inputs. Call tools_schema first for the analysis-specific fields. |
| tool_name | string | yes | Name of the analysis to run |
No output schema declared.
No examples provided.
schedules ~126
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'.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | What to do |
| cadence | string | – | – |
| column_mapping | object | – | – |
| dataset_ref | string | – | create: re-runnable reference (connector:// or https://) |
| schedule_id | integer | – | cancel: from action='list' |
| tool_name | string | – | create: the analysis to schedule |
No output schema declared.
No examples provided.
tools_schema ~33
Get an analysis's parameter schema. ALWAYS call before run_analysis.
| Name | Type | Req | Description |
|---|---|---|---|
| tool_name | string | yes | Name of the analysis |
No output schema declared.
No examples provided.
warehouse ~76
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).
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | – |
| params | object | – | – |
| query | string | – | – |
| question | string | – | – |
No output schema declared.
No examples provided.
What is the ai.mcpanalytics/analytics MCP server?
ai.mcpanalytics/analytics is an MCP server listed in the public MCP registry as ai.mcpanalytics/analytics. The statistical analyst in your AI chat, validated, citable, re-runnable analysis of your data. This page covers its hosted endpoint (https://api.mcpanalytics.ai/mcp/api-key).
Is the ai.mcpanalytics/analytics MCP server safe to use?
ai.mcpanalytics/analytics scores 84 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the ai.mcpanalytics/analytics MCP server expose?
ai.mcpanalytics/analytics exposes 28 tools: account_link, about, agent_advisor, datasets_upload, datasets_list, and 23 more. Their descriptions and schemas cost roughly 2,267 tokens of context every time the server is loaded.
Does the ai.mcpanalytics/analytics MCP server require authentication?
Yes. ai.mcpanalytics/analytics asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.
Is the ai.mcpanalytics/analytics MCP server still maintained?
ai.mcpanalytics/analytics is still listed as active in the MCP registry. We last reached this channel on 21 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.