@datafast/mcp-server
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation4/5
Most tools are clearly distinct, especially the get_* breakdowns which explicitly name their dimension (country, city, browser, etc.). Minor confusion could arise between get_realtime and get_realtime_map, but their outputs differ enough. The large family of similar analytics tools requires careful reading, but names and descriptions mitigate ambiguity.
Naming Consistency5/5All tool names follow a consistent lowercase_with_underscores pattern using verb_noun: get_* for retrievals, track_* for event creation, delete_* for deletions, and identify_visitor for association. This is highly predictable and consistent across the entire set.
Tool Count4/5At 22 tools, the server is on the heavier side but the count is justified by the wide range of analytics dimensions (countries, cities, browsers, devices, etc.) plus tracking and deletion operations. It exceeds the ideal 15-tool range but does not feel bloated for an analytics platform.
Completeness3/5The analytics surface is broad, covering many breakdowns and real-time data. However, there are notable gaps: no get_payments to read payment events despite having delete_payments, and no list/search for visitors beyond fetching a single visitor by ID. These missing read operations create dead ends in the tracking lifecycle.
Average 3.6/5 across 22 of 22 tools scored. Lowest: 2.9/5.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 0 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
This repository is licensed under MIT License.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It only mentions returned metrics (visitor counts/revenue) but fails to disclose ordering, pagination, default time range, revenue assumptions, or whether the operation is read-only (though 'get' implies).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler. While concise, it omits practical context that could be included without bloat (e.g., default time frame), so it's efficient but not especially rich.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 23 optional parameters, no output schema, and no annotations, the one-line description is insufficient. It doesn't describe the response format, default behavior, or how filters interplay, making it hard to use correctly without external knowledge.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of 23 parameters with individual descriptions. The description adds no extra parameter meaning except the general 'region/state' context, which loosely aligns with the 'region' parameter; it does not clarify how 'state' maps to schema fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Get visitor counts and revenue broken down by region/state' with a specific verb and resource. It differentiates from sibling tools like get_countries/get_cities through the 'region/state' dimension, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidance is provided. There is no mention of when to choose get_regions over related geo-tools such as get_countries or get_cities, nor any exclusion criteria or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the basic output (visitor counts and revenue) but omits important behaviors such as how filters interact, date range handling, pagination, or whether revenue is aggregated. This is a read operation, but minimal behavioral context is provided beyond the one-line summary.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence that is front-loaded with the action ('Get') and the resource ('visitor counts and revenue'). It is concise, readable, and contains no superfluous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the tool having 23 optional filter parameters and no output schema, the description provides only a minimal statement of purpose. It does not explain the available filtering dimensions, default time range, response structure, or any caveats. The description is too sparse to fully guide correct invocation in a complex context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 23 parameters have individual descriptions. The tool description adds no additional parameter semantics beyond the schema, but it does clarify the primary grouping dimension (OS). This matches the baseline of 3 for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: getting visitor counts and revenue grouped by operating system. It names specific OS examples, which removes ambiguity. This differentiates it from siblings that focus on other dimensions like browsers or devices.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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 the many sibling analytics tools (e.g., get_browsers, get_devices). The description implies it's for OS-level breakdowns but doesn't state exclusions or alternatives, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
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 states the core function but does not mention authentication, pagination, output format, aggregation behavior, or any limitations. The 'Get' verb implies read-only, but no safety or operational details are disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. It efficiently states the tool's purpose and examples, earning its place without verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 23 optional parameters, no annotations, and no output schema, this one-sentence description is inadequate. It does not describe the return value structure, how filters interact, or any default behavior, leaving the agent to rely heavily on the schema and make assumptions about the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does 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 description does not add any parameter-specific semantics beyond the schema; it only mentions the browser breakdown. The 'browser' filter is already documented in the schema, and the description does not clarify any additional parameter usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' and clearly identifies the resource as 'visitor counts and revenue' broken down by 'web browser', with concrete examples (Chrome, Safari, Firefox). This distinguishes it from sibling tools like get_pages or get_referrers, which focus on different dimensions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for browser-specific analysis, but it does not explicitly state when to prefer this tool over siblings, nor does it mention exclusions or alternatives. The context is clear but lacks direct guidance on tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
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 that it retrieves counts and revenue by device, but it does not disclose behavior such as aggregation scope, pagination, authentication requirements, or the structure of the returned data. The tool has 23 filter parameters, yet the description gives no insight into how they affect the request or response, leaving significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the key information: what is returned (visitor counts and revenue) and the grouping dimension (device type). There is zero redundancy or irrelevant detail, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (23 parameters, no output schema, no annotations), the description is far too minimal. It fails to explain the return structure, pagination behavior, available filters, or any usage nuances. A more complete description would mention at least that it returns grouped analytics and can be filtered by date and other dimensions, but it does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage, so all 23 parameters are individually described. The description adds no extra meaning beyond the schema—it merely restates the purpose of the 'device' parameter. Since the schema already handles parameter details, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Get' and clearly states the resource: 'visitor counts and revenue' broken down by device type. This explicitly distinguishes it from sibling analytics tools like get_browsers and get_operating_systems, making its purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage through the phrase 'by device type', but it does not explicitly state when to use this tool versus alternatives, nor does it mention exclusions or provide context on when this breakdown is appropriate. Since the title and description imply device-specific analytics, it earns a 3 for implied usage rather than a 2 for no guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full transparency burden. It discloses that the return is aggregate data for a time period, which is useful, but it does not mention filtering behavior, whether defaults apply, or limitations. For a read-only aggregate tool, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences and every word earns its place. It front-loads the key purpose, lists concrete metrics, and adds one clarifying sentence about aggregate data. No fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 21 parameters, no output schema, and no annotations, so the description must compensate. It only states that it returns aggregate data, but does not explain how filters interact with the aggregate result, whether the response is a single object or rows, or what happens if no time period is given. This is insufficient for an agent to confidently invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each of the 21 parameters already has a descriptive label and format. The description adds minimal parameter-related value, only mentioning the time period generically, which is already covered by startAt/endAt in the schema. Baseline 3 applies since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: it gets high-level analytics metrics and lists them explicitly (visitors, sessions, bounce rate, etc.). It distinguishes itself from sibling tools like get_timeseries or get_pages by emphasizing 'high-level' and 'aggregate', though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it (for aggregate overview metrics), but it does not explicitly contrast it with more granular sibling tools or provide 'when not to use' guidance. The phrase 'specified time period' hints at a common use case, but there is no mention of alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral disclosure. It does state the returned metrics and that data is over time with configurable intervals, which is helpful. However, it omits important behaviors such as default intervals, pagination, filtering behavior, and how time periods are aggregated. This leaves significant gaps for a complex tool, so a score of 3.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long, front-loaded with the action and outcome, and includes a brief use-case. Every sentence provides useful information; no unnecessary repetition. Score 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 25 parameters and no output schema, the description is too brief to fully contextualize the tool's behavior. It doesn't explain the response format, grouping, pagination limits, or default timezone. While the schema covers parameters, the description doesn't guide an agent on how to construct a valid call or interpret results, so it is incomplete for this complexity. Score 2.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for all 25 parameters (100% coverage), so the baseline is 3. The description adds minimal extra meaning—it lists the possible fields and intervals, which already appear in the schema. It does not clarify the impact of filters or parameter combinations, so no bonus beyond baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches time series analytics data with configurable intervals and lists the returned metrics (visitors, sessions, revenue, conversion rate). It uses a specific verb and resource, though it does not explicitly differentiate from sibling analytics tools, earning a 4 rather than 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for trend analysis and charts ('Great for trend analysis and charts'), but does not provide explicit guidance on when to use this tool versus alternatives like get_overview or get_realtime. No exclusions or alternatives are mentioned, so a score of 3.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only mentions the action 'Link/Associates' without addressing idempotency, overwrite behavior, permissions, or response. The phrase 'optional metadata' contradicts the schema (which has no such parameter), adding confusion rather than transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at two sentences and front-loaded with the core purpose. However, the reference to 'optional metadata' is redundant or inaccurate relative to the schema, slightly reducing efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 params, full schema coverage, no output schema), the description provides adequate purpose and parameter info. However, it lacks behavioral details such as response format or side effects, and the metadata discrepancy undermines completeness for an agent needing to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description does not add meaning beyond the schema; it mentions 'optional metadata' not present in the schema, which could mislead. However, it does reinforce the association intent for the two required parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb 'Link' and resource 'DataFast visitor to a user'. It distinguishes itself from siblings like get_visitor and track_goal by indicating an association operation rather than retrieval or event tracking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by explaining the action, but it does not explicitly state when to use this tool vs alternatives, nor does it mention exclusions or prerequisites. For a linking operation, context is reasonably clear but guidance on alternative tools (e.g., get_visitor) is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full behavioral disclosure burden. It only repeats the goal name validation rule already in the schema, but does not disclose side effects, idempotency, persistence, response format, or any prerequisites. This is a write operation with no behavioral context beyond the obvious 'track' action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no extraneous content. The first sentence front-loads the purpose, and the second adds a critical validation constraint. Each sentence earns its place, and the description is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, no annotations, and a nested object parameter, the description is incomplete. It does not explain return values, success/failure behavior, or how metadata is used. The tool has 4 parameters but the description only covers the goal name constraint, leaving the agent without enough context for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does 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 description does not add meaning beyond the schema; it merely restates the name constraint already present in the parameter description. No additional semantics for metadata or visitorId are provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's specific action: 'Track a custom goal completion for a specific visitor.' This distinguishes it from siblings like get_goals or delete_goals, and includes the target resource (custom goal) and scope (specific visitor).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for recording goal completions but does not explicitly say when to use this tool versus track_payment or other event-tracking siblings. No alternatives or exclusions are mentioned, leaving the agent to infer from the tool name and sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for behavioral disclosure. It implies a read-only operation via the verb 'get' and clarifies output metrics ('visitor counts and revenue'), but it does not disclose pagination behavior, result grouping beyond 'by city,' or any rate/limit caveats. The description adds value by specifying the output, but gaps remain.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the core purpose without superfluous words. It efficiently communicates the resource and breakdown, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 23 parameters, no output schema, and no annotations, the description provides minimal context. It states the metrics returned but does not explain the response structure, that results are likely aggregated per city with count/revenue, or whether any filters are required. It is adequate for a simple read tool but leaves gaps for complex usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema documents all 23 parameters with descriptions (100% coverage), so the baseline is 3. The description adds no parameter-level details, but it doesn't need to since the schema covers the filters, pagination, and date range fields adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns 'visitor counts and revenue broken down by city,' providing a specific verb, resource, and breakdown dimension. This distinguishes it from sibling tools like get_countries and get_region, which focus on different geographical breakdowns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives. It does not mention that it complements or differs from similar get_* breakdown tools, nor does it provide any context about prerequisites or use cases beyond the definition itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only states that the tool 'gets' data, without explaining request behavior, pagination, defaults, or response details. It does not mention how filters interact or any caveats, leaving significant ambiguity for a 23-parameter tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one concise sentence, front-loaded with the primary action ('Get custom goal completion data'). Every word adds value, with no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although the description names the output fields, it does not provide broader context such as required filters, timezone defaults, or pagination behavior. Given the tool's 23 parameters and no output schema, a bit more detail about the response shape or usage notes would increase completeness, but the core purpose is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of the parameters with descriptions, so the baseline is 3. The tool description adds no additional meaning about the parameters themselves, merely naming the output fields. It does not need to compensate since the schema is thorough.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves 'custom goal completion data' with specific output fields (goal name, completions, unique visitors). This distinguishes it from sibling analytics tools like get_pages or get_browsers, which focus on other metrics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is for goal completion metrics, but it does not explicitly state when to use it over alternatives or mention any exclusions. No sibling tools or alternative contexts are referenced, so the guidance is mostly implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of disclosing behavior. It explains that the tool returns top referrers with visitor count and revenue, which gives some insight into the output. However, it does not mention sorting behavior, pagination, or any read-only guarantees, though the verb 'get' implies a safe operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the main action ('Get the top traffic referrers') in the first few words. The second sentence elaborates on the output fields, adding value without unnecessary verbosity. Two sentences are sufficient for this tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description partially compensates by listing the expected fields (referrer URL, visitor count, revenue). However, it does not clarify how filters interact, what 'top' means (e.g., sorting default), or whether a date range is required. For a tool with 23 optional parameters, this leaves some gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 23 parameters have descriptions in the schema (100% coverage), so the schema already documents each filter. The tool description adds context by clarifying that the result includes metrics like visitor count and revenue, but it does not explain any parameter-specific behavior beyond what is in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Get the top traffic referrers (sources linking to the website).' It also specifies the key output fields (referrer URL, visitor count, revenue), which distinguishes it from related analytics tools like get_pages or get_browsers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide any explicit guidance on when to use this tool versus alternatives. It only describes what it does, leaving the agent to infer that it is appropriate for referrer traffic analysis based on the name and title. No alternatives or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosing behavior. It mentions linking payments to visitors, a key side effect, but does not explain persistence, idempotency, error handling, or whether it is a write operation with no return value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with zero wasted words. It front-loads the purpose and adds a key behavioral link, making it appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The purpose is clear and the schema documents all parameters, but with no output schema and sparse behavioral detail, the description is not fully complete for a tracking tool with 11 parameters. It covers the high-level purpose but lacks operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does 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 description does not add parameter-specific guidance beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool tracks a payment event for revenue attribution and links payments to visitors for conversion tracking. This specific verb+resource combination distinguishes it from sibling tools like track_goal and identify_visitor.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for use (payment events, revenue attribution, conversion tracking) but does not explicitly state when not to use it or mention alternatives. It lacks exclusionary guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure. It only mentions 'real time' but does not clarify whether the count is unique visitors, sessions, or approximate, nor does it mention authentication or potential latency. The read-only nature is implied by 'Get' but not explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly states what the tool returns. Every word earns its place, with no unnecessary detail or repetition, making it optimally concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, no annotations, no output schema), the description sufficiently explains the return value ('number of visitors currently active'). It lacks explicit caveats like data freshness or aggregation, but for a straightforward count query, it is reasonably complete. A slight gap is the absence of any note on whether the count is global or page-specific, but the phrase 'on the website' implies site-wide.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the input schema is empty. According to the rubric, 0 params yields a baseline of 4, and there is no parameter meaning to explain. The description appropriately focuses on the output rather than inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get') and a precise resource ('the number of visitors currently active on the website in real time'), which clearly defines the tool's purpose. It also distinguishes itself from the sibling tool 'get_realtime_map' by focusing on the count rather than a map visualization.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for retrieving current active visitor counts but gives no explicit guidance on when to use it versus alternatives like 'get_realtime_map' or 'get_overview'. There are no stated exclusions or preferred contexts, so the usage guidance remains implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
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 discloses what information the tool returns (identity, activity, conversion predictions), which is useful, but it does not mention side effects (though 'Get' implies read-only), authentication needs, error behavior for missing visitor, or rate limits. 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.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that packs all relevant information without superfluous words. It is front-loaded with the core purpose and lists the key data categories efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given 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 adequately covers the purpose and the return content categories. It lacks edge-case details like error handling or data freshness, but these are less critical given the low complexity, making it nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with the visitorId parameter described as 'The DataFast visitor ID'. The tool description adds no additional meaning beyond what the schema already provides, so baseline 3 is appropriate; it does not clarify format, constraints, or usage nuances.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'specific visitor', and enumerates the exact categories of information returned (identity, activity, conversion predictions). This distinguishes it from sibling tools like get_overview or get_pages which operate on aggregate or different resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you need details on a specific visitor by mentioning 'specific visitor' and requiring a visitorId parameter. However, it gives no explicit when-to-use vs alternatives, no exclusions, and no guidance on when not to use this tool, leaving usage context mostly inferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure. It mentions the filter constraint but fails to state that deletion is permanent, whether it can be undone, or any side effects. For a destructive tool, this 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.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the action and immediately provide the critical usage constraint. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the basic operation and filter requirement, but with no output schema and no annotations, it omits consequences (permanence) and return value expectations, leaving the tool only minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds meaningful constraint semantics by summarizing the filter dimensions and explicitly requiring at least one filter—information not present in the schema's optional field definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Delete') and the resource ('goal events'), distinguishing it from sibling tools like track_goal (creation) and get_goals (retrieval).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear usage context by listing acceptable filters and the requirement that at least one filter must be provided. However, it does not explicitly mention when not to use this tool or contrast it with delete_payments.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for disclosing behavioral traits. It only states 'Delete payment events' and the filter requirement, but does not mention consequences such as irreversibility, scope of deletion, or any side effects. The lack of warning about permanent deletion or impact leaves a significant transparency gap for a destructive operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, consisting of two sentences that immediately front-load the core action ('Delete payment events') followed by essential filtering details. Every sentence contributes necessary information without fluff or repetition, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description provides enough information for basic invocation: what to delete and how to filter. However, given the lack of annotations and absence of an output schema, it leaves out important context such as whether deletion is permanent, what response to expect, or any error conditions. It is a minimally complete description but lacks depth for a destructive tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with descriptions for each parameter, so the baseline is 3. The description adds value by grouping parameters into logical filters (transaction ID, visitor ID, date range) and explicitly stating that at least one must be provided, which is not encoded in the schema's required field. This extra constraint enhances understanding beyond the structured schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Delete payment events', specifying the exact verb and resource. It distinguishes this tool from siblings by mentioning filtering options for transaction ID, visitor ID, and date range, which directly map to the schema. This clarity enables an agent to immediately understand what the tool does and how it differs from getter or tracking tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage context by stating the required filters and the rule 'At least one filter must be provided.' This gives clear direction on when to use the tool and what inputs are necessary, though it does not mention alternatives or exclusions. The guidance is sufficient for an agent to select this tool for deleting specific payment events.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the transparency burden. It correctly implies a read-only operation and states that it returns aggregated visitor counts and revenue. However, it does not clarify key behaviors such as whether non-UTM traffic is included, how aggregation is structured, or how pagination and date ranges are handled. The description adds context beyond the name 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.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no fluff. The first sentence precisely states the tool's function, and the second sentence gives a practical use case. Both sentences earn their place, making it compact and informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 23 parameters and no output schema or annotations, but the schema fully documents parameter usage. The description lacks information about response structure, default time range behavior, or aggregation specifics. It adequately explains the tool's purpose but is insufficiently complete for an agent to understand all runtime behaviors without further assumptions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and each parameter is documented with meaningful descriptions like 'Filter by UTM source' and pagination details. The tool description adds no extra meaning beyond the schema—it merely repeats the UTM parameter names. Given the high schema coverage, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: getting visitor counts and revenue broken down by UTM campaign parameters (source, medium, campaign, term, content). It specifically identifies the resource (UTM campaign data) and the action (get), and distinguishes it from sibling tools like get_referrers or get_pages, which focus on other dimensions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context with 'Great for measuring marketing campaign performance,' which tells an agent when this tool is appropriate. It does not explicitly state when not to use it or name alternative tools, but because it is the only UTM-focused analytics tool among siblings, the context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses return fields (country name, flag URL, visitor count, revenue) but does not mention limitations, default behavior, or any caveats. For a simple read-only analytics tool, this is acceptable but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys the action, resource, and return fields. No wasted words; every part adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimally viable for a 23-parameter analytics tool without an output schema. It explains the purpose and return fields, and the schema covers all parameters. However, it lacks usage guidance, default behaviors (e.g., limit, date range), and any caveats about data granularity or time period, making it incomplete for fully autonomous agent decisions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 23 parameters are already documented in the input schema. The description adds no additional parameter semantics beyond what the schema provides, such as default limit or special filter behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get visitor counts and revenue broken down by country.' It uses a specific verb (get) and resource (visitor counts/revenue by country), and the country focus distinguishes it from sibling analytics tools like get_cities and get_regions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly conveys when to use this tool: when country-level visitor and revenue data is needed. While it doesn't explicitly mention alternatives, the country-specific wording provides clear context for selection among similar analytics getters.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the burden. It discloses that results are grouped by hostname and include counts and revenue, but it does not describe aggregation defaults, pagination, or read-only guarantees beyond the 'get' verb.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that is front-loaded with the action and resource, and the parenthetical adds practical value without waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is adequate for basic invocation but not comprehensive. With 23 parameters, no annotations, and no output schema, it leaves out response shape, date-range behavior, and how filters affect the hostname-grouped results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does 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 that 'hostname' is the breakdown dimension, but does not clarify how the optional `hostname` filter parameter interacts with that breakdown or other defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns 'visitor counts and revenue broken down by hostname,' which names both the resource and the grouping dimension. This differentiates it from sibling analytics tools like get_pages or get_countries.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical 'useful for multi-domain tracking' gives clear context for when this hostname breakdown is appropriate. It does not explicitly name alternatives or exclusions, but alongside sibling tools the use case is evident.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavior. It does mention included data types (events, payments, conversion predictions) but omits important behavioral details such as the time window for 'recent', whether coordinates are precise or anonymized, and if any rate limits or permissions apply. The read-only nature is implied by 'get' but not stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. The first sentence clearly identifies the tool's purpose, and the second adds useful context about included data. It is appropriately sized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no parameters, the description is the sole guide to expected data. It gives a high-level overview of return contents but lacks structural details (e.g., coordinate format, field names, response envelope). Given the simple no-parameter nature, it is adequate but could be more informative.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema covers 100% of the (empty) parameter set. Consequently, the description doesn't need to add parameter details, and the baseline of 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool retrieves real-time visitor data with geographic coordinates specifically for map visualization, listing additional context (recent events, payments, predictions). This distinguishes it from sibling tools like get_realtime (which lacks geographic focus) and get_countries/get_cities (which are likely aggregated rather than real-time).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies usage for real-time location-based map views but doesn't explicitly mention when not to use it or alternatives. It doesn't say 'for non-geographic real-time data use get_realtime' or similar, so guidance is implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. The term 'Get' implies a read-only operation, and the specific list of metadata fields gives some transparency about what is returned. However, it does not disclose potential caveats like data freshness, authentication requirements, or response structure beyond the listed fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the action ('Get metadata') and lists key fields. Every word earns its place, with no superfluous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, no output schema), the description is largely complete. It identifies the resource and the type of information returned. It could be slightly more explicit about the return format (e.g., a single object), but the listed fields sufficiently convey the expected output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, and the baseline for 0 params is 4. The description adds value by listing the specific metadata categories that will be retrieved, which gives the agent a sense of the output shape without needing parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Get metadata about the tracked website' and enumerates specific metadata fields (domain, timezone, name, KPI settings, currency configuration). This distinguishes it from sibling analytics tools like get_realtime or get_overview, which focus on time-series or aggregated data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by naming the resource (website metadata) and fields, but it does not explicitly state when to use this tool over alternatives or provide exclusions. An agent could infer it from the distinct metadata focus, but no direct guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
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 discloses the sorting behavior ('ranked by visitor count') and return fields, but does not mention default limit, pagination, filter interaction, or read-only nature. Some context is provided, but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the primary action and key output fields. Every sentence contributes value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the core purpose and return structure, but given the tool's 23 optional parameters and lack of output schema, it would benefit from mentioning pagination defaults or how filters apply. The schema covers parameter details, so the gap is modest.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does 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 description does not add parameter-specific meaning beyond what the schema already provides; it only mentions result fields, not filter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Get the most visited pages on the website, ranked by visitor count.' It also lists the specific data returned (hostname, path, visitor count, revenue attribution), which distinguishes it from sibling tools like get_timeseries or get_overview.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the usage context (when you need top pages by traffic) but does not explicitly mention alternatives or when not to use this tool. It provides clear context but lacks formal exclusionary guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
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/Marc-Lou-Org/datafast-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server