Tableau Public MCP Server
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation4/5
Most tools target distinct resources and actions, but get_user_profile and get_user_profile_basic overlap on the same resource with differing detail, and get_workbook_image versus get_workbook_thumbnail could be confused. The descriptions clearly differentiate them, so ambiguity is limited.
Naming Consistency4/5Names consistently follow a verb_noun pattern with the majority using the get_ prefix. The exceptions (download_, unpack_, search_) are still action-oriented and snake_case, making the set predictable despite minor deviation.
Tool Count3/5With 22 tools, this server falls into the borderline heavy range (16–25). The breadth of the domain—profiles, workbooks, social discovery, and twbx analysis—justifies many tools, but some redundancy exists (e.g., two profile tools) that could be consolidated.
Completeness5/5The server provides a comprehensive read-only surface for Tableau Public, covering user profiles, workbooks, social interactions, search, and deep twbx file analysis. There are no obvious gaps for the intended exploration and analysis use cases.
Average 4.1/5 across 22 of 22 tools scored. Lowest: 3.4/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 Apache 2.0.
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
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden. It discloses that the tool extracts/returns formulas, data types, and field dependencies and implies a read-only parse operation. It does not discuss edge cases, expected output structure, or runtime behavior (e.g., failures on malformed files), but it adds meaningful output expectations.
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?
Three sentences, front-loaded with the main action, with no filler. Each sentence contributes (function, usage, use case).
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 three required parameters and no output schema, and the description does not explain the boolean flags or fully distinguish from sibling tools. It gives a high-level return summary but lacks enough detail for an agent to correctly choose parameter values and interpret results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not explain the includeHidden or includeDependencies parameters. It only indirectly references the file path via 'mainTwbPath from unpack_twbx output', which is helpful but insufficient for the three required parameters.
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 uses a specific verb ('Extracts') and identifies the resource ('calculated fields, parameters, and field definitions from a Tableau workbook (.twb file)'), and clarifies it returns formulas and dependencies. It clearly conveys the tool's function, though it overlaps somewhat with sibling tools like get_twbx_calculation_dependencies without explicit differentiation.
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?
Provides context: use with 'mainTwbPath from unpack_twbx output' and frames the tool as ideal for learning from existing visualizations. However, it does not mention any alternatives or exclusions relative to sibling tools, so it stops short of explicit when-not 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?
No annotations are provided, so the description carries the full burden. It discloses key side effects: saving to the filesystem, scaling down images, compressing to a target size, and returning a file path with metadata. It doesn't mention overwrite behavior, permissions, or error handling, which is a gap for a tool that writes to disk, but the disclosed behaviors are useful and non-contradictory.
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 well-structured and concise, with four sentences that each add value: purpose, optimizing behavior, text detail rationale, and input requirements/naming convention. No filler or repetition, though it is slightly longer than necessary.
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 no annotations and no output schema, the description does a reasonable job: it explains the output (file path and metadata), the optimization behavior, and the required inputs. However, it lacks details on potential side effects (e.g., overwriting files), error scenarios, and doesn't fully cover all six parameters in the context of the tool's behavior. This makes it adequate but not 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?
The schema has no top-level description coverage per context signals, so the description must compensate. It clarifies the workbookUrl as 'workbookRepoUrl from API responses' and explains view name normalization ('Dashboard 1' -> 'Dashboard1'). It also connects the 768px scaling to maxWidth and compression target to quality. However, it leaves maxHeight, format, and quality specifics largely to the schema, and the required parameter list includes defaults without behavioral guidance.
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 fetches, optimizes, and saves a Tableau Public visualization image. The verb 'fetches and optimizes' combined with the resource 'Tableau Public visualization image' distinguishes it from sibling tools like download_workbook_twbx or get_workbook_thumbnail, though it doesn't explicitly differentiate from get_workbook_thumbnail.
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 the tool by mentioning 'Preserves text detail important for dashboard analysis,' suggesting it's for cases where readable text matters. It also specifies required inputs (workbook URL and view name) and provides naming conventions. However, it does not explicitly state when to prefer this over alternatives like get_workbook_thumbnail, or mention any 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 provided, the description carries the burden of behavioral disclosure. It mentions that the tool returns workbook information including URLs, which gives some transparency about output. However, it does not disclose limits, pagination, sorting, or error conditions, which would be valuable for a complete picture.
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 three sentences and front-loaded with the main action. It is concise and readable, with the second and third sentences adding context about the return content and use case. Slightly redundant phrasing ('valuable or interesting') could be tightened, but overall it is well-structured.
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 simple one-parameter read tool with no output schema or annotations, the description covers the basic purpose and return contents, but omits important practical details like pagination, empty-list behavior, or any authentication assumptions. It is adequate but leaves gaps for a fully autonomous agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should compensate. It mentions 'a Tableau Public user' but does not explicitly detail the 'username' parameter, its format, or any constraints. The schema itself only identifies the parameter as a required string, leaving the agent to infer semantics from the tool description.
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 a list of favorited workbooks for a Tableau Public user, using a specific verb ('Retrieves') and resource ('favorited workbooks'). It distinguishes from siblings by focusing on favorites, which is not covered by other tools like get_workbooks_list or get_user_profile.
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 provides a use case ('useful for understanding user preferences and discovering quality visualizations') but does not explicitly state when to use this tool versus alternatives, nor does it give exclusions or prerequisites. This is implied context rather than direct 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 burden for behavioral disclosure. It describes the output components and implies a read-only extraction, but does not explicitly state that the file is not modified, or disclose limitations like performance on large workbooks, output format, or error behavior. It adds value by listing contents but lacks deeper 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 three sentences, front-loaded with the core purpose, and each sentence adds essential information: what it does, what it returns, and how to use it. There is no redundant or vague wording, 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 tool deals with complex workbook architecture and has no output schema, so the description must convey what the return value contains. It does list the main categories (data sources, worksheets, dashboards, parameters), but it does not describe the return structure (e.g., JSON keys, nesting) or address edge cases like file-not-found or invalid .twb files. It provides a good high-level overview but lacks sufficient detail for full contextual completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description references 'mainTwbPath from unpack_twbx output' for the twbFilePath parameter, but it does not mention includeFieldDetails or its effect on output detail. Given that schema description coverage is reported as 0% in the context, the description fails to compensate for parameter semantics, leaving the second parameter's purpose solely to the input 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 uses a specific verb ('Extracts') and resource ('complete workbook architecture') and enumerates the contents (data sources, worksheets, dashboards, parameters), making the tool's purpose unmistakable. It also distinguishes itself from sibling tools by focusing on the overall structure rather than specific components like calculated fields or data profiles.
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 clearly indicates when to use the tool: 'Ideal for understanding what's in this workbook at a glance.' It also instructs to use it with the 'mainTwbPath from unpack_twbx output,' which is a valuable prerequisite. However, it does not explicitly mention alternatives or when not to use the tool, stopping short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses key behavior: it verifies the `allowDataAccess` flag before downloading, describes the .twbx contents, and states the return value (file path). Missing error behavior, but overall transparent for a simple download 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 concise (5 sentences) and front-loaded with the main action. Each sentence adds value: action, verification, file contents, return value, and next-step tool. No redundancy or fluff.
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 primary use, the verification step, return value, and a related tool. It lacks explicit error handling and prerequisites (e.g., authentication), but given the tool's simplicity and lack of output schema, this is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters1/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description never mentions the single `workbookName` parameter. With schema description coverage reported as 0%, the agent gets no guidance on what value to provide. The parameter name is self-evident, but the description fails to reinforce or clarify it.
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 the exact action: 'Downloads a Tableau Public workbook as a .twbx file for offline analysis.' It specifies the verb, resource, and output format, and naturally distinguishes itself from sibling `get_*` and `unpack_twbx` 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 clear context for when to download (for offline analysis) and directs the agent to use `unpack_twbx` next. It does not explicitly state when not to use it, but the guidance given is adequate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of explaining behavior. It reveals that the tool returns 'the last 21 workbooks with direct URLs,' which is a meaningful behavioral detail. It also lists the types of metadata returned. It does not mention rate limits or error behavior, but for a read-only retrieval, this level of disclosure is adequate.
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, two sentences, with the main purpose stated upfront. It efficiently lists the return contents without unnecessary elaboration. Every sentence contributes to understanding what the tool does and what it returns.
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?
There is no output schema, so the description must explain return values. It does so by listing the returned metadata and the 21-workbook limit. It does not cover potential error scenarios or authentication requirements, but for a simple tool with one parameter and no side effects, this is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description never mentions the 'username' parameter explicitly, and the schema description coverage is 0%. It only refers to 'a Tableau Public user,' which implies the input but adds no details about format, constraints, or examples. The schema itself provides the only parameter description, and the description adds little beyond that.
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 comprehensive profile information for a Tableau Public user, enumerating specific data like workbook counts, followers, favorites, and the last 21 workbooks. It distinguishes itself from siblings like 'get_user_profile_basic' and 'get_user_profile_categories' by emphasizing 'comprehensive' and listing a broader scope of fields.
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 says 'Useful for getting a complete overview of a user's Tableau Public presence,' which implies its use case but does not explicitly contrast it with alternative tools such as 'get_user_profile_basic' or 'get_user_profile_categories'. There is no direct when-to-use vs. when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/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 covers the read-only nature implicitly via 'Retrieves', lists the return metadata (category names, contained workbooks, view counts, favorites), and mentions pagination support. It does not disclose potential errors or rate limits, but for a public data retrieval this is sufficient.
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, each adding value: purpose, return details, and a use case. It is front-loaded with the main verb and resource, contains no redundant phrasing, and is easy to scan.
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 tool has no output schema and no annotations, so the description must explain the return shape. It does so by listing key metadata fields and pagination support. It lacks explicit notes on response format or errors, but for a straightforward retrieval with three parameters, it is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Context signals indicate schema description coverage is 0%, so the description must compensate. It mentions 'startIndex and pageSize parameters' but does not explain their individual meanings, defaults, or constraints. The username parameter is only implied by 'user' in the description. This is insufficient compensation for the lack of schema-level descriptions.
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 begins with 'Retrieves workbook categories for a Tableau Public user,' which uses a specific verb and resource, clearly distinguishing it from sibling tools like get_user_profile or get_workbooks_list. It also states what is returned, making the 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 provides a use case ('Useful for understanding how a user organizes their content') but does not explicitly state when to use this tool versus alternatives or when not to use it. There is no mention of sibling tools or exclusion criteria, so only implied usage is present.
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 full burden. It discloses the returned fields and the parallel pagination behavior for maxResults, but it omits details about default pagination behavior when maxResults is not specified, rate limits, or error cases. The added detail on bulk fetching is useful, but the gap on standard pagination and response shape keeps it at a 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 four sentences, front-loaded with the primary purpose, and each sentence adds value: what it retrieves, what it returns, the key option, and the use case. There is no redundancy or filler, making it appropriately sized and well-structured.
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 5 parameters, no output schema, and no annotations. The description covers return fields, filtering, and bulk fetching, but it does not specify the overall response shape (list vs. object), default behavior when no filters are applied, or the relationship between page/limit and maxResults. These gaps make it incomplete for a tool with this complexity.
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 0% per context, but the description compensates by explaining maxResults (up to 500, parallel pagination) and filterMonth/filterYear with an example. However, page and limit are not described in the tool description, relying on their self-explanatory names and schema descriptions. The partial compensation is adequate but not complete, warranting a 3.
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 Tableau Public's Visualization of the Day winners and distinguishes this from sibling tools by specifying the curated VOTD selection. It names the resource and the action ('Retrieves') and lists concrete return fields, making the purpose unmistakable.
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 context for when to use the tool ('useful for discovering high-quality visualizations and analyzing trends') and explains the VOTD concept, but it does not explicitly mention alternatives or when not to use it. This is a clear context without exclusions, so it fits a 4.
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 discloses that the tool extracts files and returns a path, but does not mention side effects like file system writes beyond the extraction path, cleanup behavior, or required permissions. This is basic transparency 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 concise, using three sentences that front-load the main purpose and provide essential details (return type, categories, usage context). Every sentence contributes valuable information without 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 adequately explains the return value and categories, and mentions the download dependency. It lacks details on error handling, edge cases, or the exact scope of 'analyzes,' but is sufficient for a tool of this complexity given the schema descriptions.
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?
Although the context signal reports 0% schema coverage, the actual schema includes descriptions for both parameters (filePath and extractTo), providing sufficient semantics. The description itself adds no parameter-specific details, so the baseline of 3 is appropriate given 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: 'Extracts and analyzes the contents of a Tableau .twbx file.' It specifies the return value (extraction path and categorized inventory) and defines categories, distinguishing it from sibling tools that analyze specific aspects like calculated fields or structure.
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 by stating 'Use with files downloaded via download_workbook_twbx tool,' implying the tool is for post-download analysis. It doesn't explicitly exclude alternatives but the focus on extraction and inventory makes it clear when to use this tool over more targeted siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden and discloses meaningful behaviors: auto-resolution of the view name, automatic stripping of trailing numeric suffixes from workbookUrl, and support for two URL formats. This is substantive and helps the agent anticipate tool behavior.
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?
Five sentences, all informative, with the primary purpose stated upfront. There is no fluff or repetition; every sentence contributes value.
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 is quite complete for a low-complexity tool with no output schema: it explains inputs and core logic. The only minor gap is that it does not explicitly state whether the return value is a single URL string or a structured object.
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 description compensates for the 0% schema coverage by covering all four parameters: workbookUrl as required repository URL, viewName as optional/auto-resolved, workbookName as derivable from the URL, and useStaticPath as the format selector. The mapping is clear but not itemized.
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 it generates thumbnail URLs for a Tableau Public visualization, which is a specific verb and resource. It does not explicitly differentiate from sibling tools like get_workbook_image, so it falls one step short of full distinction.
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?
Provides clear usage context: recommends relying on auto-resolved view names because they often differ from workbook names, and explains how workbookName is derived when omitted. However, it never names alternative tools or states when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden. It discloses the supported groups, default group, returned data types (profiles, biographies, specialties, social links), and pagination limit, which goes beyond minimal disclosure. It omits potential error behavior or authentication needs, but the core behavioral traits are well covered.
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 four sentences long, each adding meaningful information without redundancy. It front-loads the core purpose and efficiently covers supported groups, return content, pagination, and use cases.
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 simplicity of the tool (3 parameters, no annotations, no output schema), the description is nearly complete. It covers purpose, supported values, return contents, and pagination. It could be more explicit about error handling, but the provided information is sufficient for an agent to select and invoke the tool 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 description coverage is reported as 0%, so the description must compensate. It explains the 'group' parameter with explicit values and default, and mentions the pagination max. However, it does not explain the exact constraint that limit must be 1 or 12, and startIndex is only hinted at through 'pagination supported', leaving some semantics to inference.
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 'retrieves' with a clear resource ('authors from Tableau Public community groups') and lists the supported groups. It clearly differentiates this tool from sibling tools like get_user_profile and get_workbooks_list, which focus on other entities.
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 states the tool is 'useful for discovering influential creators, learning from top community members, and finding quality content sources,' giving clear context for when to use it. It does not explicitly mention when not to use it or contrast with alternatives, but the specific use cases imply a distinct role.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/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 supported formats (CSV, Excel, JSON), unsupported formats (.hyper/.tde), and an optional image inventory feature. This gives the agent insight into tool capabilities and constraints, though it does not explicitly state that the tool is read-only or describe error handling.
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, front-loaded with the core purpose, and contains no filler. Every sentence adds value: one for main functionality and supported formats, another for usage context and optional features.
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?
Despite having no output schema or annotations, the description provides essential context: what data is extracted, which file types are supported or not, and how the tool fits into the unpack_twbx workflow. It does not describe the exact return format, but for a profile tool that extracts column names, the purpose is sufficiently 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?
Although the schema itself provides descriptions for all three parameters, the tool description adds some clarification by mentioning the extraction path from unpack_twbx and the optional image inventory. However, it does not describe twbFilePath's purpose, relying on the schema's description. Given the schema coverage, a 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 action ('Extracts column names') and its resource ('data files in an extracted TWBX package'). It also lists supported and unsupported file types, which distinguishes it from sibling tools like get_twbx_workbook_structure that focus on workbook metadata rather than data column extraction.
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 explicitly says to use it with the extraction path from the unpack_twbx tool, providing clear context for when to use it. It also notes unsupported .hyper/.tde files, implying those require Hyper API, but does not explicitly name alternative tools or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses that it parses each LOD, provides human-readable explanations, categorizes by common patterns, and includes learning resources. This gives a good sense of behavior without explicitly stating side effects or permissions, but the absence of any write-like behavior suggests a read-only 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 three sentences long, front-loaded with the core purpose, and includes supporting details about explanations, categorization, and usage. Every sentence earns its place, with no redundant or vague phrasing.
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 tool with two parameters and no output schema, the description covers the main functionality, output form (explanations, categorizations), and usage context. It stops short of detailing the exact return format, but given the absence of an output schema, it provides enough for an agent to understand the tool's purpose and typical 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 0%, so the description must compensate. It provides a useful hint for twbFilePath by referencing 'mainTwbPath from unpack_twbx output', but it does not mention includeUsageContext. The schema itself has a description for includeUsageContext, but the tool description does not elaborate on it, leaving a gap for one of 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 'Extracts and explains Level of Detail (LOD) expressions from a Tableau workbook', using a specific verb and resource. It distinguishes itself from sibling tools like get_twbx_calculated_fields by focusing specifically on LOD expressions.
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 states it is 'Ideal for understanding and learning from existing LOD calculations' and explicitly references using 'the mainTwbPath from unpack_twbx output'. This provides clear context and a prerequisite, though it does not explicitly mention alternatives or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/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 adds meaningful context beyond the raw schema: the tool returns 'essential user metadata in a lightweight format' and explicitly states that it does not include 'full workbook history.' This informs the agent about the response shape and the absence of heavier data, though it could go further by listing exact fields or noting behavior for nonexistent users.
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 and well-structured: it opens with a clear statement of what the tool does, immediately clarifies the difference from a sibling tool, and ends with practical use cases. Every sentence adds value, and there is no redundancy or filler.
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 no output schema, so the description should clarify what data the 'basic profile information' includes. It says 'essential user metadata' and 'lightweight format,' but does not enumerate the fields or mention behavior for invalid usernames. Given the tool's simplicity, the description is adequate but leaves gaps about exact return contents and error handling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description does not mention the username parameter at all, and schema description coverage is 0%. While the schema itself provides a reasonable description of the parameter, the tool description fails to compensate for the low coverage. For a single parameter, some mention of the expected input (e.g., a Tableau Public username) and any constraints would have raised the score.
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 with a specific verb ('Retrieves') and resource ('basic profile information for a Tableau Public user'). It also distinguishes itself from the sibling tool get_user_profile by explicitly noting it is a 'simpler alternative' that omits 'full workbook history,' making the specific scope clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: 'This is a simpler alternative to get_user_profile when you only need core profile details without the full workbook history.' It also mentions concrete use cases ('quick profile lookups and user validation'), giving the agent a clear decision rule for when to select this tool over its siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/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 details return fields ('titles, descriptions, authors, view counts, thumbnails, and direct URLs'), explains the directUrl utility, mentions the two search types ('vizzes' and 'authors'), and discloses pagination constraints ('max 100 results per request'). It does not cover rate limits or auth, but these are less critical for a public search 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 four sentences, front-loaded with the core purpose, and every sentence adds value. It avoids redundancy and fluff, efficiently covering purpose, return data, type options, pagination, and use cases.
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 moderate complexity and lack of an output schema, the description provides sufficient context: it names the return fields, mentions pagination, and gives usage examples. It does not describe error handling or sorting order, but these are not essential for a search tool. The description is mostly complete for an agent to select and invoke the tool 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?
The schema description coverage is reported as 0%, so the description must compensate. It adds meaning for 'type' by explaining 'vizzes' vs 'authors' and for pagination via 'start and count parameters (max 100 results per request).' However, it does not explain 'query' beyond a general reference or 'language' at all. The description partially compensates but leaves notable gaps.
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: 'Searches Tableau Public for visualizations or authors matching a query.' It specifies the resource (Tableau Public), the action (searches), and the scope (visualizations or authors). It also differentiates from sibling get_* tools by emphasizing search/discovery rather than direct 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?
The description provides clear context for use: 'Useful for content discovery, finding specific topics, and identifying relevant creators.' It implies when to use the tool, but it does not explicitly mention alternatives or when not to use it. Without naming a sibling like get_workbooks_list, the guidance remains somewhat general.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/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 clearly explains the pagination behavior (index and count, default 24 max 24, increments by count), which is a key behavioral trait. It also lists return content. However, it does not mention error cases, rate limits, or authentication requirements, though for a read-only public endpoint this is not critical. Overall, it discloses the most relevant behaviors sufficiently.
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 and front-loaded with the core purpose. All sentences carry useful information: the first states the primary action, the second details return values, the third explains pagination and defaults, and the last gives a practical use case. No filler or redundancy, making it efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with no output schema, the description is complete enough. It explains what the tool returns (follower usernames, metadata, workbook details), how pagination works, and typical use cases. There is no output schema to delegate return-value explanation to, and the description covers that need. Minor omissions like error behavior are not essential for successful invocation and understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It does so admirably: it explains index and count semantics with a concrete example (0, 24, 48), states the default and max for count, and clearly indicates username as the target user. This goes beyond simple parameter names and gives the agent enough to invoke the tool correctly.
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 followers for a Tableau Public user, using a specific verb and resource. It distinguishes itself from the sibling 'get_following' by focusing on followers, and further details the return content (usernames, metadata, workbook details), making the purpose unmistakable.
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 provides a use case ('analyzing user communities and discovering related authors') which implies when to use the tool, but it does not explicitly compare against alternatives or state when not to use it. Sibling tools like get_following exist, and no exclusions or alternative guidance is given, so the usage context is only implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/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 pagination behavior, default and max count (24), and index increments (0, 24, 48), which adds meaningful behavioral context beyond a simple retrieval statement.
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 four sentences, front-loaded with the main purpose, then return details and pagination. Every sentence earns its place with no filler.
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 moderate complexity and lack of output schema, the description adequately explains return content and pagination. It could mention error cases or requirement that the user exists, but overall it gives sufficient context for an agent to invoke correctly.
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?
Despite the schema having parameter descriptions (context says 0% coverage, but they exist), the description adds important semantics about how index and count work together for pagination, with an example. This compensates for any ambiguity in the schema and provides clear usage guidance.
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 the list of accounts a Tableau Public user is following, with a specific verb and resource. It distinguishes from siblings by mentioning 'following', which is opposite of get_followers and distinct from get_favorites/workbooks.
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?
Provides clear usage context: 'Useful for understanding user interests and discovering related content creators.' However, it does not explicitly mention when not to use it or name alternative tools, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/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 discloses the return size ('up to 20'), the return contents (titles, authors, view counts, thumbnails, URLs), and a key constraint (workbook name only, not full path). It does not mention error behavior or rate limits, but for a simple read-only retrieval, this is adequate and non-misleading.
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, front-loaded with the main action, and includes an example and use case without unnecessary detail. Every sentence adds value.
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 tool with only two parameters, no output schema, and no annotations, the description covers the essential aspects: what it does, what it returns, and how to provide input. It does not explain error cases, but the provided information is sufficient for basic usage.
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 already includes descriptions for both parameters (count and workbookName). The description adds a helpful example ('RunningforOlympicGold') and clarifies that only the workbook name is required, which compensates for any ambiguity in the schema's required list. This goes beyond the schema's own descriptions.
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 specific action: 'Retrieves recommended workbooks related to a specific Tableau Public workbook.' It names the resource (related workbooks) and distinguishes it from siblings like get_workbook_details or get_workbook_contents by focusing on recommendations.
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 context: 'Useful for content discovery and finding similar visualizations.' While it does not explicitly name alternative tools to avoid, the use case is sufficiently distinct from siblings. No exclusion criteria are given, but the purpose is clear enough to guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full behavioral disclosure. It accurately reveals the graph-building behavior, detection of circular dependencies, and inclusion of an ASCII tree visualization. It does not mention potential side effects (likely none), but for a read-only analysis tool, this is adequate and informative.
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, three sentences, with the primary action front-loaded. Every sentence adds value: what it builds, what it identifies, and how to use it. No fluff or repetition of schema details.
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 2 parameters, no annotations, and no output schema, the description covers the main aspects: purpose, key behaviors (roots, leaves, circular deps), and a usage hint. It does not detail the exact return schema or error scenarios, but for a dependency-analysis tool, the provided information is sufficient for an agent to select and invoke it correctly.
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 already provides descriptions for both parameters (e.g., full path, include source fields default false). The tool description adds practical context by referring to 'mainTwbPath from unpack_twbx output,' which helps map the twbFilePath parameter to a real user workflow. This goes beyond schema descriptions without redundancy.
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 opens with a specific verb and resource: 'Builds a dependency graph showing which calculations depend on which in a Tableau workbook.' This clearly distinguishes it from sibling tools that list fields or structure. It also enumerates specific outputs (root/leaf calculations, circular dependencies) that set it apart.
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?
States it is 'Ideal for understanding complex calculation chains' and explicitly instructs to 'Use with the mainTwbPath from unpack_twbx output,' giving clear context for when to invoke it. Does not explicitly exclude simpler cases or name alternative tools, but the guidance is specific and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/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 that only 'visible' sheets are included, and describes the type of data returned (metadata, types, configurations, URLs). It doesn't mention auth, rate limits, or errors, but for a read-only retrieval tool, the behavior is adequately transparent.
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?
Four sentences, each adds value: purpose, output specifics, required input, and use case. Front-loaded with the main action, no filler or redundant 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 (one parameter, no output schema, no annotations), the description covers the essential aspects: what it does, what it returns, and what input is needed. It could mention response format or error conditions, but these are not critical for invocation.
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 0% (the property lacks a standard description), but the tool description explicitly explains the single parameter 'workbookName' and provides a concrete example. This compensates well for the schema gap.
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 ('Retrieves') and resource ('complete structure of a Tableau Public workbook') and lists concrete outputs (sheets, dashboards, stories, URLs, metadata). This clearly differentiates it from siblings like get_workbook_details, which likely focuses on workbook-level metadata.
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 states a clear prerequisite (workbook name from URL) and a concrete use case ('exploring workbook structure and accessing individual visualizations'), providing context for when to use it. However, it does not explicitly contrast with alternative sibling tools or state when *not* to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/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 return behavior by enumerating the metadata fields (title, view names, etc.) and specifies the exact input format with an example. It does not mention error handling or rate limits, but for a simple read operation, the disclosed behavior is reasonably complete.
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 main purpose, followed by output details and input requirement. Every sentence adds value without repetition or fluff, 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.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with one parameter and no output schema, the description covers the key aspects: what it does, what it returns, and what input is needed. It lacks edge-case or alternative usage details, but these are not critical for a straightforward retrieval tool, making it sufficiently 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?
The schema already includes a description for workbookName, but the tool description adds a concrete example and explains where to obtain the value from the Tableau Public URL. This reinforces and slightly extends the schema, providing enough guidance for correct invocation.
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 'Retrieves detailed metadata for a single Tableau Public workbook,' using a specific verb and resource. It further lists the types of metadata returned, distinguishing it from sibling tools like get_workbooks_list or get_workbook_contents by emphasizing 'single' and 'details.'
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 says 'Useful for getting complete information about a specific workbook,' providing clear context for when to use this tool. It also includes the prerequisite of needing the workbook name from the URL. However, it does not explicitly mention alternatives or exclude other scenarios, so it lacks the full 'when-not' guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/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 correctly explains pagination behavior via start/count with a max of 50, and the visibility filter to include or exclude hidden workbooks. It also specifies the kind of metadata returned, giving a solid picture of what the tool does without overpromising.
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, with the main purpose front-loaded. Every sentence adds value: the first defines the operation, the second lists returned metadata, and the third covers pagination and visibility. No filler or redundant 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?
For a read-only list tool with no output schema, the description adequately covers the operation, return fields, pagination constraints, and visibility filtering. It does not mention potential default ordering or rate limits, but these are not critical for this tool's usage. The overall context is sufficient for an agent to select and invoke the tool correctly.
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?
Although the context signal reports 0% schema description coverage, the actual schema contains descriptions for all four parameters. The description adds value beyond the schema by explaining the pagination semantics (start/count with max 50) and the meaning of the visibility filter (include/exclude hidden workbooks). This compensates for any perceived gap and provides clear parameter usage context.
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 opens with 'Retrieves a paginated list of workbooks for a Tableau Public user,' which is a specific verb-resource pair. It clearly distinguishes from siblings like get_workbook_details or get_workbook_contents by focusing on the complete portfolio and listing metadata including titles, view counts, publication dates, thumbnails, sheet counts, and direct URLs.
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 states 'Useful for browsing a user's complete workbook portfolio,' giving a clear use case. It doesn't explicitly mention when not to use it or name alternative tools, but the purpose is clear enough that an agent can infer it is for list-level queries rather than details or contents of a single workbook.
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/datalabs89/tableau-public-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server