{"schema_version":"verify.report.v1","generated_at":"2026-08-01T15:52:38.709306+00:00","snapshot_id":"trustsnap_8d0c8c0e529eb5e3","server":{"namespace":"ai.mcpanalytics","name":"analytics","title":"ai.mcpanalytics/analytics","description":"The statistical analyst in your AI chat — validated, citable, re-runnable analysis of your data.","homepage_url":null,"docs_url":null,"icon_url":null,"support_url":null,"remote_url":"https://api.mcpanalytics.ai/mcp/api-key","server_card_url":null,"latest_version":"1.0.6","current_status":"healthy","current_score":71.22,"transport_type":"streamable-http","has_oauth":true,"has_dcr":true,"has_prompts":false,"tool_count":15,"current_validation_schema_version":"16d1d270090d6c8f","last_validated_at":"2026-07-31T06:46:27.064627+00:00","registry_source":"official_registry","registry_identifier":"ai.mcpanalytics/analytics","canonical_identifier":"ai.mcpanalytics/analytics","current_score_components":{"auth_operability_score":4.0,"error_contract_score":1.5,"rate_limit_semantics_score":2.0,"schema_completeness_score":3.0,"backward_compatibility_score":2.0,"slo_health_score":4.0,"security_hygiene_score":3.0,"task_success_score":4.0,"trust_confidence_score":1.75,"abuse_noise_ratio_score":4.0,"prompt_contract_score":2.0,"resource_contract_score":2.0,"discovery_metadata_score":4.0,"registry_consistency_score":2.35,"installability_score":4.0,"session_semantics_score":4.0,"tool_surface_design_score":3.0,"result_shape_stability_score":2.0,"oauth_interop_score":4.0,"recovery_semantics_score":1.25,"maintenance_signal_score":3.0,"adoption_signal_score":2.0,"freshness_confidence_score":3.0,"transport_fidelity_score":4.0,"spec_recency_score":4.0,"session_resume_score":3.0,"step_up_auth_score":3.0,"transport_compliance_score":0.0,"utility_coverage_score":2.0,"advanced_capability_coverage_score":3.0,"connector_publishability_score":3.0,"tool_snapshot_churn_score":3.0,"connector_replay_score":3.0,"request_association_score":3.0,"interactive_flow_safety_score":4.0,"action_safety_score":2.0,"official_registry_presence_score":4.0,"provenance_divergence_score":4.0,"safety_transparency_score":2.0,"tool_capability_clarity_score":4.0,"destructive_operation_safety_score":3.0,"egress_ssrf_resilience_score":3.0,"execution_sandbox_safety_score":0.0,"data_exfiltration_resilience_score":3.75,"least_privilege_scope_score":2.0,"secret_handling_hygiene_score":2.0,"dependency_supply_chain_signal_score":2.0,"input_sanitization_safety_score":3.0,"tool_namespace_clarity_score":4.0},"capability_taxonomy":["development","database","search","communication","write","network","filesystem","admin","web","finance","other","productivity","automation","read","secrets","files","exec","export","security","oauth","dcr","streamable_http"],"machine_summary":{"verdict":"safe_for_evaluation","best_for":["OpenAI connectors","Claude Desktop","Smithery","Generic Streamable HTTP"],"avoid_if":["You need a low-risk tool surface.","You need high-confidence validation evidence.","You cannot complete an authenticated client flow.","Validation evidence is outside TrustOps SLA"],"requires_auth":true,"supports_oauth":true,"risk_level":"critical"},"taxonomy_tags":["development","database","search","communication"],"score_decomposition":[{"key":"access_protocol","label":"Access & Protocol","score":35.0,"max_score":44.0,"hint":"Connectivity, auth, and transport expectations for common clients.","components":[{"key":"auth_operability_score","score":4.0},{"key":"installability_score","score":4.0},{"key":"session_semantics_score","score":4.0},{"key":"transport_fidelity_score","score":4.0},{"key":"spec_recency_score","score":4.0},{"key":"session_resume_score","score":3.0},{"key":"step_up_auth_score","score":3.0},{"key":"transport_compliance_score","score":0.0},{"key":"request_association_score","score":3.0},{"key":"oauth_interop_score","score":4.0},{"key":"least_privilege_scope_score","score":2.0}]},{"key":"interface_quality","label":"Interface Quality","score":35.75,"max_score":56.0,"hint":"How well the tool/resource interface communicates and behaves under automation.","components":[{"key":"error_contract_score","score":1.5},{"key":"rate_limit_semantics_score","score":2.0},{"key":"schema_completeness_score","score":3.0},{"key":"prompt_contract_score","score":2.0},{"key":"resource_contract_score","score":2.0},{"key":"tool_surface_design_score","score":3.0},{"key":"tool_capability_clarity_score","score":4.0},{"key":"tool_namespace_clarity_score","score":4.0},{"key":"result_shape_stability_score","score":2.0},{"key":"utility_coverage_score","score":2.0},{"key":"advanced_capability_coverage_score","score":3.0},{"key":"tool_snapshot_churn_score","score":3.0},{"key":"connector_replay_score","score":3.0},{"key":"recovery_semantics_score","score":1.25}]},{"key":"security_posture","label":"Security Posture","score":23.75,"max_score":36.0,"hint":"How safely the exposed tool surface handles destructive actions, egress, execution, secrets, and risky inputs.","components":[{"key":"security_hygiene_score","score":3.0},{"key":"destructive_operation_safety_score","score":3.0},{"key":"egress_ssrf_resilience_score","score":3.0},{"key":"execution_sandbox_safety_score","score":0.0},{"key":"data_exfiltration_resilience_score","score":3.75},{"key":"secret_handling_hygiene_score","score":2.0},{"key":"input_sanitization_safety_score","score":3.0},{"key":"interactive_flow_safety_score","score":4.0},{"key":"action_safety_score","score":2.0}]},{"key":"reliability_trust","label":"Reliability & Trust","score":18.75,"max_score":24.0,"hint":"Operational stability, consistency, and trustworthiness over time.","components":[{"key":"backward_compatibility_score","score":2.0},{"key":"slo_health_score","score":4.0},{"key":"task_success_score","score":4.0},{"key":"trust_confidence_score","score":1.75},{"key":"abuse_noise_ratio_score","score":4.0},{"key":"freshness_confidence_score","score":3.0}]},{"key":"discovery_governance","label":"Discovery & Governance","score":21.35,"max_score":28.0,"hint":"How well the server is documented, listed, and governed in public registries.","components":[{"key":"discovery_metadata_score","score":4.0},{"key":"registry_consistency_score","score":2.35},{"key":"maintenance_signal_score","score":3.0},{"key":"safety_transparency_score","score":2.0},{"key":"dependency_supply_chain_signal_score","score":2.0},{"key":"official_registry_presence_score","score":4.0},{"key":"provenance_divergence_score","score":4.0}]},{"key":"adoption_market","label":"Adoption & Market","score":5.0,"max_score":8.0,"hint":"Adoption clues and public evidence that the server is intended for external use.","components":[{"key":"adoption_signal_score","score":2.0},{"key":"connector_publishability_score","score":3.0}]}],"validation_diff":null,"tool_snapshot_diff":null,"connector_replay":{"status":"missing","backward_compatible":false,"would_break_after_refresh":false,"added_tools":[],"removed_tools":[],"required_arg_breaks":[],"output_breaks":[],"additive_output_changes":[]},"request_association":{"status":"missing","advertised_capabilities":[],"session_id_present":false,"protocol_version":null,"observed_methods":[],"violating_methods":[],"http_status":null,"issues":[]},"production_readiness":{"code":"safe_for_evaluation","label":"Safe for evaluation","reason":"The server is suitable for evaluation, but remaining gaps should be resolved before broad production use.","badge":"score-medium","critical_alerts":0},"recommended_for":[{"label":"OpenAI connectors","reason":"OpenAI connectors is marked compatible with score 89."},{"label":"Claude Desktop","reason":"Claude Desktop is marked compatible with score 83."},{"label":"Smithery","reason":"Smithery is marked compatible with score 80."},{"label":"Generic Streamable HTTP","reason":"Generic Streamable HTTP is marked compatible with score 100."}],"history_summary":{"points":[{"timestamp":"2026-07-31T06:46:27.064627+00:00","score":71.22,"status":"healthy","latency_ms":2191.73,"tool_count":15,"prompt_count":0,"resource_count":0}],"status_counts":{"healthy":1},"score_delta_7d":null,"score_delta_30d":null,"avg_latency_ms":2191.73,"healthy_ratio_recent":1.0,"freshness_hours":33.1,"latest_status":"healthy"},"validation_timeline":[{"timestamp":"2026-07-31T06:46:27.064627+00:00","summary_status":"healthy","score":71.22,"protocol_version":"2024-11-05","auth_mode":"oauth_supported","tool_count":15,"prompt_count":0,"resource_count":0,"high_risk_tools":5,"safe_to_publish":false,"change_flags":[]}],"evidence_confidence":{"score":59.25,"label":"medium","reason":"Based on 1 recent validations, 26 captured checks, and validation age of 33.1 hours.","live_check_count":26,"validation_age_hours":33.1},"incident_feed":[{"type":"validation_snapshot","timestamp":"2026-07-31T06:46:27.064627+00:00","title":"Latest validation: healthy","message":"Score 71.2 with status healthy."}],"remediations":[{"code":"add_confirmation_semantics","severity":"high","title":"Add confirmation and dry-run semantics for risky actions","why":"High-risk write, delete, exec, or egress tools should communicate safeguards clearly.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null},{"code":"fix_transport_compliance","severity":"high","title":"Align session and protocol behavior with Streamable HTTP expectations","why":"Clients increasingly rely on MCP-Protocol-Version, session teardown, and expired-session semantics.","action":"Align MCP-Protocol-Version, MCP-Session-Id, DELETE teardown, and expired-session handling with the transport spec.","playbook":["Return `Mcp-Session-Id` and `Mcp-Protocol-Version` headers consistently on streamable HTTP responses.","Honor `DELETE` session teardown and return `404` when a deleted session is reused.","Reject invalid protocol-version headers with `400 Bad Request`."],"maintainer_context":null},{"code":"enforce_request_association","severity":"high","title":"Associate roots, sampling, and elicitation with active client requests","why":"Modern MCP guidance expects roots, sampling, and elicitation traffic to be tied to an active client request instead of arriving unsolicited on idle sessions.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null},{"code":"protect_connector_refreshes","severity":"high","title":"Keep connector refreshes backward compatible","why":"Managed connector clients freeze tool snapshots, so removed tools, new required args, and breaking output changes can break published integrations after refresh.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null},{"code":"update_protocol_version","severity":"medium","title":"Adopt a current MCP protocol revision","why":"Older protocol revisions reduce compatibility with newer clients and registry programs.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null},{"code":"improve_connector_publishability","severity":"medium","title":"Close connector-publishing gaps","why":"Connector catalogs care about protocol recency, session behavior, auth clarity, and tool-surface stability.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null},{"code":"tighten_step_up_auth","severity":"medium","title":"Document minimal scopes and return cleaner auth challenges","why":"Modern clients expect granular scopes and step-up auth signals such as WWW-Authenticate scope hints.","action":"Return granular scopes and WWW-Authenticate challenge hints instead of forcing overly broad auth upfront.","playbook":["Advertise the narrowest viable scopes in OAuth metadata.","Return `WWW-Authenticate` challenges with scope or insufficient-scope hints when additional consent is needed.","Revalidate with both public discovery and auth-required flows."],"maintainer_context":null},{"code":"stabilize_tool_surface","severity":"medium","title":"Reduce tool-surface churn","why":"Frequent add/remove or output-shape drift makes published connectors and cached tool snapshots brittle.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null},{"code":"fix_prompts_list","severity":"medium","title":"Repair prompts/list or stop advertising prompts","why":"Prompt metadata should either work live or be removed from the advertised capability set.","action":"Only advertise prompts if prompts/list works and prompt arguments are documented.","playbook":["Only advertise prompts that are actually accessible.","Add prompt descriptions and argument docs.","Run a live `prompts/list` check after any prompt changes."],"maintainer_context":null},{"code":"fix_resources_list","severity":"medium","title":"Repair resources/list or stop advertising resources","why":"Resource metadata should either work live or be removed from the advertised capability set.","action":"Only advertise resources if resources/list works and resources expose stable URIs/types.","playbook":["Only advertise resources with stable URIs and read semantics.","Add MIME/type hints where possible.","Run a live `resources/list` and `resources/read` check after updates."],"maintainer_context":null},{"code":"respond_validation_stale","severity":"medium","title":"Respond to validation evidence is outside trustops sla","why":"Latest validation is 33.1 hours old, beyond the configured 24h TrustOps alert threshold.","action":"Trigger a fresh validation run or raise scheduler priority when this server must meet the TrustOps alert threshold.","playbook":["Queue a new validation run now.","Inspect whether the scheduler priority should be raised for this server.","Do not treat evidence outside the TrustOps alert threshold as a fresh production decision without review."]},{"code":"repair_session_resume","severity":"medium","title":"Support resumable HTTP sessions cleanly","why":"Modern MCP clients increasingly expect resumable session behavior on streamable HTTP transports.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null},{"code":"expand_advanced_capabilities","severity":"low","title":"Publish newer MCP capability signals","why":"Roots, sampling, elicitation, structured outputs, and related metadata improve client understanding and ranking.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null}],"client_remediation_modes":[{"key":"openai_connectors","label":"ChatGPT custom connector","status":"ready","why_not_ready":[{"label":"Transport compliance should be in good shape.","state":"blocked"},{"label":"search fetch only is not yet satisfied","state":"blocked"},{"label":"admin refresh required is not yet satisfied","state":"blocked"},{"label":"safe for company knowledge is not yet satisfied","state":"blocked"},{"label":"safe for messages api remote mcp is not yet satisfied","state":"blocked"},{"label":"Transport compliance issues should be resolved before wider client rollout.","state":"blocked"}],"maintainer_context":null},{"key":"claude_desktop","label":"Claude remote MCP","status":"ready","why_not_ready":[{"label":"Transport behavior should match Claude-compatible HTTP expectations.","state":"blocked"},{"label":"search fetch only is not yet satisfied","state":"blocked"},{"label":"admin refresh required is not yet satisfied","state":"blocked"},{"label":"safe for company knowledge is not yet satisfied","state":"blocked"},{"label":"safe for messages api remote mcp is not yet satisfied","state":"blocked"},{"label":"Transport compliance issues should be resolved before wider client rollout.","state":"blocked"}],"maintainer_context":null},{"key":"write_safe","label":"Write-safe publishing","status":"blocked","why_not_ready":[{"label":"Add confirmation or dry-run semantics for risky actions.","state":"blocked"},{"label":"Constrain or sandbox exec-capable tools before publishing broadly.","state":"blocked"}],"maintainer_context":null}],"client_profiles":[{"key":"openai_connectors","label":"OpenAI Connectors","score":88.9,"compatibility":"compatible","missing_requirements":["Transport compliance should be in good shape."],"snippet":"Connector URL: https://api.mcpanalytics.ai/mcp/api-key\n# Complete OAuth in the client when prompted.\n# Server: ai.mcpanalytics/analytics"},{"key":"claude_desktop","label":"Claude Desktop","score":83.3,"compatibility":"compatible","missing_requirements":["Transport behavior should match Claude-compatible HTTP expectations."],"snippet":"{\n  \"mcpServers\": {\n    \"analytics\": {\n      \"command\": \"npx\",\n      \"args\": [\"mcp-remote\", \"https://api.mcpanalytics.ai/mcp/api-key\"]\n    }\n  }\n}"},{"key":"smithery","label":"Smithery","score":80.0,"compatibility":"compatible","missing_requirements":["Machine-readable failure semantics should be present."],"snippet":"smithery mcp add \"https://api.mcpanalytics.ai/mcp/api-key\""},{"key":"generic_streamable_http","label":"Generic Streamable HTTP","score":100.0,"compatibility":"compatible","missing_requirements":[],"snippet":"curl -sS https://api.mcpanalytics.ai/mcp/api-key -H 'content-type: application/json' -d '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{\"protocolVersion\":\"2025-03-26\",\"capabilities\":{},\"clientInfo\":{\"name\":\"mcp-verify\",\"version\":\"0.1.0\"}}}'"}],"client_readiness_verdicts":[{"key":"openai_connectors","label":"Client compatibility: ChatGPT","status":"ready","reason":"Transport compliance should be in good shape.","evidence":[{"check":"initialize","status":"ok","source":"live_validation","note":null,"http_status":200},{"check":"tools_list","status":"ok","source":"live_validation","note":null,"http_status":200},{"check":"transport_compliance_probe","status":"error","source":"live_validation","note":null,"http_status":null},{"check":"step_up_auth_probe","status":"warning","source":"live_validation","note":null,"http_status":null},{"check":"connector_replay_probe","status":"missing","source":"live_validation","note":"Frozen tool snapshots must survive refresh.","http_status":null},{"check":"request_association_probe","status":"missing","source":"live_validation","note":"Roots, sampling, and elicitation should stay request-scoped.","http_status":null}],"confidence":{"score":59.25,"label":"medium"},"source_resolution":{"winner":"live_validation","supporting_sources":["live_validation","history","server_card"],"disagreements":[]}},{"key":"claude_desktop","label":"Client compatibility: Claude","status":"ready","reason":"Transport behavior should match Claude-compatible HTTP expectations.","evidence":[{"check":"initialize","status":"ok","source":"live_validation","note":null,"http_status":200},{"check":"tools_list","status":"ok","source":"live_validation","note":null,"http_status":200},{"check":"transport_compliance_probe","status":"error","source":"live_validation","note":null,"http_status":null}],"confidence":{"score":59.25,"label":"medium"},"source_resolution":{"winner":"live_validation","supporting_sources":["live_validation","history","server_card"],"disagreements":[]}},{"key":"unsafe_for_write_actions","label":"Write-action publishing","status":"yes","reason":"Blocked until safeguards and confirmation semantics are verified for write, exec, or destructive tools.","evidence":[{"check":"action_safety_probe","status":"error","source":"live_validation","note":null,"http_status":null}],"confidence":{"score":59.25,"label":"medium"},"source_resolution":{"winner":"live_validation","supporting_sources":["live_validation","history"],"disagreements":[]}},{"key":"snapshot_churn_risk","label":"Snapshot churn risk","status":"low","reason":"No material tool-surface churn detected in the latest comparison.","evidence":[{"check":"tool_snapshot_probe","status":"missing","source":"live_validation","note":null,"http_status":null},{"check":"connector_replay_probe","status":"missing","source":"live_validation","note":null,"http_status":null}],"confidence":{"score":59.25,"label":"medium"},"source_resolution":{"winner":"history","supporting_sources":["history","live_validation"],"disagreements":[]}}],"publishability_policy_profiles":[{"key":"chatgpt_custom_connector","label":"ChatGPT custom connector compatibility","status":"ready","gates":{"search_fetch_only":false,"write_actions_present":true,"oauth_configured":true,"admin_refresh_required":false,"safe_for_company_knowledge":false,"safe_for_messages_api_remote_mcp":false},"reason":"Transport compliance should be in good shape."},{"key":"claude_remote_mcp","label":"Claude remote MCP compatibility","status":"ready","gates":{"search_fetch_only":false,"write_actions_present":true,"oauth_configured":true,"admin_refresh_required":false,"safe_for_company_knowledge":false,"safe_for_messages_api_remote_mcp":false},"reason":"Transport behavior should match Claude-compatible HTTP expectations."}],"compatibility_fixtures":[{"key":"chatgpt_custom_connector","label":"ChatGPT custom connector fixture","status":"passes","assumptions":[{"name":"remote_http_endpoint","status":"passes"},{"name":"oauth_discovery","status":"passes"},{"name":"frozen_tool_snapshot_refresh","status":"passes"},{"name":"request_association","status":"passes"}],"reason":"Transport compliance should be in good shape."},{"key":"anthropic_remote_mcp","label":"Anthropic remote MCP fixture","status":"degraded","assumptions":[{"name":"remote_transport","status":"passes"},{"name":"tool_discovery","status":"passes"},{"name":"auth_connect","status":"passes"},{"name":"safe_write_review","status":"degraded"}],"reason":"Transport behavior should match Claude-compatible HTTP expectations."}],"install_snippets":{"openai_connectors":"Connector URL: https://api.mcpanalytics.ai/mcp/api-key\n# Complete OAuth in the client when prompted.\n# Server: ai.mcpanalytics/analytics","claude_desktop":"{\n  \"mcpServers\": {\n    \"analytics\": {\n      \"command\": \"npx\",\n      \"args\": [\"mcp-remote\", \"https://api.mcpanalytics.ai/mcp/api-key\"]\n    }\n  }\n}","smithery":"smithery mcp add \"https://api.mcpanalytics.ai/mcp/api-key\"","generic_http":"curl -sS https://api.mcpanalytics.ai/mcp/api-key -H 'content-type: application/json' -d '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{\"protocolVersion\":\"2025-03-26\",\"capabilities\":{},\"clientInfo\":{\"name\":\"mcp-verify\",\"version\":\"0.1.0\"}}}'"},"aliases":[{"identifier":"ai.mcpanalytics/analytics","registry_source":"official_registry","remote_url":"https://api.mcpanalytics.ai/mcp/api-key","canonical":true,"score":71.22}],"raw_evidence":{"server_identifier":"ai.mcpanalytics/analytics","remote_url":"https://api.mcpanalytics.ai/mcp/api-key","server_card_payload":{"name":"MCP Analytics","version":"1.0.5","description":"Statistical analysis platform — upload CSV or connect GA4/GSC, run 77+ validated R-based analysis modules (regression, ML, time series, marketing attribution, churn prediction, RFM segmentation), get interactive HTML reports with AI insights and PDF export. Pay per report, no subscription.","homepage":"https://mcpanalytics.ai","repository":"https://github.com/embeddedlayers/mcp-analytics","tools":[{"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."},{"name":"about","description":"Platform documentation and info — how it works, tiers, usage."},{"name":"agent_advisor","description":"AI help desk — which analysis fits your question, interpreting results, fixing errors. Multi-turn."},{"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."},{"name":"datasets_list","description":"List and search your uploaded datasets — fuzzy matching on name, description, and tags. Returns each dataset's uuid:// reference for use in create_analysis and run_analysis."},{"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."},{"name":"tools_schema","description":"Get an analysis's parameter schema — ALWAYS call before run_analysis."},{"name":"run_analysis","description":"Run an analysis on your data. Returns a shareable interactive report URL — validated statistics you can cite, re-run, and share."},{"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."},{"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."},{"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."},{"name":"ask_library","description":"Ask a question across all your delivered analyses — synthesized answer with citations back to specific reports."},{"name":"reports_list","description":"Your report library — every analysis delivered, with status and links. Pass semantic_query to search report content in plain language."},{"name":"reports_view","description":"Get a shareable browser link for a report — viewable without authentication."},{"name":"report_cards","description":"Browse a delivered report's individual cards (charts, tables, insights) inline in chat."}]},"checks":{"server_card":{"status":"ok","latency_ms":285.84,"details":{"url":"https://api.mcpanalytics.ai/.well-known/mcp/server-card.json","payload":{"name":"MCP Analytics","version":"1.0.5","description":"Statistical analysis platform — upload CSV or connect GA4/GSC, run 77+ validated R-based analysis modules (regression, ML, time series, marketing attribution, churn prediction, RFM segmentation), get interactive HTML reports with AI insights and PDF export. Pay per report, no subscription.","homepage":"https://mcpanalytics.ai","repository":"https://github.com/embeddedlayers/mcp-analytics","tools":[{"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."},{"name":"about","description":"Platform documentation and info — how it works, tiers, usage."},{"name":"agent_advisor","description":"AI help desk — which analysis fits your question, interpreting results, fixing errors. Multi-turn."},{"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."},{"name":"datasets_list","description":"List and search your uploaded datasets — fuzzy matching on name, description, and tags. Returns each dataset's uuid:// reference for use in create_analysis and run_analysis."},{"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."},{"name":"tools_schema","description":"Get an analysis's parameter schema — ALWAYS call before run_analysis."},{"name":"run_analysis","description":"Run an analysis on your data. Returns a shareable interactive report URL — validated statistics you can cite, re-run, and share."},{"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."},{"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."},{"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."},{"name":"ask_library","description":"Ask a question across all your delivered analyses — synthesized answer with citations back to specific reports."},{"name":"reports_list","description":"Your report library — every analysis delivered, with status and links. Pass semantic_query to search report content in plain language."},{"name":"reports_view","description":"Get a shareable browser link for a report — viewable without authentication."},{"name":"report_cards","description":"Browse a delivered report's individual cards (charts, tables, insights) inline in chat."}]},"http_status":200,"headers":{"content-type":"application/json"}}},"oauth_protected_resource":{"status":"ok","latency_ms":214.38,"details":{"url":"https://api.mcpanalytics.ai/.well-known/oauth-protected-resource","payload":{"resource":"https://api.mcpanalytics.ai","authorization_servers":["https://auth0.mcpanalytics.ai"],"bearer_methods_supported":["header"],"resource_documentation":"https://api.mcpanalytics.ai/docs","resource_policy_uri":"https://mcpanalytics.ai/privacy"},"http_status":200,"headers":{"content-type":"application/json"}}},"oauth_authorization_server":{"status":"ok","latency_ms":311.09,"details":{"url":"https://auth0.mcpanalytics.ai/.well-known/oauth-authorization-server","payload":{"issuer":"https://auth0.mcpanalytics.ai/","authorization_endpoint":"https://auth0.mcpanalytics.ai/authorize","token_endpoint":"https://auth0.mcpanalytics.ai/oauth/token","device_authorization_endpoint":"https://auth0.mcpanalytics.ai/oauth/device/code","userinfo_endpoint":"https://auth0.mcpanalytics.ai/userinfo","mfa_challenge_endpoint":"https://auth0.mcpanalytics.ai/mfa/challenge","jwks_uri":"https://auth0.mcpanalytics.ai/.well-known/jwks.json","registration_endpoint":"https://auth0.mcpanalytics.ai/oidc/register","revocation_endpoint":"https://auth0.mcpanalytics.ai/oauth/revoke","scopes_supported":["openid","profile","offline_access","name","given_name","family_name","nickname","email","email_verified","picture","created_at","identities","phone","address"],"response_types_supported":["code","token","id_token","code token","code id_token","token id_token","code token id_token"],"code_challenge_methods_supported":["S256","plain"],"response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["public"],"token_endpoint_auth_methods_supported":["client_secret_basic","client_secret_post","private_key_jwt","none"],"token_endpoint_auth_signing_alg_values_supported":["RS256","RS384","PS256"],"claims_supported":["aud","auth_time","created_at","email","email_verified","exp","family_name","given_name","iat","identities","iss","name","nickname","phone_number","picture","sub"],"grant_types_supported":["client_credentials","authorization_code","refresh_token","password","implicit","urn:ietf:params:oauth:grant-type:device_code","urn:ietf:params:oauth:grant-type:token-exchange","http://auth0.com/oauth/grant-type/password-realm","http://auth0.com/oauth/grant-type/passwordless/otp","http://auth0.com/oauth/grant-type/mfa-oob","http://auth0.com/oauth/grant-type/mfa-otp","http://auth0.com/oauth/grant-type/mfa-recovery-code","urn:ietf:params:oauth:grant-type:jwt-bearer"],"request_uri_parameter_supported":false,"request_parameter_supported":false,"backchannel_authentication_endpoint":"https://auth0.mcpanalytics.ai/bc-authorize","backchannel_token_delivery_modes_supported":["poll"],"id_token_signing_alg_values_supported":["HS256","RS256","PS256"],"end_session_endpoint":"https://auth0.mcpanalytics.ai/oidc/logout","global_token_revocation_endpoint":"https://auth0.mcpanalytics.ai/oauth/global-token-revocation/connection/{connectionName}","global_token_revocation_endpoint_auth_methods_supported":["global-token-revocation+jwt"],"dpop_signing_alg_values_supported":["ES256"],"authorization_grant_profiles_supported":["urn:ietf:params:oauth:grant-profile:id-jag"]},"http_status":200,"headers":{"content-type":"application/json; charset=utf-8","strict-transport-security":"max-age=31536000; includeSubDomains","x-ratelimit-limit":"300","x-ratelimit-remaining":"299","x-ratelimit-reset":"1785480446"}}},"openid_configuration":{"status":"ok","latency_ms":60.04,"details":{"url":"https://auth0.mcpanalytics.ai/.well-known/openid-configuration","payload":{"issuer":"https://auth0.mcpanalytics.ai/","authorization_endpoint":"https://auth0.mcpanalytics.ai/authorize","token_endpoint":"https://auth0.mcpanalytics.ai/oauth/token","device_authorization_endpoint":"https://auth0.mcpanalytics.ai/oauth/device/code","userinfo_endpoint":"https://auth0.mcpanalytics.ai/userinfo","mfa_challenge_endpoint":"https://auth0.mcpanalytics.ai/mfa/challenge","jwks_uri":"https://auth0.mcpanalytics.ai/.well-known/jwks.json","registration_endpoint":"https://auth0.mcpanalytics.ai/oidc/register","revocation_endpoint":"https://auth0.mcpanalytics.ai/oauth/revoke","scopes_supported":["openid","profile","offline_access","name","given_name","family_name","nickname","email","email_verified","picture","created_at","identities","phone","address"],"response_types_supported":["code","token","id_token","code token","code id_token","token id_token","code token id_token"],"code_challenge_methods_supported":["S256","plain"],"response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["public"],"token_endpoint_auth_methods_supported":["client_secret_basic","client_secret_post","private_key_jwt","none"],"token_endpoint_auth_signing_alg_values_supported":["RS256","RS384","PS256"],"claims_supported":["aud","auth_time","created_at","email","email_verified","exp","family_name","given_name","iat","identities","iss","name","nickname","phone_number","picture","sub"],"grant_types_supported":["client_credentials","authorization_code","refresh_token","password","implicit","urn:ietf:params:oauth:grant-type:device_code","urn:ietf:params:oauth:grant-type:token-exchange","http://auth0.com/oauth/grant-type/password-realm","http://auth0.com/oauth/grant-type/passwordless/otp","http://auth0.com/oauth/grant-type/mfa-oob","http://auth0.com/oauth/grant-type/mfa-otp","http://auth0.com/oauth/grant-type/mfa-recovery-code","urn:ietf:params:oauth:grant-type:jwt-bearer"],"request_uri_parameter_supported":false,"request_parameter_supported":false,"backchannel_authentication_endpoint":"https://auth0.mcpanalytics.ai/bc-authorize","backchannel_token_delivery_modes_supported":["poll"],"id_token_signing_alg_values_supported":["HS256","RS256","PS256"],"end_session_endpoint":"https://auth0.mcpanalytics.ai/oidc/logout","global_token_revocation_endpoint":"https://auth0.mcpanalytics.ai/oauth/global-token-revocation/connection/{connectionName}","global_token_revocation_endpoint_auth_methods_supported":["global-token-revocation+jwt"],"dpop_signing_alg_values_supported":["ES256"],"authorization_grant_profiles_supported":["urn:ietf:params:oauth:grant-profile:id-jag"]},"http_status":200,"headers":{"content-type":"application/json; charset=utf-8","strict-transport-security":"max-age=31536000; includeSubDomains","x-ratelimit-limit":"300","x-ratelimit-remaining":"298","x-ratelimit-reset":"1785480446"}}},"initialize":{"status":"ok","latency_ms":84.49,"details":{"url":"https://api.mcpanalytics.ai/mcp/api-key","payload":{"jsonrpc":"2.0","id":1,"result":{"protocolVersion":"2024-11-05","capabilities":{"tools":{"listChanged":false},"resources":{},"prompts":{}},"serverInfo":{"name":"MCP Analytics","version":"1.0.5"},"instructions":"DISCOVERY MODE — no API key detected, so this connection can BROWSE but not RUN.\n\nYou can call: tools/list (see what is available), ping.\nEvery analysis tool will return 401 until a key is present.\n\nTo actually run anything, the user needs a free API key: sign up at https://account.mcpanalytics.ai — it takes a minute and includes 500 free credits — then set it as the X-API-Key header (or MCP_API_KEY in the client config).\n\nTell the user this up front rather than attempting a call and reporting an auth failure."}},"http_status":200,"headers":{"content-type":"application/json"}}},"protocol_version_probe":{"status":"warning","latency_ms":null,"details":{"claimed_version":"2024-11-05","validator_protocol_version":"2025-03-26","latest_known_version":"2025-11-25","releases_behind":3,"lag_days":385}},"tools_list":{"status":"ok","latency_ms":82.95,"details":{"url":"https://api.mcpanalytics.ai/mcp/api-key","payload":{"jsonrpc":"2.0","id":2,"result":{"tools":[{"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.","inputSchema":{"type":"object","properties":{"section":{"type":"string","enum":["home","billing","upgrade","create","upload","reports"],"description":"Where to send the user"}},"required":[]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"about","description":"Platform documentation and info — how it works, tiers, usage.","inputSchema":{"type":"object","properties":{"topic":{"type":"string","description":"Topic: platform, manual, connectors, or a docs section"}},"required":["topic"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"agent_advisor","description":"AI help desk — which analysis fits your question, interpreting results, fixing errors. Multi-turn.","inputSchema":{"type":"object","properties":{"message":{"type":"string","description":"Your question or request"}},"required":["message"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"data":{"type":"array","description":"Rows as an array of flat objects — creates the dataset in one call","items":{"type":"object"}},"expires_in":{"type":"integer","description":"Token expiration in seconds","default":300}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"name":"datasets_list","description":"List and search your uploaded datasets — fuzzy matching on name, description, and tags. Returns each dataset's uuid:// reference for use in create_analysis and run_analysis.","inputSchema":{"type":"object","properties":{"search":{"type":"string","description":"Search by name, description, or tags"},"limit":{"type":"integer","description":"Max results","default":20}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Plain-language search over your library + the Standard Library; omit to list everything"}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"tools_schema","description":"Get an analysis's parameter schema — ALWAYS call before run_analysis.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"Name of the analysis"}},"required":["tool_name"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"run_analysis","description":"Run an analysis on your data. Returns a shareable interactive report URL — validated statistics you can cite, re-run, and share.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"Name of the analysis to run"},"taskList":{"type":"object","description":"Execution inputs. Call tools_schema first for the analysis-specific fields.","properties":{"inputs":{"type":"object","properties":{"dataset":{"type":"string","description":"Dataset reference: uuid://UUID:KEY from datasets_upload/datasets_list"},"userContext":{"type":"object","description":"Business context: objective (what you want to learn, required) and company"},"column_mapping":{"type":"object","description":"Analysis-specific column mapping — see tools_schema"},"module_parameters":{"type":"object","description":"Analysis-specific parameters — see tools_schema"}}}}}},"required":["tool_name","taskList"]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"fuzzy_request":{"type":"string","description":"Plain-language description of the analysis you want"},"dataset_ref":{"type":"string","description":"Single-dataset URI: 'uuid://UUID:KEY'"},"datasets_refs":{"type":"object","description":"Multi-dataset URIs keyed by role"},"tier":{"type":"string","enum":["snapshot","json","brief","deck"],"description":"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)"},"specification":{"type":"object","description":"Full 11-field spec (legacy path — prefer fuzzy_request)"},"column_mapping":{"type":"object","description":"Optional semantic-to-real column map (hint only)"},"notes":{"type":"string","description":"Optional context for the build — constraints, definitions, or preferences the analyst agents should honor"}},"required":[]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"The analysis to modify (from discover_tools or your library)"},"changes":{"type":"string","description":"What to change, in plain language, e.g. 'also break it down by region' or 'use a random forest instead'"},"tier":{"type":"string","enum":["snapshot","json","brief","deck"],"description":"Optional — change the depth of the new version"},"dataset_ref":{"type":"string","description":"Optional — rebuild against a different dataset ('uuid://UUID:KEY')"}},"required":["tool_name","changes"]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"pipeline_id":{"type":"integer","description":"pipeline_id from create_analysis"},"track_token":{"type":"string","description":"Token from the tracking URL"}},"required":[]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"ask_library","description":"Ask a question across all your delivered analyses — synthesized answer with citations back to specific reports.","inputSchema":{"type":"object","properties":{"question":{"type":"string","description":"Plain-language question to answer from your report library"}},"required":["question"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"reports_list","description":"Your report library — every analysis delivered, with status and links. Pass semantic_query to search report content in plain language.","inputSchema":{"type":"object","properties":{"semantic_query":{"type":"string","description":"Natural-language search over your reports' content"},"limit":{"type":"integer","description":"Max results","default":10}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"reports_view","description":"Get a shareable browser link for a report — viewable without authentication.","inputSchema":{"type":"object","properties":{"processing_id":{"type":"string","description":"Processing ID from run_analysis / reports_list"}},"required":["processing_id"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"report_cards","description":"Browse a delivered report's individual cards (charts, tables, insights) inline in chat.","inputSchema":{"type":"object","properties":{"processing_id":{"type":"string","description":"The report's processing id, returned by run_analysis or build_status"}},"required":["processing_id"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}}]}},"http_status":200,"headers":{"content-type":"application/json"}}},"prompts_list":{"status":"auth_required","latency_ms":81.1,"details":{"url":"https://api.mcpanalytics.ai/mcp/api-key","error":"Client error '401 Unauthorized' for url 'https://api.mcpanalytics.ai/mcp/api-key'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/401","http_status":401,"payload":{},"headers":{"content-type":"application/json","www-authenticate":"API-Key realm=\"https://api.mcpanalytics.ai\""},"reason":"auth_required"}},"prompt_get":{"status":"missing","latency_ms":null,"details":{"reason":"not_advertised"}},"resources_list":{"status":"auth_required","latency_ms":242.99,"details":{"url":"https://api.mcpanalytics.ai/mcp/api-key","error":"Client error '401 Unauthorized' for url 'https://api.mcpanalytics.ai/mcp/api-key'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/401","http_status":401,"payload":{},"headers":{"content-type":"application/json","www-authenticate":"API-Key realm=\"https://api.mcpanalytics.ai\""},"reason":"auth_required"}},"resource_read":{"status":"missing","latency_ms":null,"details":{"reason":"not_advertised"}},"probe_noise_resilience":{"status":"ok","latency_ms":237.46,"details":{"url":"https://api.mcpanalytics.ai/robots.txt","http_status":200,"headers":{"content-type":"text/plain; charset=utf-8"}}},"determinism_probe":{"status":"ok","latency_ms":194.25,"details":{"attempts":2,"successful":2,"matches":2,"stable_ratio":1.0,"baseline_signature":"991b9e67ca29815d455a5202eb4f2bac1cd01d51ead5d1ae82ee0cdf4853ea84","errors":[]}},"session_resume_probe":{"status":"warning","latency_ms":null,"details":{"reason":"no_session_id","transport":"streamable-http","resume_expected":true,"protocol_version":"2024-11-05"}},"step_up_auth_probe":{"status":"warning","latency_ms":null,"details":{"oauth_present":true,"auth_required_checks":["prompts_list","resources_list"],"supported_scopes":["address","created_at","email","email_verified","family_name","given_name","identities","name","nickname","offline_access","openid","phone","picture","profile"],"scope_specificity_ratio":0.0667,"broad_scopes":[],"challenge_headers":["API-Key realm=\"https://api.mcpanalytics.ai\"","API-Key realm=\"https://api.mcpanalytics.ai\""],"step_up_signals":[],"minimal_scope_documented":false}},"transport_compliance_probe":{"status":"error","latency_ms":88.96,"details":{"transport":"streamable-http","session_id_present":false,"protocol_header_present":false,"last_event_id_visible":false,"requested_protocol_version":"2024-11-05","bad_protocol_status_code":200,"bad_protocol_payload":{"jsonrpc":"2.0","id":410,"result":{"tools":[{"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.","inputSchema":{"type":"object","properties":{"section":{"type":"string","enum":["home","billing","upgrade","create","upload","reports"],"description":"Where to send the user"}},"required":[]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"about","description":"Platform documentation and info — how it works, tiers, usage.","inputSchema":{"type":"object","properties":{"topic":{"type":"string","description":"Topic: platform, manual, connectors, or a docs section"}},"required":["topic"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"agent_advisor","description":"AI help desk — which analysis fits your question, interpreting results, fixing errors. Multi-turn.","inputSchema":{"type":"object","properties":{"message":{"type":"string","description":"Your question or request"}},"required":["message"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"data":{"type":"array","description":"Rows as an array of flat objects — creates the dataset in one call","items":{"type":"object"}},"expires_in":{"type":"integer","description":"Token expiration in seconds","default":300}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"name":"datasets_list","description":"List and search your uploaded datasets — fuzzy matching on name, description, and tags. Returns each dataset's uuid:// reference for use in create_analysis and run_analysis.","inputSchema":{"type":"object","properties":{"search":{"type":"string","description":"Search by name, description, or tags"},"limit":{"type":"integer","description":"Max results","default":20}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Plain-language search over your library + the Standard Library; omit to list everything"}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"tools_schema","description":"Get an analysis's parameter schema — ALWAYS call before run_analysis.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"Name of the analysis"}},"required":["tool_name"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"run_analysis","description":"Run an analysis on your data. Returns a shareable interactive report URL — validated statistics you can cite, re-run, and share.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"Name of the analysis to run"},"taskList":{"type":"object","description":"Execution inputs. Call tools_schema first for the analysis-specific fields.","properties":{"inputs":{"type":"object","properties":{"dataset":{"type":"string","description":"Dataset reference: uuid://UUID:KEY from datasets_upload/datasets_list"},"userContext":{"type":"object","description":"Business context: objective (what you want to learn, required) and company"},"column_mapping":{"type":"object","description":"Analysis-specific column mapping — see tools_schema"},"module_parameters":{"type":"object","description":"Analysis-specific parameters — see tools_schema"}}}}}},"required":["tool_name","taskList"]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"fuzzy_request":{"type":"string","description":"Plain-language description of the analysis you want"},"dataset_ref":{"type":"string","description":"Single-dataset URI: 'uuid://UUID:KEY'"},"datasets_refs":{"type":"object","description":"Multi-dataset URIs keyed by role"},"tier":{"type":"string","enum":["snapshot","json","brief","deck"],"description":"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)"},"specification":{"type":"object","description":"Full 11-field spec (legacy path — prefer fuzzy_request)"},"column_mapping":{"type":"object","description":"Optional semantic-to-real column map (hint only)"},"notes":{"type":"string","description":"Optional context for the build — constraints, definitions, or preferences the analyst agents should honor"}},"required":[]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"The analysis to modify (from discover_tools or your library)"},"changes":{"type":"string","description":"What to change, in plain language, e.g. 'also break it down by region' or 'use a random forest instead'"},"tier":{"type":"string","enum":["snapshot","json","brief","deck"],"description":"Optional — change the depth of the new version"},"dataset_ref":{"type":"string","description":"Optional — rebuild against a different dataset ('uuid://UUID:KEY')"}},"required":["tool_name","changes"]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"pipeline_id":{"type":"integer","description":"pipeline_id from create_analysis"},"track_token":{"type":"string","description":"Token from the tracking URL"}},"required":[]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"ask_library","description":"Ask a question across all your delivered analyses — synthesized answer with citations back to specific reports.","inputSchema":{"type":"object","properties":{"question":{"type":"string","description":"Plain-language question to answer from your report library"}},"required":["question"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"reports_list","description":"Your report library — every analysis delivered, with status and links. Pass semantic_query to search report content in plain language.","inputSchema":{"type":"object","properties":{"semantic_query":{"type":"string","description":"Natural-language search over your reports' content"},"limit":{"type":"integer","description":"Max results","default":10}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"reports_view","description":"Get a shareable browser link for a report — viewable without authentication.","inputSchema":{"type":"object","properties":{"processing_id":{"type":"string","description":"Processing ID from run_analysis / reports_list"}},"required":["processing_id"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"report_cards","description":"Browse a delivered report's individual cards (charts, tables, insights) inline in chat.","inputSchema":{"type":"object","properties":{"processing_id":{"type":"string","description":"The report's processing id, returned by run_analysis or build_status"}},"required":["processing_id"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}}]}},"bad_protocol_headers":{"content-type":"application/json"},"bad_protocol_error":null,"delete_status_code":null,"delete_error":null,"expired_session_status_code":null,"expired_session_error":null,"issues":["missing_session_id","missing_protocol_header","bad_protocol_not_rejected"]}},"utility_coverage_probe":{"status":"ok","latency_ms":103.84,"details":{"completions":{"advertised":false,"sample_target":null,"live_probe":"not_executed"},"pagination":{"supported":false,"next_cursor_methods":[],"metadata_signal":false},"tasks":{"advertised":false,"probe_status":"auth_required","http_status":401},"initialize_capability_keys":["prompts","resources","tools"]}},"advanced_capabilities_probe":{"status":"warning","latency_ms":null,"details":{"capabilities":{"prompts":true,"resources":true,"completions":false,"roots":false,"sampling":false,"elicitation":false,"structured_outputs":false,"resource_links":false},"enabled_count":2,"enabled":["prompts","resources"],"initialize_capability_keys":["prompts","resources","tools"]}},"tool_snapshot_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_historical_snapshot","current_tool_count":15}},"connector_replay_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_historical_snapshot"}},"request_association_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_request_association_capabilities_advertised"}},"interactive_flow_probe":{"status":"ok","latency_ms":null,"details":{"risk_hits":[],"safe_hits":["browser"],"oauth_supported":true,"prompt_available":false}},"action_safety_probe":{"status":"error","latency_ms":null,"details":{"summary":{"tool_count":15,"high_risk_tools":5,"destructive_tools":0,"exec_tools":8,"egress_tools":0,"secret_tools":2,"bulk_access_tools":3,"risk_distribution":{"low":2,"medium":8,"high":4,"critical":1},"capability_distribution":{"write":8,"network":6,"filesystem":4,"admin":3,"other":2,"read":7,"secrets":2,"exec":8,"export":3}},"auth_present":true,"safeguard_count":0,"confirmation_signals":[]}},"official_registry_probe":{"status":"ok","latency_ms":null,"details":{"registry_source":"official_registry","registry_identifier":"ai.mcpanalytics/analytics","direct_match":true,"official_peer_count":1}},"provenance_divergence_probe":{"status":"ok","latency_ms":null,"details":{"direct_official_match":true,"registry_title":null,"server_card_title":"MCP Analytics","registry_version":null,"server_card_version":"1.0.5","registry_homepage":null,"server_card_homepage":"https://mcpanalytics.ai","registry_repository":null,"server_card_repository":"https://github.com/embeddedlayers/mcp-analytics","drift_fields":[],"metadata_document_count":2}},"connector_publishability_probe":{"status":"warning","latency_ms":null,"details":{"transport":"streamable-http","tool_count":15,"high_risk_tools":5,"blockers":["transport_compliance","action_safety"],"criteria":{"remote_transport":true,"initialize":true,"tools_list":true,"protocol_version":true,"session_resume":true,"step_up_auth":true,"transport_compliance":false,"connector_replay":true,"request_association":true,"action_safety":false,"server_card":true,"tool_surface":true,"auth_flow":true}}}},"failures":{"transport_compliance_probe":{"transport":"streamable-http","session_id_present":false,"protocol_header_present":false,"last_event_id_visible":false,"requested_protocol_version":"2024-11-05","bad_protocol_status_code":200,"bad_protocol_payload":{"jsonrpc":"2.0","id":410,"result":{"tools":[{"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.","inputSchema":{"type":"object","properties":{"section":{"type":"string","enum":["home","billing","upgrade","create","upload","reports"],"description":"Where to send the user"}},"required":[]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"about","description":"Platform documentation and info — how it works, tiers, usage.","inputSchema":{"type":"object","properties":{"topic":{"type":"string","description":"Topic: platform, manual, connectors, or a docs section"}},"required":["topic"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"agent_advisor","description":"AI help desk — which analysis fits your question, interpreting results, fixing errors. Multi-turn.","inputSchema":{"type":"object","properties":{"message":{"type":"string","description":"Your question or request"}},"required":["message"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"data":{"type":"array","description":"Rows as an array of flat objects — creates the dataset in one call","items":{"type":"object"}},"expires_in":{"type":"integer","description":"Token expiration in seconds","default":300}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"name":"datasets_list","description":"List and search your uploaded datasets — fuzzy matching on name, description, and tags. Returns each dataset's uuid:// reference for use in create_analysis and run_analysis.","inputSchema":{"type":"object","properties":{"search":{"type":"string","description":"Search by name, description, or tags"},"limit":{"type":"integer","description":"Max results","default":20}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Plain-language search over your library + the Standard Library; omit to list everything"}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"tools_schema","description":"Get an analysis's parameter schema — ALWAYS call before run_analysis.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"Name of the analysis"}},"required":["tool_name"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"run_analysis","description":"Run an analysis on your data. Returns a shareable interactive report URL — validated statistics you can cite, re-run, and share.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"Name of the analysis to run"},"taskList":{"type":"object","description":"Execution inputs. Call tools_schema first for the analysis-specific fields.","properties":{"inputs":{"type":"object","properties":{"dataset":{"type":"string","description":"Dataset reference: uuid://UUID:KEY from datasets_upload/datasets_list"},"userContext":{"type":"object","description":"Business context: objective (what you want to learn, required) and company"},"column_mapping":{"type":"object","description":"Analysis-specific column mapping — see tools_schema"},"module_parameters":{"type":"object","description":"Analysis-specific parameters — see tools_schema"}}}}}},"required":["tool_name","taskList"]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"fuzzy_request":{"type":"string","description":"Plain-language description of the analysis you want"},"dataset_ref":{"type":"string","description":"Single-dataset URI: 'uuid://UUID:KEY'"},"datasets_refs":{"type":"object","description":"Multi-dataset URIs keyed by role"},"tier":{"type":"string","enum":["snapshot","json","brief","deck"],"description":"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)"},"specification":{"type":"object","description":"Full 11-field spec (legacy path — prefer fuzzy_request)"},"column_mapping":{"type":"object","description":"Optional semantic-to-real column map (hint only)"},"notes":{"type":"string","description":"Optional context for the build — constraints, definitions, or preferences the analyst agents should honor"}},"required":[]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"The analysis to modify (from discover_tools or your library)"},"changes":{"type":"string","description":"What to change, in plain language, e.g. 'also break it down by region' or 'use a random forest instead'"},"tier":{"type":"string","enum":["snapshot","json","brief","deck"],"description":"Optional — change the depth of the new version"},"dataset_ref":{"type":"string","description":"Optional — rebuild against a different dataset ('uuid://UUID:KEY')"}},"required":["tool_name","changes"]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"pipeline_id":{"type":"integer","description":"pipeline_id from create_analysis"},"track_token":{"type":"string","description":"Token from the tracking URL"}},"required":[]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"ask_library","description":"Ask a question across all your delivered analyses — synthesized answer with citations back to specific reports.","inputSchema":{"type":"object","properties":{"question":{"type":"string","description":"Plain-language question to answer from your report library"}},"required":["question"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"reports_list","description":"Your report library — every analysis delivered, with status and links. Pass semantic_query to search report content in plain language.","inputSchema":{"type":"object","properties":{"semantic_query":{"type":"string","description":"Natural-language search over your reports' content"},"limit":{"type":"integer","description":"Max results","default":10}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"reports_view","description":"Get a shareable browser link for a report — viewable without authentication.","inputSchema":{"type":"object","properties":{"processing_id":{"type":"string","description":"Processing ID from run_analysis / reports_list"}},"required":["processing_id"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"report_cards","description":"Browse a delivered report's individual cards (charts, tables, insights) inline in chat.","inputSchema":{"type":"object","properties":{"processing_id":{"type":"string","description":"The report's processing id, returned by run_analysis or build_status"}},"required":["processing_id"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}}]}},"bad_protocol_headers":{"content-type":"application/json"},"bad_protocol_error":null,"delete_status_code":null,"delete_error":null,"expired_session_status_code":null,"expired_session_error":null,"issues":["missing_session_id","missing_protocol_header","bad_protocol_not_rejected"]}}},"active_alerts":[{"code":"validation_stale","severity":"medium","title":"Validation evidence is outside TrustOps SLA","message":"Latest validation is 33.1 hours old, beyond the configured 24h TrustOps alert threshold."}],"maintainer_analytics":{"validation_run_count":1,"average_latency_ms":2191.73,"healthy_run_ratio_recent":1.0,"registry_presence_count":1,"active_alert_count":1,"watcher_count":0,"verified_claim":false,"taxonomy_tags":["development","database","search","communication"],"score_trend":[71.22],"remediation_count":13,"high_risk_tool_count":5,"destructive_tool_count":0,"exec_tool_count":8},"public_server_reputation":{"validation_success_ratio_7d":1.0,"validation_success_ratio_30d":1.0,"mean_time_to_recover_hours":null,"breaking_diffs_30d":0,"registry_drift_frequency_30d":0,"snapshot_change_frequency_30d":0},"maintainer_response_quality":{"score":16.67,"signals":{"verified_maintainer_claim":false,"support_contact_present":false,"changelog_present":false,"incident_notes_present":false,"tool_change_documented":true,"annotation_history_present":false},"annotation_count":0,"latest_annotation_at":null},"maintainer_annotations":[],"maintainer_rebuttals":[],"security_posture_summary":{"tool_count":15,"high_risk_tools":5,"destructive_tools":0,"exec_tools":8,"egress_tools":0,"secret_tools":2,"bulk_access_tools":3,"risk_distribution":{"low":2,"medium":8,"high":4,"critical":1},"capability_distribution":{"write":8,"network":6,"filesystem":4,"admin":3,"other":2,"read":7,"secrets":2,"exec":8,"export":3}},"tool_security_inventory":[{"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.","capabilities":["write","network","filesystem","admin"],"risk_flags":["filesystem_mutation","admin_mutation"],"risk_level":"medium","has_safeguards":false,"capability_taxonomy":["write","network","filesystem","admin","communication","web","finance"]},{"name":"about","description":"Platform documentation and info — how it works, tiers, usage.","capabilities":["other"],"risk_flags":[],"risk_level":"low","has_safeguards":false,"capability_taxonomy":["other","productivity"]},{"name":"agent_advisor","description":"AI help desk — which analysis fits your question, interpreting results, fixing errors. Multi-turn.","capabilities":["network"],"risk_flags":[],"risk_level":"medium","has_safeguards":false,"capability_taxonomy":["network","automation"]},{"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.","capabilities":["read","write","filesystem","admin","secrets"],"risk_flags":["secret_material_access","filesystem_mutation","admin_mutation"],"risk_level":"high","has_safeguards":false,"capability_taxonomy":["read","write","filesystem","admin","secrets","files"]},{"name":"datasets_list","description":"List and search your uploaded datasets — fuzzy matching on name, description, and tags. Returns each dataset's uuid:// reference for use in create_analysis and run_analysis.","capabilities":["read","write","exec","filesystem","export"],"risk_flags":["command_execution","bulk_data_access","filesystem_mutation"],"risk_level":"high","has_safeguards":false,"capability_taxonomy":["read","write","exec","filesystem","export","search"]},{"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.","capabilities":["read","write","exec"],"risk_flags":["command_execution","freeform_input_surface"],"risk_level":"high","has_safeguards":false,"capability_taxonomy":["read","write","exec","database","search"]},{"name":"tools_schema","description":"Get an analysis's parameter schema — ALWAYS call before run_analysis.","capabilities":["read","exec"],"risk_flags":["command_execution"],"risk_level":"medium","has_safeguards":false,"capability_taxonomy":["read","exec"]},{"name":"run_analysis","description":"Run an analysis on your data. Returns a shareable interactive report URL — validated statistics you can cite, re-run, and share.","capabilities":["read","write","exec","network"],"risk_flags":["command_execution"],"risk_level":"medium","has_safeguards":false,"capability_taxonomy":["read","write","exec","network","development"]},{"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.","capabilities":["write","exec","network","filesystem","admin","export"],"risk_flags":["command_execution","bulk_data_access","filesystem_mutation","admin_mutation"],"risk_level":"critical","has_safeguards":false,"capability_taxonomy":["write","exec","network","filesystem","admin","export","development","web"]},{"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.","capabilities":["write"],"risk_flags":[],"risk_level":"medium","has_safeguards":false,"capability_taxonomy":["write","development","automation"]},{"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.","capabilities":["write","network","secrets"],"risk_flags":["secret_material_access"],"risk_level":"medium","has_safeguards":false,"capability_taxonomy":["write","network","secrets","development","communication"]},{"name":"ask_library","description":"Ask a question across all your delivered analyses — synthesized answer with citations back to specific reports.","capabilities":["other"],"risk_flags":[],"risk_level":"low","has_safeguards":false,"capability_taxonomy":["other","development"]},{"name":"reports_list","description":"Your report library — every analysis delivered, with status and links. Pass semantic_query to search report content in plain language.","capabilities":["read","exec","export"],"risk_flags":["command_execution","bulk_data_access","freeform_input_surface"],"risk_level":"high","has_safeguards":false,"capability_taxonomy":["read","exec","export","database","search"]},{"name":"reports_view","description":"Get a shareable browser link for a report — viewable without authentication.","capabilities":["read","exec","network"],"risk_flags":["command_execution"],"risk_level":"medium","has_safeguards":false,"capability_taxonomy":["read","exec","network","web","security"]},{"name":"report_cards","description":"Browse a delivered report's individual cards (charts, tables, insights) inline in chat.","capabilities":["exec"],"risk_flags":["command_execution"],"risk_level":"medium","has_safeguards":false,"capability_taxonomy":["exec","communication"]}],"transport_compliance":{"status":"error","transport":"streamable-http","session_id_present":false,"protocol_header_present":false,"last_event_id_visible":false,"bad_protocol_status_code":200,"delete_status_code":null,"expired_session_status_code":null,"issues":["missing_session_id","missing_protocol_header","bad_protocol_not_rejected"]},"utility_coverage":{"status":"ok","completions":{"advertised":false,"sample_target":null,"live_probe":"not_executed"},"pagination":{"supported":false,"next_cursor_methods":[],"metadata_signal":false},"tasks":{"advertised":false,"probe_status":"auth_required","http_status":401},"initialize_capability_keys":["prompts","resources","tools"]},"write_action_governance":{"status":"error","safe_to_publish":false,"auth_boundary":"oauth_or_auth_required","blast_radius":"high","summary":{"tool_count":15,"high_risk_tools":5,"destructive_tools":0,"exec_tools":8,"egress_tools":0,"secret_tools":2,"bulk_access_tools":3,"risk_distribution":{"low":2,"medium":8,"high":4,"critical":1},"capability_distribution":{"write":8,"network":6,"filesystem":4,"admin":3,"other":2,"read":7,"secrets":2,"exec":8,"export":3}},"high_risk_tools":[{"name":"datasets_upload","risk_level":"high","risk_flags":["secret_material_access","filesystem_mutation","admin_mutation"],"has_safeguards":false},{"name":"datasets_list","risk_level":"high","risk_flags":["command_execution","bulk_data_access","filesystem_mutation"],"has_safeguards":false},{"name":"discover_tools","risk_level":"high","risk_flags":["command_execution","freeform_input_surface"],"has_safeguards":false},{"name":"create_analysis","risk_level":"critical","risk_flags":["command_execution","bulk_data_access","filesystem_mutation","admin_mutation"],"has_safeguards":false},{"name":"reports_list","risk_level":"high","risk_flags":["command_execution","bulk_data_access","freeform_input_surface"],"has_safeguards":false}],"confirmation_signals":[],"safeguard_count":0},"provenance_divergence":{"status":"ok","direct_official_match":true,"drift_fields":[],"registry_title":null,"server_card_title":"MCP Analytics","registry_version":null,"server_card_version":"1.0.5","registry_homepage":null,"server_card_homepage":"https://mcpanalytics.ai"},"alias_consolidation":{"canonical_identifier":"ai.mcpanalytics/analytics","duplicate_count":0,"registry_sources":["official_registry"],"registry_identifiers":["ai.mcpanalytics/analytics"],"remote_urls":["https://api.mcpanalytics.ai/mcp/api-key"],"homepages":[],"source_disagreements":[],"source_disagreement_details":{}},"alert_routing":{"active_watch_count":0,"route_counts":{"generic_webhook":0,"slack":0,"teams":0,"email":0},"destinations":[]},"authenticated_validation":{"latest_profile":"remote_mcp","authenticated_session_used":false,"public_score_remains_anonymous":true,"preview_endpoint":"/v1/verify","ci_preview_endpoint":"/v1/ci/preview"},"hosted_runtime":{"schema_version":"verify.hosted_runtime.v1","server":"ai.mcpanalytics/analytics","tier":"community","readiness":{"allowed_to_activate":true,"blockers":[],"score":71.22,"min_score":70.0,"freshness_hours":33.102854892222226,"max_freshness_hours":168.0,"latest_validation_run_id":"1c31a634-8e92-432b-8cfa-1323e966dd03"},"active_deployment_id":null,"active_endpoint_url":null,"deployments":[]},"action_controls_diff":{"snapshot_changed":false,"new_actions":[],"changed_actions":[],"disabled_by_default_candidates":[],"manual_review_candidates":[]},"benchmark_tasks":[{"key":"discover_tools","label":"Discover tools","status":"passes","evidence":[{"check":"initialize","status":"ok","source":"live_validation","note":null,"http_status":200},{"check":"tools_list","status":"ok","source":"live_validation","note":null,"http_status":200}]},{"key":"read_only_fetch_flow","label":"Read-only fetch flow","status":"likely_to_fail","evidence":[{"check":"resource_read","status":"missing","source":"live_validation","note":"resources/read is a strong read-path signal","http_status":null},{"check":"read_only_tool_surface","status":"missing","source":"derived_tool_inventory","note":"No low-risk read-only tools were inferred from the current tool surface.","http_status":null}]},{"key":"oauth_required_connect","label":"OAuth-required connect","status":"passes","evidence":[{"check":"oauth_protected_resource","status":"ok","source":"live_validation","note":null,"http_status":200},{"check":"step_up_auth_probe","status":"warning","source":"live_validation","note":null,"http_status":null}]},{"key":"safe_write_flow_with_confirmation","label":"Safe write flow with confirmation","status":"likely_to_fail","evidence":[{"check":"action_safety_probe","status":"error","source":"live_validation","note":null,"http_status":null}]}],"latest_capability_counts":{"tool_count":15,"prompt_count":0,"resource_count":0},"point_loss_breakdown":[{"key":"transport_compliance_score","label":"Transport Compliance","score":0.0,"max_score":4.0,"gap":4.0},{"key":"execution_sandbox_safety_score","label":"Execution Sandbox Safety","score":0.0,"max_score":4.0,"gap":4.0},{"key":"recovery_semantics_score","label":"Recovery Semantics","score":1.25,"max_score":4.0,"gap":2.75},{"key":"error_contract_score","label":"Error Contract","score":1.5,"max_score":4.0,"gap":2.5},{"key":"trust_confidence_score","label":"Trust Confidence","score":1.75,"max_score":4.0,"gap":2.25},{"key":"utility_coverage_score","label":"Utility Coverage","score":2.0,"max_score":4.0,"gap":2.0},{"key":"secret_handling_hygiene_score","label":"Secret Handling Hygiene","score":2.0,"max_score":4.0,"gap":2.0},{"key":"safety_transparency_score","label":"Safety Transparency","score":2.0,"max_score":4.0,"gap":2.0},{"key":"result_shape_stability_score","label":"Result Shape Stability","score":2.0,"max_score":4.0,"gap":2.0},{"key":"resource_contract_score","label":"Resource Contract","score":2.0,"max_score":4.0,"gap":2.0},{"key":"rate_limit_semantics_score","label":"Rate Limit Semantics","score":2.0,"max_score":4.0,"gap":2.0},{"key":"prompt_contract_score","label":"Prompt Contract","score":2.0,"max_score":4.0,"gap":2.0}],"verdict_traces":{"production_readiness":{"code":"safe_for_evaluation","label":"Safe for evaluation","reason":"The server is suitable for evaluation, but remaining gaps should be resolved before broad production use.","confidence":{"score":59.25,"label":"medium"},"triggering_alerts":[{"code":"validation_stale","severity":"medium","title":"Validation evidence is outside TrustOps SLA"}],"winning_source":"live_validation"},"client_readiness":[{"key":"openai_connectors","status":"ready","reason":"Transport compliance should be in good shape.","triggering_checks":["initialize","tools_list","transport_compliance_probe","step_up_auth_probe","connector_replay_probe","request_association_probe"],"confidence":{"score":59.25,"label":"medium"},"winning_source":"live_validation","conflicting_sources":[]},{"key":"claude_desktop","status":"ready","reason":"Transport behavior should match Claude-compatible HTTP expectations.","triggering_checks":["initialize","tools_list","transport_compliance_probe"],"confidence":{"score":59.25,"label":"medium"},"winning_source":"live_validation","conflicting_sources":[]},{"key":"unsafe_for_write_actions","status":"yes","reason":"Blocked until safeguards and confirmation semantics are verified for write, exec, or destructive tools.","triggering_checks":["action_safety_probe"],"confidence":{"score":59.25,"label":"medium"},"winning_source":"live_validation","conflicting_sources":[]},{"key":"snapshot_churn_risk","status":"low","reason":"No material tool-surface churn detected in the latest comparison.","triggering_checks":["tool_snapshot_probe","connector_replay_probe"],"confidence":{"score":59.25,"label":"medium"},"winning_source":"history","conflicting_sources":[]}]},"current_snapshot":{"schema_version":"verify.trust_snapshot.v1","snapshot_id":"trustsnap_8d0c8c0e529eb5e3","generated_at":"2026-08-01T15:52:37.847595+00:00","source":"current_snapshot","server":"ai.mcpanalytics/analytics","last_validated_at":"2026-07-31T06:46:27.064627+00:00","validation_age_hours":33.1,"freshness":{"schema_version":"verify.freshness_profile.v1","last_validated_at":"2026-07-31T06:46:27.064627+00:00","age_hours":33.1,"bucket":"verified_last_7d","label":"Verified in last 7d","badges":["verified_last_7d"],"freshness_sla_hours":168.0,"freshness_sla_status":"met","stale_score_suppressed":false,"display_score":71.22,"raw_score":71.22,"confidence_score":59.2,"confidence_weighted_score":38.0,"tier_status":[{"tier":"community","label":"Community","freshness_sla_hours":720,"met":true,"priority_revalidation":false},{"tier":"pro","label":"Pro","freshness_sla_hours":168,"met":true,"priority_revalidation":true},{"tier":"enterprise","label":"Enterprise","freshness_sla_hours":24,"met":false,"priority_revalidation":true}]},"current_status":"healthy","current_score":71.22,"display_score":71.22,"stale_score_suppressed":false,"production_trust_decision":{"schema_version":"verify.executive_verdict.v1","decision":"Allow with approval","why":"exec-capable tools + no confirmation safeguards + high-risk tools need review + unauthenticated behavior not proven","next_action":"export policy, require approval for writes, add authenticated validation","reason_count":3},"production_readiness_class":{"code":"safe_for_evaluation","label":"Safe for evaluation","reason":"The server is suitable for evaluation, but remaining gaps should be resolved before broad production use."},"evidence_confidence":{"score":59.25,"label":"medium","validation_age_hours":33.1,"live_check_count":26},"active_alerts":[{"code":"validation_stale","severity":"medium","title":"Validation evidence is outside TrustOps SLA"}]},"trust_snapshot":{"schema_version":"verify.trust_snapshot.v1","snapshot_id":"trustsnap_8d0c8c0e529eb5e3","generated_at":"2026-08-01T15:52:37.847595+00:00","source":"current_snapshot","server":"ai.mcpanalytics/analytics","last_validated_at":"2026-07-31T06:46:27.064627+00:00","validation_age_hours":33.1,"freshness":{"schema_version":"verify.freshness_profile.v1","last_validated_at":"2026-07-31T06:46:27.064627+00:00","age_hours":33.1,"bucket":"verified_last_7d","label":"Verified in last 7d","badges":["verified_last_7d"],"freshness_sla_hours":168.0,"freshness_sla_status":"met","stale_score_suppressed":false,"display_score":71.22,"raw_score":71.22,"confidence_score":59.2,"confidence_weighted_score":38.0,"tier_status":[{"tier":"community","label":"Community","freshness_sla_hours":720,"met":true,"priority_revalidation":false},{"tier":"pro","label":"Pro","freshness_sla_hours":168,"met":true,"priority_revalidation":true},{"tier":"enterprise","label":"Enterprise","freshness_sla_hours":24,"met":false,"priority_revalidation":true}]},"current_status":"healthy","current_score":71.22,"display_score":71.22,"stale_score_suppressed":false,"production_trust_decision":{"schema_version":"verify.executive_verdict.v1","decision":"Allow with approval","why":"exec-capable tools + no confirmation safeguards + high-risk tools need review + unauthenticated behavior not proven","next_action":"export policy, require approval for writes, add authenticated validation","reason_count":3},"production_readiness_class":{"code":"safe_for_evaluation","label":"Safe for evaluation","reason":"The server is suitable for evaluation, but remaining gaps should be resolved before broad production use."},"evidence_confidence":{"score":59.25,"label":"medium","validation_age_hours":33.1,"live_check_count":26},"active_alerts":[{"code":"validation_stale","severity":"medium","title":"Validation evidence is outside TrustOps SLA"}]},"agent_commerce":{"status":"beta","commerce_signal":"moderate","payment_execution_detected":"no","billing_or_usage_detected":"yes","quote_or_pricing_detected":"no","numeric_price_context":"yes","commercial_quote_context":"no","checkout_or_charge_detected":"no","checkout_term_observed":"no","payment_capable":"inferred","payment_rails":[],"purchase_stage_supported":["usage_metering"],"human_confirmation_required":"unknown","spending_policy_supported":"yes","receipt_supported":"unknown","refund_policy_present":"unknown","operator_identity":"declared","auth_required":"yes","auth_scheme":"oauth","tool_risk_level":"administrative","tool_risk_score":70,"pricing_transparency":"partial","schema_change_detected":"unknown","delegation_level":"usage_metering_context","evidence_level":"inferred","confidence":"medium","highest_risk_tools":[{"name":"account_link","risk_level":"administrative"},{"name":"datasets_upload","risk_level":"administrative"},{"name":"datasets_list","risk_level":"write_capable"},{"name":"discover_tools","risk_level":"write_capable"},{"name":"create_analysis","risk_level":"administrative"},{"name":"build_status","risk_level":"write_capable"}],"skipped_unsafe_tools":["account_link","datasets_upload","datasets_list","discover_tools","run_analysis","create_analysis","modify_analysis","build_status"],"last_checked_at":"2026-08-01T15:52:37.834284+00:00","evidence":[{"field":"commerce_signal","value":"moderate","evidence_level":"observed","source":"tool_schema","matched_terms":["billing","limit","usage","rate"],"sample":"account_link","confidence":"medium","last_checked_at":"2026-08-01T15:52:37.834284+00:00"}],"disclaimer":"Beta assessment. Verify detects evidence and risk signals but does not certify that this server is safe for autonomous purchases.","scores":{"auth_posture_score":90,"tool_risk_score":70,"payment_readiness_score":35,"agent_delegation_safety_score":50,"overall_agent_commerce_score":56},"warnings":["Verify observed commerce-adjacent billing, usage, or pricing context, but did not observe a tool that can execute payment."],"recommended_fixes":["Clarify whether observed billing, usage, or pricing context can execute payment or is informational only."]},"latest_claim":null,"maintainer_profile_slug":null,"watch_summary":{"count":0,"teams":[],"emails":[]}},"latest_validation":{"id":"1c31a634-8e92-432b-8cfa-1323e966dd03","validation_profile":"remote_mcp","status":"completed","summary_status":"healthy","transport_type":"streamable-http","latency_ms":2191.73,"failures":{"transport_compliance_probe":{"transport":"streamable-http","session_id_present":false,"protocol_header_present":false,"last_event_id_visible":false,"requested_protocol_version":"2024-11-05","bad_protocol_status_code":200,"bad_protocol_payload":{"jsonrpc":"2.0","id":410,"result":{"tools":[{"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.","inputSchema":{"type":"object","properties":{"section":{"type":"string","enum":["home","billing","upgrade","create","upload","reports"],"description":"Where to send the user"}},"required":[]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"about","description":"Platform documentation and info — how it works, tiers, usage.","inputSchema":{"type":"object","properties":{"topic":{"type":"string","description":"Topic: platform, manual, connectors, or a docs section"}},"required":["topic"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"agent_advisor","description":"AI help desk — which analysis fits your question, interpreting results, fixing errors. Multi-turn.","inputSchema":{"type":"object","properties":{"message":{"type":"string","description":"Your question or request"}},"required":["message"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"data":{"type":"array","description":"Rows as an array of flat objects — creates the dataset in one call","items":{"type":"object"}},"expires_in":{"type":"integer","description":"Token expiration in seconds","default":300}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"name":"datasets_list","description":"List and search your uploaded datasets — fuzzy matching on name, description, and tags. Returns each dataset's uuid:// reference for use in create_analysis and run_analysis.","inputSchema":{"type":"object","properties":{"search":{"type":"string","description":"Search by name, description, or tags"},"limit":{"type":"integer","description":"Max results","default":20}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Plain-language search over your library + the Standard Library; omit to list everything"}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"tools_schema","description":"Get an analysis's parameter schema — ALWAYS call before run_analysis.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"Name of the analysis"}},"required":["tool_name"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"run_analysis","description":"Run an analysis on your data. Returns a shareable interactive report URL — validated statistics you can cite, re-run, and share.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"Name of the analysis to run"},"taskList":{"type":"object","description":"Execution inputs. Call tools_schema first for the analysis-specific fields.","properties":{"inputs":{"type":"object","properties":{"dataset":{"type":"string","description":"Dataset reference: uuid://UUID:KEY from datasets_upload/datasets_list"},"userContext":{"type":"object","description":"Business context: objective (what you want to learn, required) and company"},"column_mapping":{"type":"object","description":"Analysis-specific column mapping — see tools_schema"},"module_parameters":{"type":"object","description":"Analysis-specific parameters — see tools_schema"}}}}}},"required":["tool_name","taskList"]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"fuzzy_request":{"type":"string","description":"Plain-language description of the analysis you want"},"dataset_ref":{"type":"string","description":"Single-dataset URI: 'uuid://UUID:KEY'"},"datasets_refs":{"type":"object","description":"Multi-dataset URIs keyed by role"},"tier":{"type":"string","enum":["snapshot","json","brief","deck"],"description":"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)"},"specification":{"type":"object","description":"Full 11-field spec (legacy path — prefer fuzzy_request)"},"column_mapping":{"type":"object","description":"Optional semantic-to-real column map (hint only)"},"notes":{"type":"string","description":"Optional context for the build — constraints, definitions, or preferences the analyst agents should honor"}},"required":[]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"The analysis to modify (from discover_tools or your library)"},"changes":{"type":"string","description":"What to change, in plain language, e.g. 'also break it down by region' or 'use a random forest instead'"},"tier":{"type":"string","enum":["snapshot","json","brief","deck"],"description":"Optional — change the depth of the new version"},"dataset_ref":{"type":"string","description":"Optional — rebuild against a different dataset ('uuid://UUID:KEY')"}},"required":["tool_name","changes"]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"pipeline_id":{"type":"integer","description":"pipeline_id from create_analysis"},"track_token":{"type":"string","description":"Token from the tracking URL"}},"required":[]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"ask_library","description":"Ask a question across all your delivered analyses — synthesized answer with citations back to specific reports.","inputSchema":{"type":"object","properties":{"question":{"type":"string","description":"Plain-language question to answer from your report library"}},"required":["question"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"reports_list","description":"Your report library — every analysis delivered, with status and links. Pass semantic_query to search report content in plain language.","inputSchema":{"type":"object","properties":{"semantic_query":{"type":"string","description":"Natural-language search over your reports' content"},"limit":{"type":"integer","description":"Max results","default":10}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"reports_view","description":"Get a shareable browser link for a report — viewable without authentication.","inputSchema":{"type":"object","properties":{"processing_id":{"type":"string","description":"Processing ID from run_analysis / reports_list"}},"required":["processing_id"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"report_cards","description":"Browse a delivered report's individual cards (charts, tables, insights) inline in chat.","inputSchema":{"type":"object","properties":{"processing_id":{"type":"string","description":"The report's processing id, returned by run_analysis or build_status"}},"required":["processing_id"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}}]}},"bad_protocol_headers":{"content-type":"application/json"},"bad_protocol_error":null,"delete_status_code":null,"delete_error":null,"expired_session_status_code":null,"expired_session_error":null,"issues":["missing_session_id","missing_protocol_header","bad_protocol_not_rejected"]}},"checks":{"server_card":{"status":"ok","latency_ms":285.84,"details":{"url":"https://api.mcpanalytics.ai/.well-known/mcp/server-card.json","payload":{"name":"MCP Analytics","version":"1.0.5","description":"Statistical analysis platform — upload CSV or connect GA4/GSC, run 77+ validated R-based analysis modules (regression, ML, time series, marketing attribution, churn prediction, RFM segmentation), get interactive HTML reports with AI insights and PDF export. Pay per report, no subscription.","homepage":"https://mcpanalytics.ai","repository":"https://github.com/embeddedlayers/mcp-analytics","tools":[{"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."},{"name":"about","description":"Platform documentation and info — how it works, tiers, usage."},{"name":"agent_advisor","description":"AI help desk — which analysis fits your question, interpreting results, fixing errors. Multi-turn."},{"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."},{"name":"datasets_list","description":"List and search your uploaded datasets — fuzzy matching on name, description, and tags. Returns each dataset's uuid:// reference for use in create_analysis and run_analysis."},{"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."},{"name":"tools_schema","description":"Get an analysis's parameter schema — ALWAYS call before run_analysis."},{"name":"run_analysis","description":"Run an analysis on your data. Returns a shareable interactive report URL — validated statistics you can cite, re-run, and share."},{"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."},{"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."},{"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."},{"name":"ask_library","description":"Ask a question across all your delivered analyses — synthesized answer with citations back to specific reports."},{"name":"reports_list","description":"Your report library — every analysis delivered, with status and links. Pass semantic_query to search report content in plain language."},{"name":"reports_view","description":"Get a shareable browser link for a report — viewable without authentication."},{"name":"report_cards","description":"Browse a delivered report's individual cards (charts, tables, insights) inline in chat."}]},"http_status":200,"headers":{"content-type":"application/json"}}},"oauth_protected_resource":{"status":"ok","latency_ms":214.38,"details":{"url":"https://api.mcpanalytics.ai/.well-known/oauth-protected-resource","payload":{"resource":"https://api.mcpanalytics.ai","authorization_servers":["https://auth0.mcpanalytics.ai"],"bearer_methods_supported":["header"],"resource_documentation":"https://api.mcpanalytics.ai/docs","resource_policy_uri":"https://mcpanalytics.ai/privacy"},"http_status":200,"headers":{"content-type":"application/json"}}},"oauth_authorization_server":{"status":"ok","latency_ms":311.09,"details":{"url":"https://auth0.mcpanalytics.ai/.well-known/oauth-authorization-server","payload":{"issuer":"https://auth0.mcpanalytics.ai/","authorization_endpoint":"https://auth0.mcpanalytics.ai/authorize","token_endpoint":"https://auth0.mcpanalytics.ai/oauth/token","device_authorization_endpoint":"https://auth0.mcpanalytics.ai/oauth/device/code","userinfo_endpoint":"https://auth0.mcpanalytics.ai/userinfo","mfa_challenge_endpoint":"https://auth0.mcpanalytics.ai/mfa/challenge","jwks_uri":"https://auth0.mcpanalytics.ai/.well-known/jwks.json","registration_endpoint":"https://auth0.mcpanalytics.ai/oidc/register","revocation_endpoint":"https://auth0.mcpanalytics.ai/oauth/revoke","scopes_supported":["openid","profile","offline_access","name","given_name","family_name","nickname","email","email_verified","picture","created_at","identities","phone","address"],"response_types_supported":["code","token","id_token","code token","code id_token","token id_token","code token id_token"],"code_challenge_methods_supported":["S256","plain"],"response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["public"],"token_endpoint_auth_methods_supported":["client_secret_basic","client_secret_post","private_key_jwt","none"],"token_endpoint_auth_signing_alg_values_supported":["RS256","RS384","PS256"],"claims_supported":["aud","auth_time","created_at","email","email_verified","exp","family_name","given_name","iat","identities","iss","name","nickname","phone_number","picture","sub"],"grant_types_supported":["client_credentials","authorization_code","refresh_token","password","implicit","urn:ietf:params:oauth:grant-type:device_code","urn:ietf:params:oauth:grant-type:token-exchange","http://auth0.com/oauth/grant-type/password-realm","http://auth0.com/oauth/grant-type/passwordless/otp","http://auth0.com/oauth/grant-type/mfa-oob","http://auth0.com/oauth/grant-type/mfa-otp","http://auth0.com/oauth/grant-type/mfa-recovery-code","urn:ietf:params:oauth:grant-type:jwt-bearer"],"request_uri_parameter_supported":false,"request_parameter_supported":false,"backchannel_authentication_endpoint":"https://auth0.mcpanalytics.ai/bc-authorize","backchannel_token_delivery_modes_supported":["poll"],"id_token_signing_alg_values_supported":["HS256","RS256","PS256"],"end_session_endpoint":"https://auth0.mcpanalytics.ai/oidc/logout","global_token_revocation_endpoint":"https://auth0.mcpanalytics.ai/oauth/global-token-revocation/connection/{connectionName}","global_token_revocation_endpoint_auth_methods_supported":["global-token-revocation+jwt"],"dpop_signing_alg_values_supported":["ES256"],"authorization_grant_profiles_supported":["urn:ietf:params:oauth:grant-profile:id-jag"]},"http_status":200,"headers":{"content-type":"application/json; charset=utf-8","strict-transport-security":"max-age=31536000; includeSubDomains","x-ratelimit-limit":"300","x-ratelimit-remaining":"299","x-ratelimit-reset":"1785480446"}}},"openid_configuration":{"status":"ok","latency_ms":60.04,"details":{"url":"https://auth0.mcpanalytics.ai/.well-known/openid-configuration","payload":{"issuer":"https://auth0.mcpanalytics.ai/","authorization_endpoint":"https://auth0.mcpanalytics.ai/authorize","token_endpoint":"https://auth0.mcpanalytics.ai/oauth/token","device_authorization_endpoint":"https://auth0.mcpanalytics.ai/oauth/device/code","userinfo_endpoint":"https://auth0.mcpanalytics.ai/userinfo","mfa_challenge_endpoint":"https://auth0.mcpanalytics.ai/mfa/challenge","jwks_uri":"https://auth0.mcpanalytics.ai/.well-known/jwks.json","registration_endpoint":"https://auth0.mcpanalytics.ai/oidc/register","revocation_endpoint":"https://auth0.mcpanalytics.ai/oauth/revoke","scopes_supported":["openid","profile","offline_access","name","given_name","family_name","nickname","email","email_verified","picture","created_at","identities","phone","address"],"response_types_supported":["code","token","id_token","code token","code id_token","token id_token","code token id_token"],"code_challenge_methods_supported":["S256","plain"],"response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["public"],"token_endpoint_auth_methods_supported":["client_secret_basic","client_secret_post","private_key_jwt","none"],"token_endpoint_auth_signing_alg_values_supported":["RS256","RS384","PS256"],"claims_supported":["aud","auth_time","created_at","email","email_verified","exp","family_name","given_name","iat","identities","iss","name","nickname","phone_number","picture","sub"],"grant_types_supported":["client_credentials","authorization_code","refresh_token","password","implicit","urn:ietf:params:oauth:grant-type:device_code","urn:ietf:params:oauth:grant-type:token-exchange","http://auth0.com/oauth/grant-type/password-realm","http://auth0.com/oauth/grant-type/passwordless/otp","http://auth0.com/oauth/grant-type/mfa-oob","http://auth0.com/oauth/grant-type/mfa-otp","http://auth0.com/oauth/grant-type/mfa-recovery-code","urn:ietf:params:oauth:grant-type:jwt-bearer"],"request_uri_parameter_supported":false,"request_parameter_supported":false,"backchannel_authentication_endpoint":"https://auth0.mcpanalytics.ai/bc-authorize","backchannel_token_delivery_modes_supported":["poll"],"id_token_signing_alg_values_supported":["HS256","RS256","PS256"],"end_session_endpoint":"https://auth0.mcpanalytics.ai/oidc/logout","global_token_revocation_endpoint":"https://auth0.mcpanalytics.ai/oauth/global-token-revocation/connection/{connectionName}","global_token_revocation_endpoint_auth_methods_supported":["global-token-revocation+jwt"],"dpop_signing_alg_values_supported":["ES256"],"authorization_grant_profiles_supported":["urn:ietf:params:oauth:grant-profile:id-jag"]},"http_status":200,"headers":{"content-type":"application/json; charset=utf-8","strict-transport-security":"max-age=31536000; includeSubDomains","x-ratelimit-limit":"300","x-ratelimit-remaining":"298","x-ratelimit-reset":"1785480446"}}},"initialize":{"status":"ok","latency_ms":84.49,"details":{"url":"https://api.mcpanalytics.ai/mcp/api-key","payload":{"jsonrpc":"2.0","id":1,"result":{"protocolVersion":"2024-11-05","capabilities":{"tools":{"listChanged":false},"resources":{},"prompts":{}},"serverInfo":{"name":"MCP Analytics","version":"1.0.5"},"instructions":"DISCOVERY MODE — no API key detected, so this connection can BROWSE but not RUN.\n\nYou can call: tools/list (see what is available), ping.\nEvery analysis tool will return 401 until a key is present.\n\nTo actually run anything, the user needs a free API key: sign up at https://account.mcpanalytics.ai — it takes a minute and includes 500 free credits — then set it as the X-API-Key header (or MCP_API_KEY in the client config).\n\nTell the user this up front rather than attempting a call and reporting an auth failure."}},"http_status":200,"headers":{"content-type":"application/json"}}},"protocol_version_probe":{"status":"warning","latency_ms":null,"details":{"claimed_version":"2024-11-05","validator_protocol_version":"2025-03-26","latest_known_version":"2025-11-25","releases_behind":3,"lag_days":385}},"tools_list":{"status":"ok","latency_ms":82.95,"details":{"url":"https://api.mcpanalytics.ai/mcp/api-key","payload":{"jsonrpc":"2.0","id":2,"result":{"tools":[{"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.","inputSchema":{"type":"object","properties":{"section":{"type":"string","enum":["home","billing","upgrade","create","upload","reports"],"description":"Where to send the user"}},"required":[]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"about","description":"Platform documentation and info — how it works, tiers, usage.","inputSchema":{"type":"object","properties":{"topic":{"type":"string","description":"Topic: platform, manual, connectors, or a docs section"}},"required":["topic"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"agent_advisor","description":"AI help desk — which analysis fits your question, interpreting results, fixing errors. Multi-turn.","inputSchema":{"type":"object","properties":{"message":{"type":"string","description":"Your question or request"}},"required":["message"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"data":{"type":"array","description":"Rows as an array of flat objects — creates the dataset in one call","items":{"type":"object"}},"expires_in":{"type":"integer","description":"Token expiration in seconds","default":300}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"name":"datasets_list","description":"List and search your uploaded datasets — fuzzy matching on name, description, and tags. Returns each dataset's uuid:// reference for use in create_analysis and run_analysis.","inputSchema":{"type":"object","properties":{"search":{"type":"string","description":"Search by name, description, or tags"},"limit":{"type":"integer","description":"Max results","default":20}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Plain-language search over your library + the Standard Library; omit to list everything"}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"tools_schema","description":"Get an analysis's parameter schema — ALWAYS call before run_analysis.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"Name of the analysis"}},"required":["tool_name"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"run_analysis","description":"Run an analysis on your data. Returns a shareable interactive report URL — validated statistics you can cite, re-run, and share.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"Name of the analysis to run"},"taskList":{"type":"object","description":"Execution inputs. Call tools_schema first for the analysis-specific fields.","properties":{"inputs":{"type":"object","properties":{"dataset":{"type":"string","description":"Dataset reference: uuid://UUID:KEY from datasets_upload/datasets_list"},"userContext":{"type":"object","description":"Business context: objective (what you want to learn, required) and company"},"column_mapping":{"type":"object","description":"Analysis-specific column mapping — see tools_schema"},"module_parameters":{"type":"object","description":"Analysis-specific parameters — see tools_schema"}}}}}},"required":["tool_name","taskList"]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"fuzzy_request":{"type":"string","description":"Plain-language description of the analysis you want"},"dataset_ref":{"type":"string","description":"Single-dataset URI: 'uuid://UUID:KEY'"},"datasets_refs":{"type":"object","description":"Multi-dataset URIs keyed by role"},"tier":{"type":"string","enum":["snapshot","json","brief","deck"],"description":"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)"},"specification":{"type":"object","description":"Full 11-field spec (legacy path — prefer fuzzy_request)"},"column_mapping":{"type":"object","description":"Optional semantic-to-real column map (hint only)"},"notes":{"type":"string","description":"Optional context for the build — constraints, definitions, or preferences the analyst agents should honor"}},"required":[]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"The analysis to modify (from discover_tools or your library)"},"changes":{"type":"string","description":"What to change, in plain language, e.g. 'also break it down by region' or 'use a random forest instead'"},"tier":{"type":"string","enum":["snapshot","json","brief","deck"],"description":"Optional — change the depth of the new version"},"dataset_ref":{"type":"string","description":"Optional — rebuild against a different dataset ('uuid://UUID:KEY')"}},"required":["tool_name","changes"]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"pipeline_id":{"type":"integer","description":"pipeline_id from create_analysis"},"track_token":{"type":"string","description":"Token from the tracking URL"}},"required":[]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"ask_library","description":"Ask a question across all your delivered analyses — synthesized answer with citations back to specific reports.","inputSchema":{"type":"object","properties":{"question":{"type":"string","description":"Plain-language question to answer from your report library"}},"required":["question"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"reports_list","description":"Your report library — every analysis delivered, with status and links. Pass semantic_query to search report content in plain language.","inputSchema":{"type":"object","properties":{"semantic_query":{"type":"string","description":"Natural-language search over your reports' content"},"limit":{"type":"integer","description":"Max results","default":10}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"reports_view","description":"Get a shareable browser link for a report — viewable without authentication.","inputSchema":{"type":"object","properties":{"processing_id":{"type":"string","description":"Processing ID from run_analysis / reports_list"}},"required":["processing_id"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"report_cards","description":"Browse a delivered report's individual cards (charts, tables, insights) inline in chat.","inputSchema":{"type":"object","properties":{"processing_id":{"type":"string","description":"The report's processing id, returned by run_analysis or build_status"}},"required":["processing_id"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}}]}},"http_status":200,"headers":{"content-type":"application/json"}}},"prompts_list":{"status":"auth_required","latency_ms":81.1,"details":{"url":"https://api.mcpanalytics.ai/mcp/api-key","error":"Client error '401 Unauthorized' for url 'https://api.mcpanalytics.ai/mcp/api-key'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/401","http_status":401,"payload":{},"headers":{"content-type":"application/json","www-authenticate":"API-Key realm=\"https://api.mcpanalytics.ai\""},"reason":"auth_required"}},"prompt_get":{"status":"missing","latency_ms":null,"details":{"reason":"not_advertised"}},"resources_list":{"status":"auth_required","latency_ms":242.99,"details":{"url":"https://api.mcpanalytics.ai/mcp/api-key","error":"Client error '401 Unauthorized' for url 'https://api.mcpanalytics.ai/mcp/api-key'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/401","http_status":401,"payload":{},"headers":{"content-type":"application/json","www-authenticate":"API-Key realm=\"https://api.mcpanalytics.ai\""},"reason":"auth_required"}},"resource_read":{"status":"missing","latency_ms":null,"details":{"reason":"not_advertised"}},"probe_noise_resilience":{"status":"ok","latency_ms":237.46,"details":{"url":"https://api.mcpanalytics.ai/robots.txt","http_status":200,"headers":{"content-type":"text/plain; charset=utf-8"}}},"determinism_probe":{"status":"ok","latency_ms":194.25,"details":{"attempts":2,"successful":2,"matches":2,"stable_ratio":1.0,"baseline_signature":"991b9e67ca29815d455a5202eb4f2bac1cd01d51ead5d1ae82ee0cdf4853ea84","errors":[]}},"session_resume_probe":{"status":"warning","latency_ms":null,"details":{"reason":"no_session_id","transport":"streamable-http","resume_expected":true,"protocol_version":"2024-11-05"}},"step_up_auth_probe":{"status":"warning","latency_ms":null,"details":{"oauth_present":true,"auth_required_checks":["prompts_list","resources_list"],"supported_scopes":["address","created_at","email","email_verified","family_name","given_name","identities","name","nickname","offline_access","openid","phone","picture","profile"],"scope_specificity_ratio":0.0667,"broad_scopes":[],"challenge_headers":["API-Key realm=\"https://api.mcpanalytics.ai\"","API-Key realm=\"https://api.mcpanalytics.ai\""],"step_up_signals":[],"minimal_scope_documented":false}},"transport_compliance_probe":{"status":"error","latency_ms":88.96,"details":{"transport":"streamable-http","session_id_present":false,"protocol_header_present":false,"last_event_id_visible":false,"requested_protocol_version":"2024-11-05","bad_protocol_status_code":200,"bad_protocol_payload":{"jsonrpc":"2.0","id":410,"result":{"tools":[{"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.","inputSchema":{"type":"object","properties":{"section":{"type":"string","enum":["home","billing","upgrade","create","upload","reports"],"description":"Where to send the user"}},"required":[]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"about","description":"Platform documentation and info — how it works, tiers, usage.","inputSchema":{"type":"object","properties":{"topic":{"type":"string","description":"Topic: platform, manual, connectors, or a docs section"}},"required":["topic"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"agent_advisor","description":"AI help desk — which analysis fits your question, interpreting results, fixing errors. Multi-turn.","inputSchema":{"type":"object","properties":{"message":{"type":"string","description":"Your question or request"}},"required":["message"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"data":{"type":"array","description":"Rows as an array of flat objects — creates the dataset in one call","items":{"type":"object"}},"expires_in":{"type":"integer","description":"Token expiration in seconds","default":300}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"name":"datasets_list","description":"List and search your uploaded datasets — fuzzy matching on name, description, and tags. Returns each dataset's uuid:// reference for use in create_analysis and run_analysis.","inputSchema":{"type":"object","properties":{"search":{"type":"string","description":"Search by name, description, or tags"},"limit":{"type":"integer","description":"Max results","default":20}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Plain-language search over your library + the Standard Library; omit to list everything"}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"tools_schema","description":"Get an analysis's parameter schema — ALWAYS call before run_analysis.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"Name of the analysis"}},"required":["tool_name"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"run_analysis","description":"Run an analysis on your data. Returns a shareable interactive report URL — validated statistics you can cite, re-run, and share.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"Name of the analysis to run"},"taskList":{"type":"object","description":"Execution inputs. Call tools_schema first for the analysis-specific fields.","properties":{"inputs":{"type":"object","properties":{"dataset":{"type":"string","description":"Dataset reference: uuid://UUID:KEY from datasets_upload/datasets_list"},"userContext":{"type":"object","description":"Business context: objective (what you want to learn, required) and company"},"column_mapping":{"type":"object","description":"Analysis-specific column mapping — see tools_schema"},"module_parameters":{"type":"object","description":"Analysis-specific parameters — see tools_schema"}}}}}},"required":["tool_name","taskList"]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"fuzzy_request":{"type":"string","description":"Plain-language description of the analysis you want"},"dataset_ref":{"type":"string","description":"Single-dataset URI: 'uuid://UUID:KEY'"},"datasets_refs":{"type":"object","description":"Multi-dataset URIs keyed by role"},"tier":{"type":"string","enum":["snapshot","json","brief","deck"],"description":"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)"},"specification":{"type":"object","description":"Full 11-field spec (legacy path — prefer fuzzy_request)"},"column_mapping":{"type":"object","description":"Optional semantic-to-real column map (hint only)"},"notes":{"type":"string","description":"Optional context for the build — constraints, definitions, or preferences the analyst agents should honor"}},"required":[]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"tool_name":{"type":"string","description":"The analysis to modify (from discover_tools or your library)"},"changes":{"type":"string","description":"What to change, in plain language, e.g. 'also break it down by region' or 'use a random forest instead'"},"tier":{"type":"string","enum":["snapshot","json","brief","deck"],"description":"Optional — change the depth of the new version"},"dataset_ref":{"type":"string","description":"Optional — rebuild against a different dataset ('uuid://UUID:KEY')"}},"required":["tool_name","changes"]},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}},{"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.","inputSchema":{"type":"object","properties":{"pipeline_id":{"type":"integer","description":"pipeline_id from create_analysis"},"track_token":{"type":"string","description":"Token from the tracking URL"}},"required":[]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"ask_library","description":"Ask a question across all your delivered analyses — synthesized answer with citations back to specific reports.","inputSchema":{"type":"object","properties":{"question":{"type":"string","description":"Plain-language question to answer from your report library"}},"required":["question"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"reports_list","description":"Your report library — every analysis delivered, with status and links. Pass semantic_query to search report content in plain language.","inputSchema":{"type":"object","properties":{"semantic_query":{"type":"string","description":"Natural-language search over your reports' content"},"limit":{"type":"integer","description":"Max results","default":10}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"reports_view","description":"Get a shareable browser link for a report — viewable without authentication.","inputSchema":{"type":"object","properties":{"processing_id":{"type":"string","description":"Processing ID from run_analysis / reports_list"}},"required":["processing_id"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"report_cards","description":"Browse a delivered report's individual cards (charts, tables, insights) inline in chat.","inputSchema":{"type":"object","properties":{"processing_id":{"type":"string","description":"The report's processing id, returned by run_analysis or build_status"}},"required":["processing_id"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}}]}},"bad_protocol_headers":{"content-type":"application/json"},"bad_protocol_error":null,"delete_status_code":null,"delete_error":null,"expired_session_status_code":null,"expired_session_error":null,"issues":["missing_session_id","missing_protocol_header","bad_protocol_not_rejected"]}},"utility_coverage_probe":{"status":"ok","latency_ms":103.84,"details":{"completions":{"advertised":false,"sample_target":null,"live_probe":"not_executed"},"pagination":{"supported":false,"next_cursor_methods":[],"metadata_signal":false},"tasks":{"advertised":false,"probe_status":"auth_required","http_status":401},"initialize_capability_keys":["prompts","resources","tools"]}},"advanced_capabilities_probe":{"status":"warning","latency_ms":null,"details":{"capabilities":{"prompts":true,"resources":true,"completions":false,"roots":false,"sampling":false,"elicitation":false,"structured_outputs":false,"resource_links":false},"enabled_count":2,"enabled":["prompts","resources"],"initialize_capability_keys":["prompts","resources","tools"]}},"tool_snapshot_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_historical_snapshot","current_tool_count":15}},"connector_replay_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_historical_snapshot"}},"request_association_probe":{"status":"missing","latency_ms":null,"details":{"reason":"no_request_association_capabilities_advertised"}},"interactive_flow_probe":{"status":"ok","latency_ms":null,"details":{"risk_hits":[],"safe_hits":["browser"],"oauth_supported":true,"prompt_available":false}},"action_safety_probe":{"status":"error","latency_ms":null,"details":{"summary":{"tool_count":15,"high_risk_tools":5,"destructive_tools":0,"exec_tools":8,"egress_tools":0,"secret_tools":2,"bulk_access_tools":3,"risk_distribution":{"low":2,"medium":8,"high":4,"critical":1},"capability_distribution":{"write":8,"network":6,"filesystem":4,"admin":3,"other":2,"read":7,"secrets":2,"exec":8,"export":3}},"auth_present":true,"safeguard_count":0,"confirmation_signals":[]}},"official_registry_probe":{"status":"ok","latency_ms":null,"details":{"registry_source":"official_registry","registry_identifier":"ai.mcpanalytics/analytics","direct_match":true,"official_peer_count":1}},"provenance_divergence_probe":{"status":"ok","latency_ms":null,"details":{"direct_official_match":true,"registry_title":null,"server_card_title":"MCP Analytics","registry_version":null,"server_card_version":"1.0.5","registry_homepage":null,"server_card_homepage":"https://mcpanalytics.ai","registry_repository":null,"server_card_repository":"https://github.com/embeddedlayers/mcp-analytics","drift_fields":[],"metadata_document_count":2}},"connector_publishability_probe":{"status":"warning","latency_ms":null,"details":{"transport":"streamable-http","tool_count":15,"high_risk_tools":5,"blockers":["transport_compliance","action_safety"],"criteria":{"remote_transport":true,"initialize":true,"tools_list":true,"protocol_version":true,"session_resume":true,"step_up_auth":true,"transport_compliance":false,"connector_replay":true,"request_association":true,"action_safety":false,"server_card":true,"tool_surface":true,"auth_flow":true}}}},"score_components":{"auth_operability_score":4.0,"error_contract_score":1.5,"rate_limit_semantics_score":2.0,"schema_completeness_score":3.0,"backward_compatibility_score":2.0,"slo_health_score":4.0,"security_hygiene_score":3.0,"task_success_score":4.0,"trust_confidence_score":1.75,"abuse_noise_ratio_score":4.0,"prompt_contract_score":2.0,"resource_contract_score":2.0,"discovery_metadata_score":4.0,"registry_consistency_score":2.35,"installability_score":4.0,"session_semantics_score":4.0,"tool_surface_design_score":3.0,"result_shape_stability_score":2.0,"oauth_interop_score":4.0,"recovery_semantics_score":1.25,"maintenance_signal_score":3.0,"adoption_signal_score":2.0,"freshness_confidence_score":3.0,"transport_fidelity_score":4.0,"spec_recency_score":4.0,"session_resume_score":3.0,"step_up_auth_score":3.0,"transport_compliance_score":0.0,"utility_coverage_score":2.0,"advanced_capability_coverage_score":3.0,"connector_publishability_score":3.0,"tool_snapshot_churn_score":3.0,"connector_replay_score":3.0,"request_association_score":3.0,"interactive_flow_safety_score":4.0,"action_safety_score":2.0,"official_registry_presence_score":4.0,"provenance_divergence_score":4.0,"safety_transparency_score":2.0,"tool_capability_clarity_score":4.0,"destructive_operation_safety_score":3.0,"egress_ssrf_resilience_score":3.0,"execution_sandbox_safety_score":0.0,"data_exfiltration_resilience_score":3.75,"least_privilege_scope_score":2.0,"secret_handling_hygiene_score":2.0,"dependency_supply_chain_signal_score":2.0,"input_sanitization_safety_score":3.0,"tool_namespace_clarity_score":4.0},"validation_schema_version":"16d1d270090d6c8f","started_at":"2026-07-31T06:46:24.871572+00:00","completed_at":"2026-07-31T06:46:27.064627+00:00"},"current_snapshot":{"schema_version":"verify.trust_snapshot.v1","snapshot_id":"trustsnap_8d0c8c0e529eb5e3","generated_at":"2026-08-01T15:52:37.847595+00:00","source":"current_snapshot","server":"ai.mcpanalytics/analytics","last_validated_at":"2026-07-31T06:46:27.064627+00:00","validation_age_hours":33.1,"freshness":{"schema_version":"verify.freshness_profile.v1","last_validated_at":"2026-07-31T06:46:27.064627+00:00","age_hours":33.1,"bucket":"verified_last_7d","label":"Verified in last 7d","badges":["verified_last_7d"],"freshness_sla_hours":168.0,"freshness_sla_status":"met","stale_score_suppressed":false,"display_score":71.22,"raw_score":71.22,"confidence_score":59.2,"confidence_weighted_score":38.0,"tier_status":[{"tier":"community","label":"Community","freshness_sla_hours":720,"met":true,"priority_revalidation":false},{"tier":"pro","label":"Pro","freshness_sla_hours":168,"met":true,"priority_revalidation":true},{"tier":"enterprise","label":"Enterprise","freshness_sla_hours":24,"met":false,"priority_revalidation":true}]},"current_status":"healthy","current_score":71.22,"display_score":71.22,"stale_score_suppressed":false,"production_trust_decision":{"schema_version":"verify.executive_verdict.v1","decision":"Allow with approval","why":"exec-capable tools + no confirmation safeguards + high-risk tools need review + unauthenticated behavior not proven","next_action":"export policy, require approval for writes, add authenticated validation","reason_count":3},"production_readiness_class":{"code":"safe_for_evaluation","label":"Safe for evaluation","reason":"The server is suitable for evaluation, but remaining gaps should be resolved before broad production use."},"evidence_confidence":{"score":59.25,"label":"medium","validation_age_hours":33.1,"live_check_count":26},"active_alerts":[{"code":"validation_stale","severity":"medium","title":"Validation evidence is outside TrustOps SLA"}]},"trust_snapshot":{"schema_version":"verify.trust_snapshot.v1","snapshot_id":"trustsnap_8d0c8c0e529eb5e3","generated_at":"2026-08-01T15:52:37.847595+00:00","source":"current_snapshot","server":"ai.mcpanalytics/analytics","last_validated_at":"2026-07-31T06:46:27.064627+00:00","validation_age_hours":33.1,"freshness":{"schema_version":"verify.freshness_profile.v1","last_validated_at":"2026-07-31T06:46:27.064627+00:00","age_hours":33.1,"bucket":"verified_last_7d","label":"Verified in last 7d","badges":["verified_last_7d"],"freshness_sla_hours":168.0,"freshness_sla_status":"met","stale_score_suppressed":false,"display_score":71.22,"raw_score":71.22,"confidence_score":59.2,"confidence_weighted_score":38.0,"tier_status":[{"tier":"community","label":"Community","freshness_sla_hours":720,"met":true,"priority_revalidation":false},{"tier":"pro","label":"Pro","freshness_sla_hours":168,"met":true,"priority_revalidation":true},{"tier":"enterprise","label":"Enterprise","freshness_sla_hours":24,"met":false,"priority_revalidation":true}]},"current_status":"healthy","current_score":71.22,"display_score":71.22,"stale_score_suppressed":false,"production_trust_decision":{"schema_version":"verify.executive_verdict.v1","decision":"Allow with approval","why":"exec-capable tools + no confirmation safeguards + high-risk tools need review + unauthenticated behavior not proven","next_action":"export policy, require approval for writes, add authenticated validation","reason_count":3},"production_readiness_class":{"code":"safe_for_evaluation","label":"Safe for evaluation","reason":"The server is suitable for evaluation, but remaining gaps should be resolved before broad production use."},"evidence_confidence":{"score":59.25,"label":"medium","validation_age_hours":33.1,"live_check_count":26},"active_alerts":[{"code":"validation_stale","severity":"medium","title":"Validation evidence is outside TrustOps SLA"}]},"snapshot_invariant":{"schema_version":"verify.snapshot_invariant.v1","server":"ai.mcpanalytics/analytics","ok":true,"surface_snapshot_ids":{"page":"trustsnap_8d0c8c0e529eb5e3","badge":null,"report":"trustsnap_8d0c8c0e529eb5e3","policy":null},"checked_at":"2026-08-01T15:52:38.710855+00:00"},"history":{"points":[{"timestamp":"2026-07-31T06:46:27.064627+00:00","score":71.22,"status":"healthy","latency_ms":2191.73,"tool_count":15,"prompt_count":0,"resource_count":0}],"status_counts":{"healthy":1},"score_delta_7d":null,"score_delta_30d":null,"avg_latency_ms":2191.73,"healthy_ratio_recent":1.0,"freshness_hours":33.1,"latest_status":"healthy"},"production_readiness":{"code":"safe_for_evaluation","label":"Safe for evaluation","reason":"The server is suitable for evaluation, but remaining gaps should be resolved before broad production use.","badge":"score-medium","critical_alerts":0},"agent_commerce_readiness":{"status":"beta","commerce_signal":"moderate","payment_execution_detected":"no","billing_or_usage_detected":"yes","quote_or_pricing_detected":"no","numeric_price_context":"yes","commercial_quote_context":"no","checkout_or_charge_detected":"no","checkout_term_observed":"no","payment_capable":"inferred","payment_rails":[],"purchase_stage_supported":["usage_metering"],"human_confirmation_required":"unknown","spending_policy_supported":"yes","receipt_supported":"unknown","refund_policy_present":"unknown","operator_identity":"declared","auth_required":"yes","auth_scheme":"oauth","tool_risk_level":"administrative","tool_risk_score":70,"pricing_transparency":"partial","schema_change_detected":"unknown","delegation_level":"usage_metering_context","evidence_level":"inferred","confidence":"medium","highest_risk_tools":[{"name":"account_link","risk_level":"administrative"},{"name":"datasets_upload","risk_level":"administrative"},{"name":"datasets_list","risk_level":"write_capable"},{"name":"discover_tools","risk_level":"write_capable"},{"name":"create_analysis","risk_level":"administrative"},{"name":"build_status","risk_level":"write_capable"}],"skipped_unsafe_tools":["account_link","datasets_upload","datasets_list","discover_tools","run_analysis","create_analysis","modify_analysis","build_status"],"last_checked_at":"2026-08-01T15:52:37.834284+00:00","evidence":[{"field":"commerce_signal","value":"moderate","evidence_level":"observed","source":"tool_schema","matched_terms":["billing","limit","usage","rate"],"sample":"account_link","confidence":"medium","last_checked_at":"2026-08-01T15:52:37.834284+00:00"}],"disclaimer":"Beta assessment. Verify detects evidence and risk signals but does not certify that this server is safe for autonomous purchases.","scores":{"auth_posture_score":90,"tool_risk_score":70,"payment_readiness_score":35,"agent_delegation_safety_score":50,"overall_agent_commerce_score":56},"warnings":["Verify observed commerce-adjacent billing, usage, or pricing context, but did not observe a tool that can execute payment."],"recommended_fixes":["Clarify whether observed billing, usage, or pricing context can execute payment or is informational only."]},"evidence_confidence":{"score":59.25,"label":"medium","reason":"Based on 1 recent validations, 26 captured checks, and validation age of 33.1 hours.","live_check_count":26,"validation_age_hours":33.1},"recommended_for":[{"label":"OpenAI connectors","reason":"OpenAI connectors is marked compatible with score 89."},{"label":"Claude Desktop","reason":"Claude Desktop is marked compatible with score 83."},{"label":"Smithery","reason":"Smithery is marked compatible with score 80."},{"label":"Generic Streamable HTTP","reason":"Generic Streamable HTTP is marked compatible with score 100."}],"active_alerts":[{"code":"validation_stale","severity":"medium","title":"Validation evidence is outside TrustOps SLA","message":"Latest validation is 33.1 hours old, beyond the configured 24h TrustOps alert threshold."}],"remediations":[{"code":"add_confirmation_semantics","severity":"high","title":"Add confirmation and dry-run semantics for risky actions","why":"High-risk write, delete, exec, or egress tools should communicate safeguards clearly.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null},{"code":"fix_transport_compliance","severity":"high","title":"Align session and protocol behavior with Streamable HTTP expectations","why":"Clients increasingly rely on MCP-Protocol-Version, session teardown, and expired-session semantics.","action":"Align MCP-Protocol-Version, MCP-Session-Id, DELETE teardown, and expired-session handling with the transport spec.","playbook":["Return `Mcp-Session-Id` and `Mcp-Protocol-Version` headers consistently on streamable HTTP responses.","Honor `DELETE` session teardown and return `404` when a deleted session is reused.","Reject invalid protocol-version headers with `400 Bad Request`."],"maintainer_context":null},{"code":"enforce_request_association","severity":"high","title":"Associate roots, sampling, and elicitation with active client requests","why":"Modern MCP guidance expects roots, sampling, and elicitation traffic to be tied to an active client request instead of arriving unsolicited on idle sessions.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null},{"code":"protect_connector_refreshes","severity":"high","title":"Keep connector refreshes backward compatible","why":"Managed connector clients freeze tool snapshots, so removed tools, new required args, and breaking output changes can break published integrations after refresh.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null},{"code":"update_protocol_version","severity":"medium","title":"Adopt a current MCP protocol revision","why":"Older protocol revisions reduce compatibility with newer clients and registry programs.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null},{"code":"improve_connector_publishability","severity":"medium","title":"Close connector-publishing gaps","why":"Connector catalogs care about protocol recency, session behavior, auth clarity, and tool-surface stability.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null},{"code":"tighten_step_up_auth","severity":"medium","title":"Document minimal scopes and return cleaner auth challenges","why":"Modern clients expect granular scopes and step-up auth signals such as WWW-Authenticate scope hints.","action":"Return granular scopes and WWW-Authenticate challenge hints instead of forcing overly broad auth upfront.","playbook":["Advertise the narrowest viable scopes in OAuth metadata.","Return `WWW-Authenticate` challenges with scope or insufficient-scope hints when additional consent is needed.","Revalidate with both public discovery and auth-required flows."],"maintainer_context":null},{"code":"stabilize_tool_surface","severity":"medium","title":"Reduce tool-surface churn","why":"Frequent add/remove or output-shape drift makes published connectors and cached tool snapshots brittle.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null},{"code":"fix_prompts_list","severity":"medium","title":"Repair prompts/list or stop advertising prompts","why":"Prompt metadata should either work live or be removed from the advertised capability set.","action":"Only advertise prompts if prompts/list works and prompt arguments are documented.","playbook":["Only advertise prompts that are actually accessible.","Add prompt descriptions and argument docs.","Run a live `prompts/list` check after any prompt changes."],"maintainer_context":null},{"code":"fix_resources_list","severity":"medium","title":"Repair resources/list or stop advertising resources","why":"Resource metadata should either work live or be removed from the advertised capability set.","action":"Only advertise resources if resources/list works and resources expose stable URIs/types.","playbook":["Only advertise resources with stable URIs and read semantics.","Add MIME/type hints where possible.","Run a live `resources/list` and `resources/read` check after updates."],"maintainer_context":null},{"code":"respond_validation_stale","severity":"medium","title":"Respond to validation evidence is outside trustops sla","why":"Latest validation is 33.1 hours old, beyond the configured 24h TrustOps alert threshold.","action":"Trigger a fresh validation run or raise scheduler priority when this server must meet the TrustOps alert threshold.","playbook":["Queue a new validation run now.","Inspect whether the scheduler priority should be raised for this server.","Do not treat evidence outside the TrustOps alert threshold as a fresh production decision without review."]},{"code":"repair_session_resume","severity":"medium","title":"Support resumable HTTP sessions cleanly","why":"Modern MCP clients increasingly expect resumable session behavior on streamable HTTP transports.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null},{"code":"expand_advanced_capabilities","severity":"low","title":"Publish newer MCP capability signals","why":"Roots, sampling, elicitation, structured outputs, and related metadata improve client understanding and ranking.","action":"Inspect the latest validation evidence and resolve the client-visible regression.","playbook":["Inspect the latest validation evidence.","Resolve the highest-severity client-facing gap first.","Revalidate and confirm the score and verdict improve."],"maintainer_context":null}],"publisher_claim":{"verified":false,"status":"unclaimed","claim_url":"https://verify.sentinelsignal.io/claim?server=ai.mcpanalytics%2Fanalytics&source=report_json","reason_code":"machine_attention_detected","reason":"Agents and crawlers are already evaluating this server. Claim to publish authoritative owner, security, trust, and integration metadata.","score_neutral":true},"observed_attention":{"schema":"verify.observed_attention.v1","window_days":30,"level":"moderate","label":"Moderate observed attention","summary":"Recent machine-readable trust and discovery activity observed for this server.","segments":{"useful_ai_user":{"level":"none","observed":false,"description":"AI-assisted user sessions such as ChatGPT/User or Claude/User."},"machine_trust_evaluator":{"level":"none","observed":false,"description":"Synthetic sessions inspecting multiple trust surfaces such as report, policy, ledger, badge, trust-summary, or compare."},"possible_agent_or_script":{"level":"none","observed":false,"description":"Structured direct sessions with rapid profile, compare, report, policy, badge, or trust-surface fan-out."},"isolated_machine_surface":{"level":"none","observed":false,"description":"Aged-out direct synthetic singleton sessions that touched a machine-readable trust surface without becoming a broader evaluator."},"ai_crawler":{"level":"moderate","observed":true,"description":"Known AI crawler activity such as ClaudeBot, GPTBot, or similar crawlers."},"search_crawler":{"level":"none","observed":false,"description":"Search and SEO crawler activity."},"browser_like_automation":{"level":"none","observed":false,"description":"Browser-like synthetic sessions with rapid structured endpoint activity."},"confirmed_human":{"level":"none","observed":false,"description":"Confirmed browser-session human activity."}},"surfaces_observed":{"server_profile":true,"compare":false,"compare_json":false,"compare_api":false,"report_json":true,"policy":true,"ledger":false,"badge_metadata":true,"badge_svg":false,"trust_summary":true,"mcp_tool":false},"claim_prompt":{"recommended":true,"reason":"This server has recent machine attention. A verified publisher claim can improve owner, policy, security, and trust metadata available to agents."},"notes":["Observed attention is based on segmented first-party telemetry.","Crawler and evaluator activity is not treated as confirmed human demand.","Public levels are bucketed to avoid exposing raw traffic counts."]},"owner_activation":{"claim_recommended":true,"reason":"ai_discovery_detected","headline":"AI discovery detected","message":"This server is being discovered by AI users, crawlers, or machine trust evaluators on Verify. Claim this profile to add publisher metadata, official links, a security contact, and machine-readable trust details agents can use.","claim_url":"https://verify.sentinelsignal.io/claim?server=ai.mcpanalytics%2Fanalytics&source=report_json","trust_summary_url":"https://verify.sentinelsignal.io/v1/servers/ai.mcpanalytics/analytics/trust-summary"},"related_machine_surfaces":{"compare_index":"/compare.json","compare_api":"/v1/compare?server=ai.mcpanalytics%2Fanalytics","trust_summary":"/v1/servers/ai.mcpanalytics/analytics/trust-summary","ledger":"/v1/servers/ai.mcpanalytics/analytics/ledger","policy":"/v1/servers/ai.mcpanalytics/analytics/policy","report":"/v1/servers/ai.mcpanalytics/analytics/report"},"intelligence_api":{"available":true,"signup_url":"https://verify.sentinelsignal.io/verify-intelligence-api","use_case":"Programmatic MCP server trust, comparison, policy, and evidence enrichment."}}