AI Agent Analytics
REMOTE · ANALYTICS.DAVISVILLELABS.COM · SCANNED SEP 28
Seller-side analytics for AI-agent discovery, settled revenue, delivery, and repeat use.
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 Security63
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS enforcement could not be verified: the plaintext port answered with HTTP 405, which proves neither a plaintext path nor enforcement. View diagnostics → Unverified
- 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 Usability72
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 2020 tokens (~168/item across 12 items; 12 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management24
- Stability check failed: schema churn in the 9 days we've observed: 0 tool removals, 1 breaking changes, 0 auth/transport breaks, 1 additions. See how to fix → Fail
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 12 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 12 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
How do I install the AI Agent Analytics MCP server?
AI Agent Analytics is a hosted endpoint at https://analytics.davisvillelabs.com/mcp, 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 · analytics.davisvillelabs.com
claude mcp add --transport http davisvillelabs-ai-agent-analytics 'https://analytics.davisvillelabs.com/mcp'
{
"mcpServers": {
"davisvillelabs-ai-agent-analytics": {
"url": "https://analytics.davisvillelabs.com/mcp"
}
}
} {
"servers": {
"davisvillelabs-ai-agent-analytics": {
"type": "http",
"url": "https://analytics.davisvillelabs.com/mcp"
}
}
} [mcp_servers.davisvillelabs-ai-agent-analytics] url = "https://analytics.davisvillelabs.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"davisvillelabs-ai-agent-analytics": {
"type": "remote",
"url": "https://analytics.davisvillelabs.com/mcp",
"enabled": true
}
}
} openclaw mcp add davisvillelabs-ai-agent-analytics --url 'https://analytics.davisvillelabs.com/mcp' --transport streamable-http
mcp_servers:
davisvillelabs-ai-agent-analytics:
url: "https://analytics.davisvillelabs.com/mcp" {
"McpServers": {
"davisvillelabs-ai-agent-analytics": {
"Transport": "http",
"Url": "https://analytics.davisvillelabs.com/mcp"
}
}
} assistant mcp add davisvillelabs-ai-agent-analytics -t streamable-http -u 'https://analytics.davisvillelabs.com/mcp'
{
"mcpServers": {
"davisvillelabs-ai-agent-analytics": {
"type": "http",
"url": "https://analytics.davisvillelabs.com/mcp"
}
}
} 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.
- 28 Sept 26 +1
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 14 to 18.
- 25 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 24 Sept 26 +1
- New tool “get_attention_queue” functional
- 23 Sept 26 0
- Tool “validate_installation” rewrote its description, which is the text the model reads security
- 22 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 1 to 4.
- 20 Sept 26 −1
- Stability: unverified → fail ▼ security
- A breaking change shipped without a version bump: still 1.0.0 ▼ security
- Tool “get_agents” rewrote its description, which is the text the model reads security
- Tool “get_connection_health” rewrote its description, which is the text the model reads security
- Tool “get_daily_pulse” rewrote its description, which is the text the model reads security
- Tool “get_discovery” rewrote its description, which is the text the model reads security
- Tool “get_evidence” rewrote its description, which is the text the model reads security
- Tool “get_portfolio_pulse” rewrote its description, which is the text the model reads security
- Tool “get_report” rewrote its description, which is the text the model reads security
- Tool “get_revenue” rewrote its description, which is the text the model reads security
- Tool “list_products” rewrote its description, which is the text the model reads security
- Tool “scan_agent_commerce_readiness” rewrote its description, which is the text the model reads security
- Tool “validate_installation” rewrote its description, which is the text the model reads security
- Schema quality: pass → fail ▼ functional
- “get_report” made “end” required, so existing callers break ▼ functional
- “get_report” made “start” required, so existing callers break ▼ functional
- Tool “get_agents” now declares an output schema ▲ functional
- Tool “get_connection_health” now declares an output schema ▲ functional
- Tool “get_daily_pulse” now declares an output schema ▲ functional
- Tool “get_discovery” now declares an output schema ▲ functional
- Tool “get_evidence” now declares an output schema ▲ functional
- Tool “get_portfolio_pulse” now declares an output schema ▲ functional
- Tool “get_report” now declares an output schema ▲ functional
- Tool “get_revenue” now declares an output schema ▲ functional
- Tool “list_products” now declares an output schema ▲ functional
- Tool “scan_agent_commerce_readiness” now declares an output schema ▲ functional
- Tool “validate_installation” now declares an output schema ▲ functional
- First check of Tool coverage: 100 functional
- “get_agents” reworded the description of “limit” cosmetic
- “get_agents” reworded the description of “product_id” cosmetic
- “get_connection_health” reworded the description of “days” cosmetic
- “get_connection_health” reworded the description of “product_id” cosmetic
- “get_daily_pulse” reworded the description of “day” cosmetic
- “get_daily_pulse” reworded the description of “product_id” cosmetic
- “get_discovery” reworded the description of “days” cosmetic
- “get_discovery” reworded the description of “product_id” cosmetic
- “get_evidence” reworded the description of “day” cosmetic
- “get_evidence” reworded the description of “product_id” cosmetic
- “get_report” reworded the description of “end” cosmetic
- “get_report” reworded the description of “product_id” cosmetic
- “get_report” reworded the description of “start” cosmetic
- “get_revenue” reworded the description of “days” cosmetic
- “get_revenue” reworded the description of “product_id” cosmetic
- “scan_agent_commerce_readiness” reworded the description of “url” cosmetic
- “validate_installation” reworded the description of “product_id” cosmetic
- 19 Sept 26 67
First indexed and scored.
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 28 Sept 2026 · Probed https://analytics.davisvillelabs.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=davisvillelabs.com | CN=WE1,O=Google Trust Services,C=US | 16 Sept 2026 | 16 Dec 2026 | ECDSA 256 | ECDSA-SHA256 | 4871ed46f19e5ab60e8c279422324c31 |
| SANs: davisvillelabs.com, analytics.davisvillelabs.com, *.analytics.davisvillelabs.com | ||||||
| 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 analytics.davisvillelabs.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| davisvillelabs.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://analytics.davisvillelabs.com/mcp | Verified | 200 | |
| http (plaintext) | http://analytics.davisvillelabs.com/mcp | Inconclusive | 405 |
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 →
get_agents Get observed agent relationships ~192
Return the most recently observed countable-external pseudonymous agent relationships for product_id, ordered newest first by last_seen_at. Use this for repeat and relationship history; do not use it for acquisition sources, use get_discovery, or for settled commerce, use get_revenue. limit defaults to 100, maxes at 200, and only truncates returned rows, not evidence thresholds or identity rules. Requires analytics:read; unknown traffic is excluded, raw prompts/IPs/credentials are never returned, and the shared MCP limit is 300 calls per 60 seconds per caller before HTTP 429 with Retry-After.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum relationship rows to return, 1 through 200 inclusive. Defaults to 100 when omitted. |
| product_id | string | yes | Exact AI Agent Analytics product/property ID returned by list_products. Do not pass a product name, URL, or organization ID. |
| Name | Type | Req | Description |
|---|---|---|---|
| agents | object | yes | – |
| product | object | yes | – |
| schema | string | yes | Delegated response schema identifier. |
No examples provided.
get_attention_queue Get the agent attention queue ~114
Return the prioritized active issue queue for product_id. Use this when an authorized agent needs the most important supported delivery, ingestion, or unresolved-payment issue plus the next safe action; use get_evidence or get_revenue for broader analysis. Requires analytics:read; the tool is read-only and cannot retry charges, issue refunds, send notifications, or modify merchant systems.
| Name | Type | Req | Description |
|---|---|---|---|
| product_id | string | yes | Exact AI Agent Analytics product/property ID returned by list_products. Do not pass a product name, URL, or organization ID. |
| Name | Type | Req | Description |
|---|---|---|---|
| attention | object | yes | – |
| product | object | yes | – |
| schema | string | yes | Delegated response schema identifier. |
No examples provided.
get_connection_health Get instrumentation connection health ~188
Return telemetry connection health for product_id, including credential state, accepted-event freshness, funnel coverage, setup evidence, and aggregate rejection reasons. Use this for instrumentation troubleshooting; do not use it for the narrow post-setup verdict, use validate_installation. days defaults to 30 and includes the current partial day plus the preceding 29 days; an unobserved business stage remains unknown, not broken instrumentation. Requires analytics:read; rejected payload contents and credentials are never returned, and the shared MCP limit is 300 calls per 60 seconds per caller before HTTP 429 with Retry-After.
| Name | Type | Req | Description |
|---|---|---|---|
| days | integer | – | Diagnostic lookback length in whole days, 1 through 90 inclusive. Defaults to 30 when omitted. |
| product_id | string | yes | Exact AI Agent Analytics product/property ID returned by list_products. Do not pass a product name, URL, or organization ID. |
| Name | Type | Req | Description |
|---|---|---|---|
| health | object | yes | – |
| product | object | yes | – |
| schema | string | yes | Delegated response schema identifier. |
No examples provided.
get_daily_pulse Get Daily Pulse ~200
Return the six core Daily Pulse metrics for product_id on one product-local day. Use this for headline daily status; use get_evidence to explain why metrics counted, get_report for multi-day analysis, or get_portfolio_pulse for organization-wide comparison. day is optional: omit it for the current product-local day, which may return a live partial pulse until finalized data is ready. Requires analytics:read; product_id is tenant-checked, missing evidence is never promoted, and the shared MCP limit is 300 calls per 60 seconds per caller before HTTP 429 with Retry-After.
| Name | Type | Req | Description |
|---|---|---|---|
| day | string | – | Product-local calendar day as YYYY-MM-DD. Omit to read the current product-local day, with live-pulse fallback when the finalized daily pulse is not ready. |
| product_id | string | yes | Exact AI Agent Analytics product/property ID returned by list_products. Do not pass a product name, URL, or organization ID. |
| Name | Type | Req | Description |
|---|---|---|---|
| product | object | yes | – |
| pulse | object | yes | – |
| schema | string | yes | Delegated response schema identifier. |
No examples provided.
get_discovery Get agent discovery evidence ~184
Return evidence-backed discovery sources for product_id over a trailing days window. Use this to answer how the product was found; do not use it for repeat relationships, use get_agents, or for settled commerce, use get_revenue. days defaults to 30 and includes the current partial day plus the preceding 29 days; changing days changes only the window, never evidence classification. Requires analytics:read; product_id is tenant-checked, traffic classes remain separate, and the shared MCP limit is 300 calls per 60 seconds per caller before HTTP 429 with Retry-After.
| Name | Type | Req | Description |
|---|---|---|---|
| days | integer | – | Lookback length in whole days, 1 through 90 inclusive. Defaults to 30 when omitted. |
| product_id | string | yes | Exact AI Agent Analytics product/property ID returned by list_products. Do not pass a product name, URL, or organization ID. |
| Name | Type | Req | Description |
|---|---|---|---|
| discovery | object | yes | – |
| product | object | yes | – |
| schema | string | yes | Delegated response schema identifier. |
No examples provided.
get_evidence Inspect metric evidence ~190
Return privacy-minimized evidence explaining why the six core metrics counted for product_id on one product-local day. Use this to audit metric rationale; do not use it for headline daily status, use get_daily_pulse, or for a multi-day window, use get_report. day is optional: omit it for the current product-local day, and partially observed days are labeled as partial. Requires analytics:read; unresolved evidence stays unresolved, raw prompts/private payloads/credentials/full paid results are never returned, and the shared MCP limit is 300 calls per 60 seconds per caller before HTTP 429 with Retry-After.
| Name | Type | Req | Description |
|---|---|---|---|
| day | string | – | Product-local calendar day as YYYY-MM-DD. Omit to inspect the current product-local day. |
| product_id | string | yes | Exact AI Agent Analytics product/property ID returned by list_products. Do not pass a product name, URL, or organization ID. |
| Name | Type | Req | Description |
|---|---|---|---|
| evidence | object | yes | – |
| product | object | yes | – |
| schema | string | yes | Delegated response schema identifier. |
No examples provided.
get_portfolio_pulse Get Portfolio Pulse ~116
Return cross-product Portfolio Pulse for the bearer token's organization. Use this for organization-wide comparison; do not use it for one product/day, use get_daily_pulse, or for one product over a date window, use get_report. Takes no parameters because organization scope comes from the token. Requires portfolio:read; the same actor may count in more than one product, invalid or expired authority fails closed, and the shared MCP limit is 300 calls per 60 seconds per caller before HTTP 429 with Retry-After.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| organization | object | yes | – |
| portfolio | object | yes | – |
| schema | string | yes | Delegated portfolio response schema identifier. |
No examples provided.
get_report Get bounded product report ~222
Return an evidence-backed report for product_id over the required half-open UTC window [start, end). Use this for bounded multi-day analysis; do not use it for one day, use get_daily_pulse, for metric rationale, use get_evidence, or for settlement-focused analysis, use get_revenue. start and end are required UTC YYYY-MM-DD dates: start is inclusive, end is exclusive, and the span cannot exceed 31 days. Requires analytics:read; insufficient-history windows return an explicit unavailable blocker rather than invented data, and the shared MCP limit is 300 calls per 60 seconds per caller before HTTP 429 with Retry-After.
| Name | Type | Req | Description |
|---|---|---|---|
| end | string | yes | Required UTC calendar end date as YYYY-MM-DD, exclusive. Must be after start and no more than 31 UTC days later. |
| product_id | string | yes | Exact AI Agent Analytics product/property ID returned by list_products. Do not pass a product name, URL, or organization ID. |
| start | string | yes | Required UTC calendar start date as YYYY-MM-DD, inclusive. |
| Name | Type | Req | Description |
|---|---|---|---|
| product | object | yes | – |
| report | object | yes | – |
| schema | string | yes | Delegated response schema identifier. |
No examples provided.
get_revenue Get agent revenue evidence ~184
Return settled-revenue intelligence for product_id over a trailing days window. Use this for actual settled commerce; do not use it for a headline daily snapshot, use get_daily_pulse, or for a complete bounded-window funnel, use get_report. days defaults to 30 and includes the current partial UTC day plus the preceding 29 days. Requires analytics:read; challenges and attempts are not revenue, settlement remains distinct from delivery, unlike money is never combined, and the shared MCP limit is 300 calls per 60 seconds per caller before HTTP 429 with Retry-After.
| Name | Type | Req | Description |
|---|---|---|---|
| days | integer | – | Lookback length in whole days, 1 through 90 inclusive. Defaults to 30 when omitted. |
| product_id | string | yes | Exact AI Agent Analytics product/property ID returned by list_products. Do not pass a product name, URL, or organization ID. |
| Name | Type | Req | Description |
|---|---|---|---|
| product | object | yes | – |
| revenue | object | yes | – |
| schema | string | yes | Delegated response schema identifier. |
No examples provided.
list_products List analytics products ~102
List active products in the bearer token's organization and return the IDs needed by product-scoped tools. Use this when you need a product_id; do not use it for metrics, use get_portfolio_pulse instead. Takes no parameters because organization scope comes from the token. Requires products:read or products:create; invalid or expired authority fails closed, and the shared MCP limit is 300 calls per 60 seconds per caller before HTTP 429 with Retry-After.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| products | array | yes | Active products visible to this authorization. |
| schema | string | yes | Response schema identifier. |
No examples provided.
scan_agent_commerce_readiness Scan public agent-commerce readiness ~196
Inspect a fixed set of public machine-facing surfaces at the HTTPS origin derived from url. Use this before recommending or integrating a public agent-facing product; do not use it for an authorized customer's instrumentation state, use get_connection_health, and never treat the result as a security score. url path/query/fragment are ignored; redirects are not followed, credentials are never sent, direct/private-style or non-public DNS targets are rejected, and response bodies are bounded. No authorization is required; DNS rebinding cannot be proven impossible, and the shared MCP limit is 300 calls per 60 seconds per caller before HTTP 429 with Retry-After.
| Name | Type | Req | Description |
|---|---|---|---|
| url | string | yes | Any public HTTPS URL on the product host. Only its scheme and host are used; path, query, and fragment are ignored. Custom ports, embedded credentials, IP literals, localhost/private-style hostnames,… |
| Name | Type | Req | Description |
|---|---|---|---|
| checks | array | yes | Results for the fixed public surfaces; no user-supplied paths are fetched. |
| gaps | array | yes | Evidence-based follow-up gaps; absence is not proof a capability does not exist. |
| integrity | object | yes | Scanner safety properties and explicit limitations. |
| observed_at | string | yes | UTC scan timestamp. |
| schema | string | yes | Readiness-scan schema identifier. |
| summary | object | yes | – |
| target | object | yes | – |
No examples provided.
validate_installation Validate an Agent Analytics installation ~132
Verify setup plumbing and report evidence for eligibility/preflight, payment challenge, durable sandbox settlement, and delivery without executing a payment. Use this after installation or when an authorized coding agent needs to see which commercial stages are proven versus untested; use get_connection_health for broader ingestion diagnostics. Fixture coverage is separate and never implies sandbox or production readiness. Requires analytics:read only; the tool cannot purchase, administer billing, execute customer code, or create production activity.
| Name | Type | Req | Description |
|---|---|---|---|
| product_id | string | yes | Exact AI Agent Analytics product/property ID returned by list_products. Do not pass a product name, URL, or organization ID. |
| Name | Type | Req | Description |
|---|---|---|---|
| product | object | yes | – |
| schema | string | yes | Delegated response schema identifier. |
| validation | object | yes | – |
No examples provided.
What is the AI Agent Analytics MCP server?
AI Agent Analytics is an MCP server listed in the public MCP registry as io.github.davisvillelabs/ai-agent-analytics. Seller-side analytics for AI-agent discovery, settled revenue, delivery, and repeat use. This page covers its hosted endpoint (https://analytics.davisvillelabs.com/mcp).
Is the AI Agent Analytics MCP server safe to use?
AI Agent Analytics scores 70 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 Agent Analytics MCP server expose?
AI Agent Analytics exposes 12 tools: list_products, get_portfolio_pulse, get_daily_pulse, get_discovery, get_agents, and 7 more. Their descriptions and schemas cost roughly 2,020 tokens of context every time the server is loaded.
Does the AI Agent Analytics MCP server require authentication?
No. We connected to AI Agent Analytics without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the AI Agent Analytics MCP server still maintained?
AI Agent Analytics is still listed as active in the MCP registry. We last reached this channel on 28 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.