MCP Analytics
MCP Analytics is an AI-powered platform for statistical analysis, machine learning, and forecasting that lets you analyze data through natural language in AI assistants like Claude or Cursor.
Core Analysis Capabilities
Run 50+ statistical and ML tools: regression, clustering, hypothesis testing, time series forecasting, neural networks, survival analysis, and more
Business analytics: customer LTV, churn prediction, A/B testing, segmentation, and pricing models
Ask questions in plain English (e.g., "What drives our sales growth?") and get automated analysis
Use the AI advisor (
agent_advisor) for conversational guidance and result interpretation
Data Management
Upload CSV files (Shopify, Stripe, WooCommerce, etc.) or connect live sources like Google Analytics 4 and Google Search Console
List, preview, search, download, and update dataset metadata
Tool Discovery & Execution
Semantically search for the right analysis tool based on your question or data (
discover_tools)Inspect tool documentation, assumptions, data requirements, and schemas before running (
tools_info,tools_schema)Execute analyses and receive interactive HTML reports with visualizations and AI-written insights
Reporting
View, list, and semantically search past analysis reports
Retrieve individual report card data for rendering
Platform & Administration
Check credit balance, subscription status, and access the billing portal
Request custom analysis modules for unique use cases
Enterprise-grade security: OAuth2, TLS 1.3 encryption, isolated Docker containers, and ephemeral data handling
Compatible with Claude Desktop, Cursor, Windsurf, and any MCP-compatible client
Allows for statistical analysis and reporting on eBay data to transform business questions into actionable insights.
Provides native connectors to pull live Google Analytics 4 data for advanced modeling and seasonal analysis.
Connects to Google Search Console to retrieve and analyze search performance data for causal and trend analysis.
Enables analysis of Shopify order and store data to perform statistical modeling, sales forecasting, and customer segmentation.
Integrates with Stripe data to perform financial analytics, including revenue forecasting, churn prediction, and regression modeling.
Supports analyzing WooCommerce data to provide business insights, customer lifetime value (LTV) analysis, and seasonal trend detection.
MCP Analytics Suite
The statistical analyst in your AI chat. Bring a CSV (or connect a live source) and a question. A standing team of specialist agents builds a custom analysis specific to your data, validates the methodology, and ships back a citable, interactive report. The analysis is yours — it lives in your library, reruns on fresh data for a fraction of the creation cost, and is queryable from Claude, Cursor, or any MCP client. The work compounds.
This is the public listing and documentation repository. Issues, feature requests, and examples live here. The API server code is maintained separately.
Sample Reports → • Try Demo → • Pricing →
Try it before installing anything. The free tools run in the browser on a CSV you upload — no account, no key, no MCP client. Each one is a real analysis with the method written out: PCA, correlation, forecasting, RFM segmentation, regression (GLM).
Hire the team. Own the analysis. Rerun forever.
🚀 Quick Start • 🔄 How It Works • 🛠️ MCP Tools • 🛡️ Security • 📖 Documentation

Click to watch: Ask a question → upload data → get an interactive report with AI insights
Overview
You bring data and a question. A pipeline of specialist agents — spec drafter, builder, verifier, fixer, deployer — turns your question into a custom analysis for your data. The result is an interactive report: charts, AI-narrated insights, exportable PDF, embedded source code, citable. Every commissioned analysis joins your private library — query it from any MCP client, rerun on fresh data with one call, share with collaborators on your terms.
Cornerstone modules ship pre-built (t-tests, regression, churn, segmentation, forecasting, customer LTV, A/B testing, time series, survival analysis, and more) so you can see a finished report in under a minute and verify the team can build things that work. Custom analysis creation is the named revenue event — pay once to build the capability, own it, rerun for a fraction of the creation price. A build that fails is never billed.
Connect data however it lives: CSV upload, public URL, or live OAuth connectors for Google Analytics 4 and Google Search Console (more coming). Once a connector is linked, every rerun pulls fresh data automatically — no re-export step.
Choose Your Depth — Four Tiers
Every analysis runs through the same validated pipeline — you choose how far it goes:
Tier | What you get | Time |
Snapshot | One chart and a verified insight — an instant read of your data, covered by your welcome credits | ~2 min |
JSON | One computed statistical answer — the numbers and the method — deployed as a tool you re-run on fresh data | ~5 min |
Brief | The computed answer, presented — chart, key figures, and method on a single shareable page | ~7 min |
Deck | The full study — a complete statistical report built to your brief and independently verified; a durable module you own and re-run forever | 30–45 min |
More rigor outranks more charts: going deeper buys real statistical methods — hypothesis tests, regression, diagnostics — not just more cards. You pay for depth, and only if the build succeeds. How the tiers work →
Why MCP Analytics
Citable — APA / MLA / Chicago / BibTeX in one click, ready for papers, decks, and regulatory filings
Sourceable — R source code embedded in every report; a skeptical reader can run it and get the same answer
Reproducible — fixed seeds, Docker isolation, validated methods; same input → same output, forever
Yours — every commissioned module is private to your account; rerun on fresh data, query across your portfolio
MCP-native — query the library from Claude, Cursor, Windsurf, or any MCP client
Secure — OAuth2, encryption at rest, isolated container processing per analysis
Honest — when an analysis has issues, the team gives you a free re-run; the relationship is built on the report being right
Related MCP server: MCP Tabular Data Analysis Server
Quick Start
1. Get an API Key
Sign up free at account.mcpanalytics.ai, go to account settings, and copy your API key (starts with mcp_). You get 500 welcome credits — no credit card required. That covers a one-page Brief, or a couple of instant Snapshots.
2. Connect
Three options — all connect to the same platform with the same tools.
Option A: npx Install (Recommended)
Works with Claude Desktop, Cursor, Windsurf, and any stdio MCP client. Requires Node.js 18+.
Claude Desktop — add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"mcpanalytics": {
"command": "npx",
"args": ["-y", "@mcp-analytics/mcp-analytics"],
"env": {
"MCP_ANALYTICS_API_KEY": "mcp_your_key_here"
}
}
}
}Cursor / Windsurf — add to .cursor/mcp.json:
{
"mcpServers": {
"mcpanalytics": {
"command": "npx",
"args": ["-y", "@mcp-analytics/mcp-analytics"],
"env": {
"MCP_ANALYTICS_API_KEY": "mcp_your_key_here"
}
}
}
}Claude Code — run in your terminal:
claude mcp add mcpanalytics -- npx -y @mcp-analytics/mcp-analytics
# Then set MCP_ANALYTICS_API_KEY in your environmentOption B: Direct API Key (No npm)
For MCP clients that support Streamable HTTP transport with custom headers:
{
"mcpServers": {
"mcpanalytics": {
"url": "https://api.mcpanalytics.ai/mcp/api-key",
"headers": {
"X-API-Key": "mcp_your_key_here"
}
}
}
}Option C: OAuth2 (No API Key)
Zero-config — a browser opens for login on first connection:
{
"mcpServers": {
"mcpanalytics": {
"url": "https://api.mcpanalytics.ai/auth0"
}
}
}Browse Tools First (No Account Needed)
Explore the full tool catalog before signing up:
# Static metadata (tool names, descriptions, all transport options)
curl https://api.mcpanalytics.ai/.well-known/mcp.json
# MCP protocol discovery (no auth — works with any MCP client)
curl -X POST https://api.mcpanalytics.ai/mcp/discover \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","method":"tools/list","id":1,"params":{}}'3. Start Analyzing
Restart your MCP client. Ask:
"Upload sales.csv and find what drives revenue"
"What statistical test should I use for this survey data?"
"Forecast next quarter's sales from this time series"
How It Works
The MCP Analytics Workflow
Upload your data —
datasets_uploadsecurely processes your CSV (or reuse an existing dataset / connected source)Commission the analysis —
create_analysistakes your question in plain language, your dataset, and the tier you choose (snapshot, json, brief, or deck)Watch it build —
build_statusreports progress, queue position, and the report link when doneGet the report —
reports_viewdelivers the interactive report;report_cardsdisplays individual cards inlineRerun forever —
run_analysisre-runs any analysis you own on fresh data for a fraction of the creation cost
User: "What drives our sales growth?"
MCP Analytics:
→ Scopes the right statistical method for your data's shape
→ Writes validated R in an isolated container — deterministic, fixed seeds
→ Runs it, then independently verifies numbers and narrative
→ Returns a citable, interactive report you ownMCP Tools
The platform provides a complete suite of MCP tools for end-to-end analytics:
Analysis
create_analysis- Commission a new analysis from a plain-language question, at the tier you choosebuild_status- Track a build: stage progress, queue position, report linkrun_analysis- Run an analysis you own (or one discovered viadiscover_tools) on fresh datamodify_analysis- Turn an existing analysis into a new version — reword the question, change the framing
Discovery
discover_tools- Browse what you can run: your commissioned analyses plus the prebuilt librarytools_schema- Get an analysis's parameter schema — always call this beforerun_analysis
Data Management
datasets_upload- Secure data upload with encryptiondatasets_list- List and search your uploaded datasets
Connectors
connectors_list- List available data source connectionsconnectors_query- Pull live data from a connected source
Reporting & Insights
reports_view- Get a shareable browser link for a reportreports_list- Your report library — every analysis delivered, searchable in plain languagereport_cards- Browse a delivered report's individual cards (charts, tables, insights)ask_library- Ask one question across all your delivered analyses; get a synthesized answer with citations back to each source reportagent_advisor- AI help desk — which analysis fits your question, and how to read the result
Platform Tools
billing- Usage and credit managementaccount_link- Link to the right account page for anything not doable in chatabout- Platform documentation and info — how it works, tiers, usage
Browse the catalog yourself, without an account:
curl -X POST https://api.mcpanalytics.ai/mcp/discover -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","method":"tools/list","id":1,"params":{}}'Discovery returns the 15 tools that work pre-auth;billing,connectors_list, andconnectors_queryappear once you connect with a key or via OAuth.
Features
Natural Language Interface
Just describe what you need:
"What drives our revenue growth?"
"Find customer segments in our data"
"Forecast next quarter's sales"
"Did our marketing campaign work?"Comprehensive Analysis Suite
Statistical Methods
Regression Analysis
Advanced Modeling
Hypothesis Testing
Survival Analysis
Bayesian Methods
Machine Learning
Ensemble Methods
Boosting Algorithms
Neural Networks
Clustering
Dimensionality Reduction
Time Series
Forecasting
Seasonal Analysis
Trend Detection
Multivariate Models
Causal Analysis
Business Analytics
Customer Analytics
Market Analysis
Pricing Models
Predictive Analytics
Experimental Design
Seamless Workflow
graph LR
A[Ask in Claude/Cursor] --> B[MCP Analytics]
B --> C[Secure Processing]
C --> D[Interactive Report]
D --> E[Share Results]Example Usage
Basic Regression
User: "I have a CSV with house prices. Can you predict price based on size and location?"
Claude: [Runs linear regression, provides R², coefficients, and diagnostic plots]Customer Segmentation
User: "Segment my customers in sales_data.csv into meaningful groups"
Claude: [Performs k-means clustering, creates segment profiles with visualizations]Time Series Forecasting
User: "Forecast next quarter's revenue using our historical data"
Claude: [Applies ARIMA, generates predictions with confidence intervals]Security & Compliance
Enterprise Security Features
Authentication: OAuth2 via Auth0 with PKCE
Encryption: TLS 1.3 for all data transfers
Processing: Isolated Docker containers per analysis
Data Handling: Ephemeral processing, no persistence
Access Control: OAuth 2.0 scoped permissions with usage limits
Audit Trail: Complete logging for compliance
Privacy & Data Handling
Data Privacy: Ephemeral processing, no data retention
User Rights: Data deletion upon request
Secure Processing: Isolated containers per analysis
Enterprise Options: Contact us for compliance requirements
Read full security documentation →
Architecture
flowchart TB
subgraph "Client Integration"
CLI[CLI/SDK]
Claude[Claude Desktop]
Cursor[Cursor IDE]
MCP[MCP Protocol]
end
subgraph "API Gateway"
LB[Load Balancer]
Auth[OAuth 2.0/Auth0]
Rate[Rate Limiting]
end
subgraph "Processing Layer"
Router[Request Router]
Queue[Job Queue]
Workers[Processing Workers]
Docker[Docker Containers]
end
subgraph "Analytics Engine"
Stats[Statistical Methods]
ML[Machine Learning]
TS[Time Series]
Report[Report Generation]
end
subgraph "Data Layer"
Cache[Results Cache]
Storage[Secure Storage]
Encrypt[Encryption Layer]
end
CLI --> LB
Claude --> LB
Cursor --> LB
MCP --> LB
LB --> Auth
Auth --> Rate
Rate --> Router
Router --> Queue
Queue --> Workers
Workers --> Docker
Docker --> Stats
Docker --> ML
Docker --> TS
Stats --> Report
ML --> Report
TS --> Report
Report --> Cache
Cache --> Storage
Storage --> Encrypt
style Auth fill:#e8f5e9
style Docker fill:#fff3e0
style Report fill:#e3f2fdPerformance
Dataset Size: Handles large datasets
Processing Time: Fast cloud-based processing
Secure Infrastructure: Isolated Docker containers
API Access: RESTful API with authentication
Getting Started
Visit our website for pricing and signup →
Documentation
Quick Start Guide - Get running in under a minute
Architecture - How the platform works
Connectors - GA4, GSC, and CSV data sources
Pricing - Credits, tiers, and plans
How Credits Work - The credit model explained
Security - Security & compliance details
Tutorials - Step-by-step guides
Support
Issues: GitHub Issues
Email: support@mcpanalytics.ai
Docs: mcpanalytics.ai/docs
Enterprise: sales@mcpanalytics.ai
Comparison with Other MCP Servers
Feature | MCP Analytics | Google Analytics MCP | PostgreSQL MCP | Filesystem MCP |
Use Case | Statistical Analysis | Web Metrics | Database Queries | File Access |
Setup Time | 30 seconds | OAuth + Config | Connection string | Path config |
Data Sources | Any CSV/JSON/URL | GA4 Only | PostgreSQL Only | Local files |
Analysis Tools | Full Suite | GA4 Metrics | SQL Only | Read/Write |
Machine Learning | ✅ Full Suite | ❌ | ❌ | ❌ |
Visualizations | ✅ Interactive | ✅ Dashboards | ❌ | ❌ |
Shareable Reports | ✅ | ❌ | ❌ | ❌ |
About MCP Analytics
MCP Analytics is built by data scientists and engineers passionate about making advanced statistical analysis accessible through AI assistants. The platform runs validated, deterministic analysis modules — the same data and tool produce the same result every time, unlike LLM code generation.
Testing & Support
Testing Your Connection
After installation, restart your MCP client and look for "MCP Analytics" in the available tools. You should see tools like create_analysis, discover_tools, datasets_upload, etc.
# Test the stdio proxy directly:
MCP_ANALYTICS_API_KEY=mcp_your_key npx -y @mcp-analytics/mcp-analytics
# Should output a "[mcp-analytics] Connected to https://api.mcpanalytics.ai" line with the tool countTroubleshooting
If MCP Analytics doesn't appear after installation:
Ensure your config file is valid JSON
Restart your MCP client completely
Verify your API key starts with
mcp_Check the client's developer console for errors
Try running the npx command in a terminal to see errors
For support: support@mcpanalytics.ai
Contributing
While the core server is proprietary, we welcome contributions to:
Documentation improvements
Example notebooks and use cases
Bug reports and feature requests
Community tools and integrations
See CONTRIBUTING.md for guidelines.
License
Copyright © 2026 PeopleDrivenAI LLC. All Rights Reserved.
MCP Analytics is a product of PeopleDrivenAI LLC.
This is commercial software. Use of the MCP Analytics service is subject to our:
Ready to transform your data analysis workflow?
Get Started Free | Read Docs | View Demo
Built by MCP Analytics | Powered by R & Python
If MCP Analytics saves you time, a ⭐ on GitHub helps others find it.
Tags: mcp mcp-server model-context-protocol analytics data-analytics shopify-analytics stripe-analytics csv-analysis statistics machine-learning time-series clustering regression business-intelligence claude cursor ai-tools no-code-analytics forecasting customer-analytics
Available Tools
19 toolsaboutCInspect
Get platform info, pricing, usage stats, or documentation.
| Name | Required | Description | Default |
|---|---|---|---|
| topic | Yes | Topic: platform, pricing, current_usage, manual, or a docs section |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It implies a read operation ('get') but doesn't explicitly state read-only, safety, or side effects. No mention of authentication or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with all key information. No redundant words. Could be slightly more structured but efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one required parameter and no output schema, the description is moderately complete. It doesn't describe response format or behavior for different topics, which would be helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and describes the 'topic' parameter similarly. The description adds examples of valid topics (platform, pricing, etc.), which provides some additional context but not extensive meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves platform info, pricing, usage stats, or documentation. It uses the verb 'get' and specifies the resource (platform info, etc.), distinguishing it from siblings like 'billing' or 'tools_info'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance. While it lists topics, it doesn't explain when to prefer this over siblings like 'tools_schema' or 'reports_list' for similar info retrieval.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agent_advisorCInspect
Conversational AI that guides analysis and interprets results.
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | Your question or request |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden but only states it is conversational and guides analysis/interprets results. It does not disclose whether it is stateless, read-only, or any side effects, which is insufficient for a conversational tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence with no waste, but it could include more specificity. The structure is efficient but overly brief.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (one parameter, no output schema), the description is somewhat complete but lacks mention of return value or any constraints. It is minimally adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers the parameter 'message' fully with a description. The description adds no extra meaning beyond the schema, but schema coverage is 100%, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is a conversational AI for guiding analysis and interpreting results, making the purpose understandable. However, it does not differentiate from sibling tools like discover_tools or tools_run, which might also involve guidance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. It does not provide context or constraints for its application, leaving an agent uncertain about appropriate use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
billingAInspect
Check credit balance, subscription status, or open billing portal.
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | Billing action | status |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden. It indicates only read-like actions (check, open) but does not disclose if any action has side effects (e.g., opening portal might redirect). The description is adequate but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the core purpose and actions. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one optional parameter, no output schema), the description is sufficient for an agent to understand its purpose. Could briefly note that it returns billing information, but not required.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds value by listing the three enum actions in a human-readable sentence, complementing the schema's formal definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's actions: check credit balance, subscription status, or open billing portal. This distinguishes it from sibling tools which cover different domains like agents, datasets, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for billing-related queries but does not explicitly state when to use this tool vs alternatives. There is no guidance on prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
connectors_listAInspect
List available data connectors — GA4, Google Search Console, and more.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It does not disclose whether the tool is read-only, requires authentication, or what happens on error. The minimal description leaves behavioral traits unclear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise single sentence with no wasted words. It front-loads the purpose and includes a concrete example.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and no output schema, the description is minimally adequate. However, more context (e.g., whether the list is dynamic or static, how to interpret the output) would improve completeness, especially given the number of sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, so the description naturally cannot add parameter details. However, it adds value by listing example connectors (GA4, Google Search Console), which gives context beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool lists available data connectors and gives specific examples (GA4, Google Search Console), clearly distinguishing it from sibling tools like connectors_query.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as connectors_query. The description only states what it does, without any when-to-use or when-not-to-use context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
connectors_queryBInspect
Pull live data from a connected source using connector:// URIs.
| Name | Required | Description | Default |
|---|---|---|---|
| uri | Yes | Connector URI (e.g., connector://mcpanalytics_gsc/search_analytics?...) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present. The description only states the tool pulls 'live data', implying a read operation, but does not disclose any behavioral traits such as permission requirements, error behavior, rate limits, or whether the operation is synchronous.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the action and purpose. It is efficient and contains no wasted words, though it omits details that could be included without sacrificing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the basic functionality but lacks information on return values, error handling, data format, or any constraints. For a simple tool with one parameter, this is minimally adequate but could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The tool description repeats the URI format but adds an example (connector://mcpanalytics_gsc/search_analytics?...), which provides minimal additional meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the action ('Pull live data'), the target ('from a connected source'), and the method ('using connector:// URIs'). It distinguishes the tool from siblings like 'connectors_list' by focusing on data retrieval rather than listing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites, limitations, or context. The example URI is given but without explanation of when it is appropriate to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
datasets_downloadAInspect
Generate a single-use download token for securely downloading datasets.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Dataset UUID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries burden. It discloses 'single-use' and 'secure', but does not mention side effects, authentication needs, or whether previous tokens are invalidated. Provides partial transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, concise and to the point. No unnecessary words, front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool is simple with one required parameter and no output schema. Description explains core functionality; missing details like return format (e.g., token string) but acceptable given simplicity. Nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (uuid defined as 'Dataset UUID'). Description adds context ('single-use download token') but does not significantly augment parameter meaning beyond schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action ('generate'), the resource ('single-use download token'), and the purpose ('securely downloading datasets'). It distinguishes from sibling tools like datasets_list (listing), datasets_read (reading metadata), datasets_upload (uploading), and datasets_update (modifying).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives, such as first using datasets_list or datasets_read to obtain the UUID. The description implies usage for downloading but lacks prerequisites or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
datasets_listAInspect
List and search uploaded datasets with fuzzy matching.
| Name | Required | Description | Default |
|---|---|---|---|
| search | No | Search by name, description, or tags | |
| limit | No | Max results |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions 'fuzzy matching' but lacks details on pagination, ordering, or what fields are returned, leaving gaps in behavioral understanding.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no redundancy. Every word earns its place, making it highly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with two parameters and no output schema, the description covers the main purpose. However, it could mention what the response contains or ordering defaults to be fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds value by specifying 'fuzzy matching' for the search parameter, which is beyond the schema's generic description. The limit parameter's default is already in the schema, so the description doesn't add more.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists and searches uploaded datasets, with the key differentiator 'fuzzy matching' distinguishing it from siblings like datasets_read or datasets_download.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing/searching but provides no explicit guidance on when to choose this tool over alternatives like datasets_read for specific dataset retrieval.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
datasets_readBInspect
Read dataset contents — preview rows, columns, and types.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Dataset UUID | |
| secret | No | Dataset secret key | |
| rows | No | Number of rows to preview |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden. It states 'Read' and 'preview', implying non-destructive reads, but fails to disclose authentication requirements (e.g., secret needed for private datasets), potential errors, or rate limits. The behavior beyond the stated parameters remains opaque.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the action ('Read dataset contents') and specifies the output scope. Every word is purposeful with no redundancy or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool complexity (3 parameters, no output schema), the description adequately indicates the task but does not specify the return format (e.g., whether it returns rows as JSON, types as list) or pagination. Without annotations, more contextual completeness would be beneficial for correct agent invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter (uuid, secret, rows) having a description. The description adds 'preview rows, columns, and types' but does not elaborate on parameter semantics beyond what the schema already provides. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Read dataset contents — preview rows, columns, and types' provides a specific verb ('read') and resource ('dataset contents'), clearly distinguishing it from siblings like datasets_download (download), datasets_list (list metadata), and datasets_update (modify). It conveys the core functionality of previewing structure and sample data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no explicit guidance on when to use this tool versus alternatives such as datasets_download or datasets_list. The phrase 'preview rows, columns, and types' implies inspection, but there is no mention of when not to use it or which sibling to choose for full downloads or metadata listing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
datasets_updateCInspect
Update dataset metadata — name, description, tags, visibility.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Dataset UUID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description bears full responsibility for behavioral disclosure. It only states 'Update' without detailing side effects, permissions, idempotency, or behavior for unspecified fields. The lack of transparency about the update operation's nature is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 8 words, front-loaded and concise. However, its brevity sacrifices necessary detail, making it too terse for a tool with an incomplete schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the minimal schema (only uuid) and no output schema, the description must fully explain usage. It fails to specify how to provide the mentioned updatable fields, leaving the agent without critical information to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description mentions fields (name, description, tags, visibility) that are not present in the input schema, which only includes 'uuid'. This contradiction misleads the agent into expecting those parameters. The schema coverage is 100% for the single parameter, but the description adds incorrect information, resulting in poor semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Update dataset metadata' and lists specific fields (name, description, tags, visibility), making the tool's action and target clear. However, it does not explicitly differentiate from sibling tools like datasets_read or datasets_upload, though the update action is implied.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no scenarios for when not to use it. This leaves the agent without context for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
datasets_uploadAInspect
Generate a secure upload token for CSV files. Returns UUID + curl command for the user.
| Name | Required | Description | Default |
|---|---|---|---|
| expires_in | No | Token expiration in seconds |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states that the tool returns a UUID and curl command, implying a token generation action. However, it does not disclose side effects, authentication requirements, or any limitations. The security implications are hinted but not elaborated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no extraneous words. It efficiently conveys the purpose and output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple token generation tool with one parameter, the description covers the basics. However, it does not explain how the token is used, whether it is associated with a specific dataset, or the overall upload workflow. The absence of output schema leaves the agent to guess the response structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameter 'expires_in' is fully documented in the schema. The description adds context about CSV file upload and return format but does not enhance understanding of the parameter beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates a secure upload token for CSV files, specifying output as UUID and curl command. It uses a specific verb and resource, distinguishing it from sibling tools like datasets_download or datasets_read.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool vs alternatives. While it's obvious for uploading CSVs, there is no guidance on when not to use it or if there are prerequisites. Sibling tools are not mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
discover_toolsAInspect
Find analysis tools matching your data or question. Semantic search across 50+ statistical and ML tools.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Text query describing what you want to analyze | |
| dataset | No | Dataset UUID to match tools against |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description indicates a search operation but does not disclose security requirements, rate limits, or what happens with empty results. It is minimally transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, zero wasted words, front-loaded with the primary action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 2 parameters and no output schema. The description fails to specify the output format (e.g., list of tool names/details), leaving the agent uncertain about what to expect. Some additional context would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters have descriptions in the schema (100% coverage). The description does not add substantial meaning beyond the schema, such as how the two parameters interact or which is more important.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Find' and resource 'analysis tools', and mentions 'semantic search', distinguishing it from sibling tools like tools_info (which lists tools) and tools_run (which executes tools).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing to find tools matching a query, but does not specify when not to use it or mention alternatives (e.g., tools_info for browsing all tools).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
module_requestBInspect
Request a custom analysis module to be built for your use case.
| Name | Required | Description | Default |
|---|---|---|---|
| description | Yes | Describe the analysis you need |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; the description does not disclose any behavioral traits such as processing time, response format, or permissions required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise but omits valuable context; trade-off between brevity and completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description should explain what happens after requesting a module (e.g., approval process, timeline). It does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds no additional meaning to the single 'description' parameter beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the action (Request), the resource (custom analysis module), and the context (for your use case). It distinguishes from sibling tools like tools_run which execute existing modules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, nor any prerequisites or expected outcomes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
report_cardsCInspect
Get individual card data from a report for rendering.
| Name | Required | Description | Default |
|---|---|---|---|
| processing_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only hints at rendering use case but does not disclose side effects, authentication needs, rate limits, or what 'individual card data' entails. The agent cannot infer safety or behavioral constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise but omits critical details. Could include context about processing_id and output format without losing brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and minimal description, the tool lacks sufficient information for correct invocation. Missing details about input semantics and return value structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 1 parameter (processing_id) with 0% description coverage. Description adds no explanation of what processing_id is, how to obtain it, or its format. Fails to compensate for schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Get', resource 'individual card data from a report', and purpose 'for rendering'. It distinguishes from sibling tools like reports_list, reports_search, reports_view which operate on reports at a higher level.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. Does not mention prerequisites, when not to use, or provide context about report processing state required.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reports_listCInspect
List analysis reports with metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description lacks disclosure of pagination, ordering, authentication needs, or data scope (e.g., all reports vs. user-specific). The tool could be a read operation but this is not clarified.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that is concise and front-loaded with the core action. No unnecessary words, perfectly sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description should clarify what metadata is included. It is too brief for a tool with a single parameter and siblings, leaving the agent with insufficient context for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with the 'limit' parameter already documented. The description adds no extra meaning beyond 'list with metadata', so it meets the baseline but does not enhance understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists analysis reports with metadata, using a specific verb and resource. However, it does not differentiate from sibling tools like 'reports_search' or 'reports_view', which could cause confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. Siblings like 'reports_search' exist but no context is given for when listing is appropriate over searching or viewing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reports_searchBInspect
Search reports by job ID, tool name, or keyword.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Search query | |
| job_ids | No | Filter by processing IDs |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the full burden but discloses no behavioral traits. It does not state whether the tool is read-only, what happens with an empty query, or any limitations such as pagination or authentication requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It efficiently conveys the core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has two optional parameters and no output schema, the description is minimally adequate but fails to mention what the search returns (e.g., list of reports or details) or behavior when no filters are applied.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds value by hinting that the 'query' parameter can include tool names and that 'job_ids' correspond to processing IDs. This clarifies the intended use beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches reports by job ID, tool name, or keyword, using a specific verb and resource. While it differentiates from siblings like 'reports_list' (list all) and 'reports_view' (view specific), the mention of 'tool name' is not explicitly represented in the input schema, causing slight ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'reports_list' or 'reports_view'. The description does not specify contexts, exclusions, or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reports_viewBInspect
View a specific report by processing ID.
| Name | Required | Description | Default |
|---|---|---|---|
| processing_id | Yes | Processing ID from tools_run |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the basic action without revealing details like error behavior, return format, or permissions. The simple verb 'view' implies a read operation, but missing details reduce transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It is appropriately front-loaded and efficient. However, it could be slightly more informative without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of output schema and annotations, the description should provide more context about what viewing a report entails, such as the structure of the returned data or expected behavior on failure. The current description is too sparse for an agent to fully understand the tool's role.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage for the single parameter, which includes a description. The tool description adds minimal extra context by repeating 'processing ID', confirming the parameter's role. This meets the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('view'), the resource ('report'), and the key identifier ('by processing ID'). This distinguishes it from sibling tools like 'reports_list' and 'reports_search', which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention any prerequisites or typical use cases. This lack of context forces the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tools_infoAInspect
Get detailed information about a specific analysis tool — use cases, assumptions, data requirements.
| Name | Required | Description | Default |
|---|---|---|---|
| tool_name | Yes | Name of the tool |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must cover behavioral traits. It discloses the content of the response (use cases, assumptions, data requirements), but does not mention side effects, permissions, idempotency, or whether it is a read-only operation. The disclosure is helpful but incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys all necessary information without extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter, no-output-schema tool, the description adequately specifies what the tool returns (use cases, assumptions, data requirements). It could mention that the tool is read-only, but given the simplicity, it is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description does not add meaning beyond the schema's parameter description ('Name of the tool'). It does not specify valid values, format, or case sensitivity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get detailed information about a specific analysis tool — use cases, assumptions, data requirements.' It uses a specific verb ('Get') and resource ('detailed information') and distinguishes itself from sibling tools like tools_run (execute) and tools_schema (schema-only).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (to understand a tool's metadata), but does not explicitly state when to use it versus alternatives like tools_schema. No when-not or context conditions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tools_runCInspect
Execute an analysis tool. Returns a shareable interactive HTML report URL.
| Name | Required | Description | Default |
|---|---|---|---|
| tool_name | Yes | Name of the tool to execute | |
| taskList | Yes | Contains inputs: dataset, userContext, column_mapping, module_parameters |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the output is a URL but does not disclose whether the tool mutates data, requires special permissions, or has side effects. As an execution tool, it should clarify if it's destructive or read-only, which is missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only one sentence, making it concise and front-loaded. It communicates two key facts: execution and output format. However, it could be slightly more informative without losing conciseness, hence a 4.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of output schema, the description should elaborate on the return value (e.g., URL format, error handling, or report nature). It only states 'shareable interactive HTML report URL' without further detail, leaving gaps for an agent needing to interpret results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, so the baseline is 3. The description adds no additional meaning beyond what the schema already provides (tool_name and taskList). It does not explain nested structure or constraints, but the schema is sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool executes an analysis tool and returns a shareable interactive HTML report URL. It uses a specific verb ('Execute') and identifies the resource ('analysis tool'), making the purpose clear. However, it does not explicitly differentiate from sibling tools like tools_info or tools_schema, preventing a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention when not to use it or any prerequisites. For example, it doesn't compare with module_request or tools_schema, leaving the agent without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tools_schemaBInspect
Get JSON schema for a tool — column_mapping and module_parameters required before tools_run.
| Name | Required | Description | Default |
|---|---|---|---|
| tool_name | Yes | Name of the tool |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It does not disclose if the operation is read-only or any side effects, leaving behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that conveys purpose and a usage hint with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description covers the basic purpose and a prerequisite but omits details about the return format or read-only nature.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds no extra meaning to the parameter beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves JSON schema for a tool and mentions a prerequisite. It is specific but does not explicitly differentiate from siblings like tools_info or tools_run.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage before tools_run by requiring column_mapping and module_parameters, but it does not provide explicit when-not-to-use or alternative tool names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
19 tool updates
v0.1.0- First observed
about - First observed
agent_advisor - First observed
billing - First observed
connectors_list - First observed
connectors_query - First observed
datasets_download - First observed
datasets_list - First observed
datasets_read - First observed
datasets_update - First observed
datasets_upload - First observed
discover_tools - First observed
module_request - First observed
report_cards - First observed
reports_list - First observed
reports_search - First observed
reports_view - First observed
tools_info - First observed
tools_run - First observed
tools_schema
TDQS
Most tools have distinct purposes, but there is some overlap between 'connectors_list' and 'discover_tools' (both list available resources) and between 'reports_list' and 'reports_search' (both retrieve reports). The descriptions help differentiate them, but an agent might occasionally misselect between these pairs.
Tool names follow a highly consistent snake_case pattern with clear verb_noun structures (e.g., 'datasets_list', 'tools_run', 'reports_view'). There are no deviations in naming conventions, making the set predictable and easy to navigate.
With 19 tools, the count is slightly high but reasonable for an analytics platform covering data management, analysis, and reporting. It feels comprehensive without being overwhelming, though some tools like 'module_request' and 'agent_advisor' might be niche additions.
The toolset provides complete coverage for the analytics domain, including data ingestion (connectors, datasets upload), management (list, read, update), analysis (tools run, info, schema), and reporting (reports view, search, cards). There are no obvious gaps, supporting full CRUD/lifecycle workflows.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Ask questions across Shopify, Klaviyo, GA4 and 20+ e-commerce sources in plain English.
Connect Claude, Cursor, or ChatGPT to your business data. Ask questions, get answers.
Ask Claude about your ads: Meta, Google, TikTok, LinkedIn, GA4 & Shopify. No AI credits.
Sales analytics, ML forecasting, customer segmentation, and trend analysis.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI-powered analytics from Stripe, PayPal, and Google Analytics 4 (BigQuery) data sources with built-in guardrails and automated workflows for financial and web performance insights.-
- FlicenseAqualityDmaintenanceEnables comprehensive analysis of CSV files and SQLite databases through tools for statistics, correlations, anomaly detection, pivot tables, time series analysis, visualization, and automated insights discovery.16-
- AlicenseNot gradedqualityFmaintenanceEnables creating interactive data visualizations from natural language queries using DuckDB for local databases or Databricks for enterprise data warehouses. Supports multiple chart types, CSV imports, SQL queries, and automatic statistical analysis through Claude Desktop.19MIT

Presso MCP Serverofficial
AlicenseNot gradedqualityDmaintenanceConnects e-commerce and marketing data sources like Shopify, GA4, Google Ads, and Meta Ads to AI assistants, enabling natural language queries about store performance, ad campaigns, and customer behavior.202MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/embeddedlayers/mcp-analytics'
If you have feedback or need assistance with the MCP directory API, please join our Discord server