site
Server Details
Cookievo: the site's own MCP server — dataset; every answer cites the site.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
TDQS
Scored across 7 tools
Most tools have clearly distinct purposes: schema metadata, provenance, exact row lookup, text search, multi-value comparison, statistics, and top/bottom ranking. There is some overlap between dataset_row, dataset_compare, and dataset_search because all retrieve rows, but the descriptions clarify exact equality vs. any-value comparison vs. substring matching.
All tools use the same dataset_ prefix with consistent snake_case formatting. Although the suffixes mix noun and verb forms, the namespace pattern is highly predictable and no conventions are mixed inconsistently.
Seven tools is well-scoped for querying a single dataset. Each tool serves a clear, non-redundant querying purpose, and the set is neither thin nor bloated.
The surface covers schema discovery, provenance, exact lookup, comparison, search, aggregate stats, and top/bottom ranking, which is strong for a dataset Q&A server. Minor gaps include no explicit full-table retrieval or pagination beyond the 50-row search limit, but common workflows are covered.
Available Tools
7 toolsdataset_columnsDataset columns and shapeAInspect
The columns, which of them are numeric, the row count and the provenance banner of the Cookievo dataset. Call this first to learn the schema.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the burden, and it does disclose the payload contents (columns, numeric detection, row count, provenance banner). However it says nothing about whether the call is read-only/side-effect-free, cost, or output shape, which for an unannotated tool is a notable 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?
Two short sentences, zero filler, with the returned content front-loaded and the usage cue trailing. Nothing could be cut without losing 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?
With no output schema and no annotations, the description is the only source of return-value and safety information, and it does enumerate the returned fields well. It could be more complete by stating that the operation is a read and by distinguishing its output from dataset_provenance's.
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 tool takes zero parameters, so there is no parameter semantics for the description to explain; the baseline of 4 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?
The description names the concrete outputs (columns, numeric flags, row count, provenance banner) and frames the tool as schema discovery, which makes its job clear. It does not explicitly contrast itself with dataset_provenance or dataset_stats, both of which overlap on the provenance and stats content.
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?
"Call this first to learn the schema" gives explicit sequencing guidance, which is more than most definitions offer. It stops short of saying when not to use it or which sibling to choose once the schema is known.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dataset_compareCompare rows side by sideBInspect
The rows of the Cookievo dataset whose column is any of the given values, in the order given — for "X vs Y" questions.
| Name | Required | Description | Default |
|---|---|---|---|
| column | Yes | ||
| values | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations and no output schema, so the description carries the full behavioral burden. It does disclose that results follow the order of the given values, which is useful. But it says nothing about read-only nature, behavior when a value matches no row, result size/pagination, or the 10-value cap being a hard limit.
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 tight sentence that front-loads the returned resource and appends the use case. No filler, though the 'whose column is any of the given values' clause is slightly dense and could be more direct.
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 no annotations, no output schema, and 0% parameter documentation, the description should do more heavy lifting. It covers intent and ordering but omits result shape, no-match behavior, and the practical limit on values, leaving an agent with meaningful uncertainty before calling it.
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 0%, so the description must compensate. It does explain the matching semantics (column is 'any of' the given values) and that value order is honored, which maps onto both parameters. It does not clarify whether 'column' is a name vs. index or how values are matched (exact vs. case-insensitive), leaving gaps.
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?
States a concrete operation and resource: returns the rows of the Cookievo dataset whose column matches any of the given values, preserving the order of the values. The 'X vs Y questions' framing clarifies intent beyond the vague name 'compare'. It doesn't explicitly differentiate itself from dataset_search or dataset_row, but the retrieval semantics are clear.
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?
Gives one concrete scenario ('for "X vs Y" questions'), which implies when to reach for it. However, it never names alternatives such as dataset_search or dataset_row, and gives no when-not guidance, so an agent must infer the boundary itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dataset_provenanceWhere this data comes from, and how to cite itAInspect
The source, the date it was computed, the licence and the citation for the Cookievo dataset. Read this to attribute a figure correctly.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden, and the imperative 'Read this' plus a provenance lookup implies a safe, non-mutating operation. It also discloses the returned information, though it does not explicitly state permissions, side effects, or response format.
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?
Two compact sentences front-load the returned fields and then state the reason to call the tool. There is no filler and every clause is useful.
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 zero-parameter, read-only provenance lookup with no output schema, the description supplies the key return fields and the attribution use case. Nothing needed to select or invoke the tool correctly is missing.
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 tool takes zero parameters, so the schema has no per-parameter semantics to explain; the baseline for a zero-parameter tool is 4. The description adds no parameter detail because none exists.
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 names the exact resource (Cookievo dataset provenance) and enumerates what it returns: source, computation date, licence, and citation. That is specific enough to distinguish it from the dataset_columns, dataset_stats, dataset_search, and other sibling tools, which expose data rather than attribution metadata.
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?
It gives a clear use case: read this when a figure needs attribution. It does not explicitly list when not to use it or name alternatives, but there are no sibling attribution tools, so 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.
dataset_rowLook a row up by an exact keyCInspect
The rows of the Cookievo dataset where a column equals a value exactly (case-insensitive).
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | ||
| column | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses only that matching is exact and case-insensitive; it says nothing about how many rows can come back, what happens when nothing matches, ordering, or result limits. The title's singular 'a row' also conflicts slightly with the plural 'rows' in the description.
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 front-loaded sentence with no filler, stating scope and the key semantic qualifier up front. It is arguably over-terse for a tool with zero annotation and schema-description coverage, but there is no wasted text.
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 annotations, no output schema, and 0% schema description coverage, the description does far too little. An agent cannot tell how to form a valid column identifier, how results are shaped, or how many rows to expect.
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 0%, so the description must compensate, and it only loosely maps to the two required parameters ('a column equals a value'). It does not state that 'column' must be a valid column name (presumably discoverable via dataset_columns), nor whether the column name itself is case-sensitive, leaving both parameters under-specified.
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 states a concrete operation: return the rows of the Cookievo dataset where a column exactly equals a value. It is clear what the tool produces, though it never distinguishes itself from siblings such as dataset_search (likely fuzzy/partial) or dataset_compare, leaving the exact-match niche only 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?
No when-to-use guidance and no alternatives are named. The '(case-insensitive)' exact-equality qualifier hints that this is the precise-lookup counterpart to dataset_search, but the description never tells the agent to prefer one over the other.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dataset_searchSearch the datasetBInspect
Rows of the Cookievo dataset whose cells contain the query (case-insensitive), up to 50.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes | text to look for in any cell |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It usefully discloses case-insensitive matching, whole-cell scope, and a hard cap of 50 rows, but says nothing about permissions, ordering, or whether results are silently truncated when more than 50 rows match.
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 tight sentence with the resource and matching rule front-loaded and the result cap trailing. Nothing is redundant or padded.
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 two-parameter search with no output schema, the description covers the essential contract (what matches, how many rows). It omits ordering, truncation signalling, and any note on what a returned row looks like, which an agent would want before relying on the 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?
Schema coverage is 50%: the query parameter is documented in the schema, while limit is not. The description partially compensates by explaining query semantics (case-insensitive, any cell) and the 50-row ceiling that bounds limit, but adds no meaning for limit's lower bound or its effect on result completeness.
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 names a specific operation (find rows whose cells contain the query), the resource (Cookievo dataset), and the search semantics (case-insensitive, any cell). It implicitly distinguishes itself from size/oriented siblings like dataset_top and dataset_row, but never names an alternative explicitly.
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?
There is no statement of when to use this tool versus dataset_top, dataset_row, dataset_compare or the other siblings. The usage is only inferable from the operation itself, with no exclusions or prerequisites given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dataset_statsSummary statistics for a numeric columnBInspect
count, min, max, mean, median and sum of a numeric column of the Cookievo dataset (grouping commas and currency are handled; non-numeric rows are excluded and counted).
| Name | Required | Description | Default |
|---|---|---|---|
| column | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, and it does disclose non-trivial data-handling semantics: grouping commas and currency are parsed, and non-numeric rows are excluded and counted. However, it says nothing about error behavior (e.g., a fully non-numeric or missing column), rounding of results, or any safety/permission profile.
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 dense sentence that front-loads the returned metrics and uses a parenthetical for the edge-case handling. Nothing is wasted, though the metric list is long enough that scanning is slightly harder than a bulleted form would be.
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 no output schema, the description correctly enumerates the returned statistics and the exclusion/counting behavior, which is what an agent needs to interpret results. It would be complete with a note on how non-numeric-only columns are handled, but for a single-parameter statistics tool this is nearly sufficient.
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?
There is a single required parameter with 0% schema description coverage, so the description must compensate. It adds that the target must be a numeric column, which is a real constraint, but it never explains the identifier format (column name vs index), case sensitivity, or how to discover valid values.
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?
States a specific computation (count, min, max, mean, median, sum) over a specific resource (a numeric column of the Cookievo dataset), so the agent knows exactly what will be returned. It does not explicitly differentiate itself from siblings like dataset_top or dataset_compare, which is the only thing keeping it out of the top band.
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 is purely functional and gives no when-to-use guidance, prerequisites, or named alternatives. It never says how this differs from dataset_top or dataset_compare, so the agent must infer selection from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dataset_topRank rows by a numeric columnBInspect
The highest (or lowest) rows of the Cookievo dataset by a numeric column — "which is the most/least X".
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| column | Yes | ||
| ascending | No | true for the lowest first; default highest first |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden and largely drops it. It does not say what is returned (a row? a list?), how the limit cap of 50 behaves, how ties or nulls are handled, or what happens if the named column is non-numeric despite the 'numeric column' requirement. The only behavioral hint is the implicit highest-first default.
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 tight sentence with the operation front-loaded, plus a short parenthetical that aids intent matching. The trailing example adds real routing value rather than waste, though the em-dash construction is slightly awkward.
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 three-parameter read tool this is minimum viable: an agent can form the call from column plus the high/low hint. However, with no annotations and no output schema, the description should have covered the return shape and the limit default/cap, and 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 coverage is only 33% — 'ascending' is described in the schema, while 'limit' (1-50 cap) and the required 'column' have no schema descriptions. The description partially compensates by revealing that 'column' must be numeric and by restating the high/low direction, but it says nothing about the limit parameter or the default value. Net effect is roughly baseline adequacy.
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 names a specific operation (returning the highest or lowest rows of the Cookievo dataset ranked by a numeric column), which the title only gestures at. It is distinguishable from dataset_stats and dataset_row by its ranking semantics. It stops short of naming a sibling it is not, so it lands at 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The quoted flavor text ("which is the most/least X") implicitly tells the agent what user intent maps to this tool, which is more than nothing. But there is no explicit when-to-use statement, no exclusion of dataset_stats/dataset_compare, and no note about when to prefer this over fetching a single row. Usage is implied, not stated.
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.
7 tool updates
- First observed
dataset_columns - First observed
dataset_compare - First observed
dataset_provenance - First observed
dataset_row - First observed
dataset_search - First observed
dataset_stats - First observed
dataset_top
Related MCP Connectors
Eposvo: the site's own MCP server — dataset; every answer cites the site.
Sopvo: the site's own MCP server — dataset; every answer cites the site.
Exitvo: the site's own MCP server — dataset; every answer cites the site.
Walkvo: the site's own MCP server — dataset; every answer cites the site.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceMCP server that answers questions using Reddit discussions as evidence, searching threads, fetching comments, and ranking useful context, with optional cited answer synthesis.MIT
- AlicenseAqualityBmaintenanceMCP server for academic research with shared token bucket governance, evidence-based read depth, and archival inscription. Uses multiple sources with failover to avoid rate limits.6MIT
- FlicenseNot gradedqualityBmaintenancePublic browse-first MCP server for AI capability discovery and grounded Agent feedback. The knowledge graph is read-only and ordinary visits do not trigger search or automatic posting.-
- FlicenseAqualityCmaintenanceMCP server for querying a page-citable research knowledge base built from PDFs, with exact filename and page citations.6-
Glama MCP Gateway
Add one secure layer between your agents and this server.