MCP server for reading, modifying, and querying Tableau workbook files locally
Server has 34 tools with basic structure but significant quality gaps. Tool names follow verb_noun convention (good), but descriptions are inconsistent, many lack detail on WHEN to use them or what they return. Input schemas are present for sampled tools (ReadWorkbookInput, AddCalculatedFieldInput) with Pydantic validation, but 18 tools (8-18, 27-31) have NO visible schema definitions in the provided code, only risk labels. Output schemas are undocumented. Error handling is absent from visible code. Security concerns: tools accept file paths without sanitization (path traversal risk). Composition is reasonable (single responsibility per tool), but parameter descriptions often lack format/constraint details. Baseline: avg tool description ~194 chars; this server's visible descriptions range 40-120 chars, mostly generic.
Add filter/highlight/URL actions to dashboards
Add display aliases to a field's values
Create bin fields (numeric ranges)
Add a new calculated field to a datasource
Add pre-filters at datasource level
Create custom groups (combine dimension values)
Add a new parameter (range, list, or all-value)
18 of 34 tools (tools 8-18, 27-31, 34) have NO visible input schema definitions in source code, only risk labels. This blocks LLM parameter inference and validation.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields (e.g., datasource_name, field_id). Baseline: 100% of A+ tools document return types.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 45 | 2026-07-28+ | v2 |
Add a manual or Top N set
Analyze worksheet/dashboard visual configuration
Create a new worksheet with fields, marks, and encodings
Show column names, types, and row count for a table
Set number/date format on a field
Trace where a field is used across the workbook
List all dashboard actions with full details
List all calculated fields with formulas
Extract all Custom SQL queries from datasources
List all fields/columns in a datasource
List all filters with types and values
List all tables in a .hyper extract file
List all parameters in a workbook
List all sets in a datasource
List tooltip configurations for all worksheets
Change datasource connection details
Modify a parameter's value, range, or allowed values
Create/update field folders
Run SQL queries against .hyper extract data
Parse and display workbook structure
Remove an action by name
Remove a calculated field from a datasource
Remove a parameter
Remove a set
Rename worksheet and update all references
Save the modified workbook (creates backup first)
Set or replace customized tooltips on worksheets
File path parameters (filepath) accept user input without sanitization. No validation against path traversal (e.g., '../../../etc/passwd'). ReadWorkbookInput validates file extension but not path safety. Risk: arbitrary file read/write.
No error handling visible in code. Tools do not return actionable error messages (e.g., 'Invalid datasource name. Available: [list]'). LLMs cannot self-correct or retry intelligently.
Descriptions for 16 tools are missing or under 20 chars (tools 8-18, 27-31, 34). LLMs cannot determine when to select them.