Tiling Trees MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Tiling Trees MCP Servercreate a tiling tree for improving urban air quality"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Tiling Trees MCP Server
A Model Context Protocol (MCP) server implementing the Tiling Trees Method - a systematic approach to exploring solution spaces by recursively partitioning them into mutually exclusive and collectively exhaustive (MECE) subsets.
Based on the method described in The Tiling Tree Method.
What is the Tiling Trees Method?
The tiling trees method helps you systematically explore all possible solutions to a problem by:
Starting with the complete solution space - all possible approaches to your challenge
Splitting using MECE principles - divide into categories that don't overlap (Mutually Exclusive) but together cover everything (Collectively Exhaustive)
Recursively subdividing - continue splitting each subset until you reach concrete ideas/projects
Evaluating leaves - assess the viability of each concrete solution
The key insight: like tiles covering a wall completely without overlaps, your categories should partition the solution space with precision.
Related MCP server: Paperlib MCP
Why Use This Method?
Guarantees completeness: You won't overlook viable solutions
Forces creative thinking: Systematic exploration surfaces ideas you might not normally consider
Enables objective comparison: All solutions emerge from the same structured process
Identifies gaps: Missing categories become obvious
Evolves over time: Revisit trees as technologies and contexts change
Installation
npm install
npm run buildConfiguration
Add to your MCP settings file (e.g., claude_desktop_config.json):
{
"mcpServers": {
"tiling-trees": {
"command": "node",
"args": ["/path/to/tiling-trees-mcp/dist/index.js"]
}
}
}Core Concepts
Tiles
Each tile represents a subset of the solution space with a precise definition to avoid overlaps with siblings.
MECE Splits
When splitting a tile, choose an attribute/dimension that creates Mutually Exclusive and Collectively Exhaustive subsets:
Mutually Exclusive: No solution belongs to multiple categories
Collectively Exhaustive: Every solution belongs to exactly one category
Split Attributes
The dimension used to partition (examples):
Energy source: electric, chemical, mechanical, nuclear
Scale: nano, micro, meso, macro
Physical mechanism: conduction, convection, radiation
Timeframe: immediate, short-term, long-term
Cost: low, medium, high
Tip: Physics and math-oriented splits often work best because physical laws are concise and comprehensive.
Leaves
Terminal nodes representing concrete ideas or projects ready for evaluation.
Evaluation
Rate leaves on:
Impact (1-10): Potential effect if successful
Feasibility (1-10): Likelihood of success with available resources
Uniqueness (1-10): How novel compared to existing solutions
Timeframe: Expected development timeline
Available Tools
1. create_tree
Create a new tiling tree to explore a problem
Start by defining your challenge. The tree begins with a root tile representing all possible solutions.
{
"name": "Transportation Decarbonization",
"problemStatement": "How can we reduce carbon emissions in transportation by 80% by 2050?"
}2. split_tile
Split a tile into MECE subsets (the core operation)
Choose a meaningful attribute and create categories that completely partition the parent space.
{
"tileId": "root-tile-id",
"splitAttribute": "Transportation mode",
"splitRationale": "Different modes have distinct technical constraints and emission profiles",
"subsets": [
{
"title": "Road vehicles",
"description": "Cars, trucks, buses, motorcycles - vehicles operating on roads",
"isLeaf": false
},
{
"title": "Rail",
"description": "Trains, trams, subways - vehicles on rails",
"isLeaf": false
},
{
"title": "Aviation",
"description": "Airplanes, helicopters - atmospheric flight vehicles",
"isLeaf": false
},
{
"title": "Maritime",
"description": "Ships, boats, ferries - water-based transport",
"isLeaf": false
}
]
}3. mark_mece
Validate that a split is truly MECE
After creating a split, verify completeness and exclusivity.
{
"tileId": "parent-tile-id",
"isMECE": true,
"coverageNotes": "Covers all major transportation modes. Edge cases like cable cars fall under 'Rail'. Space transport excluded as not relevant to 2050 target."
}4. add_tiles_to_split
Add missing categories to an existing split
When you realize a category was missed, add it (invalidates MECE status).
{
"parentId": "parent-tile-id",
"newTiles": [
{
"title": "Pipeline transport",
"description": "Movement of goods through pipelines (oil, gas, etc.)",
"isLeaf": false
}
]
}5. evaluate_tile
Evaluate a leaf tile (concrete solution)
Assess viability with quantitative metrics.
{
"tileId": "leaf-tile-id",
"impact": 8,
"feasibility": 6,
"uniqueness": 4,
"timeframe": "5-10 years",
"notes": "High impact but faces infrastructure challenges",
"calculationsOrPilots": "Pilot study in 3 cities showed 60% reduction in emissions"
}6. get_coverage_analysis
Analyze solution space coverage
Identify unexplored branches, unvalidated splits, and next steps.
{
"treeId": "tree-id"
}Returns:
Tiles not yet split (exploration gaps)
Splits not validated for MECE
Leaves not evaluated
Coverage percentage
Suggestions for next steps
7. get_unexplored_tiles
Find gaps in your exploration
Get tiles that haven't been split yet.
8. get_top_leaves
Find the best solutions
Get highest-rated leaves by impact, feasibility, uniqueness, or combined score.
{
"criteria": "combined",
"limit": 10,
"treeId": "tree-id"
}9. export_tree
Export for visualization
Export in JSON, Markdown, Mermaid diagrams, or DOT (GraphViz) format.
{
"treeId": "tree-id",
"format": "mermaid"
}Additional Tools
get_trees: List all tiling treesget_tile: Get details of a specific tileexplore_path: Explore tree structure from a tileget_leaf_tiles: Get all concrete ideas/projectssearch_tiles: Search by contentupdate_tile: Update tile informationget_statistics: Overall statistics
10. validate_split_quality
Detect common antipatterns in a split
Automatically checks for:
Vague language: Imprecise terms like "natural", "traditional", "simple"
Catch-all buckets: Categories like "other" or "misc" that prevent exploration
Mixed dimensions: Splitting along inconsistent attributes
Retroactive splitting: Using pre-existing solution taxonomies instead of first principles
Incomplete coverage: Splits not validated for MECE
{
"tileId": "parent-tile-id"
}Returns:
Quality score (0-100)
List of issues with severity (error/warning)
Specific recommendations for improvement
11. get_tree_validation_report
Validate entire tree for quality
Get validation reports for all splits in a tree with an overall quality score.
{
"treeId": "tree-id"
}Common Failure Modes
Based on real-world usage, watch out for these antipatterns:
1. Retroactive Splitting (Taxonomy Import)
Problem: Starting with known solution types from literature locks you into existing categories.
Bad: Splitting "battery improvements" by {Li-ion optimizations, NiMH advancements, Lead-acid improvements} Good: Splitting by {chemistry type, electrode material, electrolyte state, architecture}
Why: Retroactive splitting only generates variations within known categories. First-principles splitting discovers fundamentally new possibilities.
2. Catch-All Buckets
Problem: Creating "other materials" or "miscellaneous" categories prevents systematic exploration.
Bad: {Silicon, Graphite, Lithium metal, Other materials} Good: {Crystalline, Amorphous, Composite, Layered}
Why: You can't split "everything else" systematically. If you don't know what belongs in a category, the split dimension needs revision.
Use validate_split_quality to automatically detect catch-all buckets (error severity).
3. Vague Language ("Words That Mean Nothing")
Problem: Terms like "natural", "forced", "traditional" lack physical precision and create unavoidable overlaps.
Bad: {Natural cooling, Forced cooling} Good: {Passive convection, Active forced-air, Liquid cooling, Phase-change}
Why: "Natural" doesn't map to unique physical properties - it could mean many things. Use measurable properties instead.
Use validate_split_quality to automatically flag vague terms (warning severity).
4. Mixed Dimensions (Category Errors)
Problem: Splitting along inconsistent dimensions creates inherent overlaps.
Bad: Vegetables classified as {Red ones, Sweet ones, Crunchy ones} - mixing color, taste, and texture Good: Split by ONE dimension: {Root, Stem, Leaf, Fruit, Flower} OR {Raw-edible, Requires-cooking}
Why: One vegetable can be red AND sweet AND crunchy. Categories must be mutually exclusive.
Use validate_split_quality to detect mixed dimension warnings.
5. Incomplete Coverage
Problem: Missing possibilities in the split leaves gaps unexplored.
Solution: Always validate splits with mark_mece and use get_coverage_analysis to find gaps.
Validation Workflow
After creating splits, validate quality:
// Check a specific split
validate_split_quality({
tileId: "<parent-tile-id>"
})
// Response:
{
"score": 70,
"issues": [
{
"type": "vague_language",
"severity": "warning",
"message": "Tile 'Advanced materials' uses vague term 'advanced'",
"suggestion": "Replace 'advanced' with measurable properties..."
}
],
"recommendations": [
"Replace vague terms with measurable physical properties"
]
}
// Check entire tree
get_tree_validation_report({
treeId: "<tree-id>"
})
// Response includes overall score and all split reportsWorkflow Example
Problem: Improve battery energy density
Step 1: Create the tree
create_tree({
name: "Battery Energy Density Improvements",
problemStatement: "How can we increase battery energy density by 3x?"
})Step 2: First split - by chemistry
split_tile({
tileId: "<root-id>",
splitAttribute: "Battery chemistry",
splitRationale: "Fundamental chemistry determines theoretical energy density limits",
subsets: [
{ title: "Lithium-based", description: "Li-ion, Li-polymer, Li-metal, Li-S, Li-air" },
{ title: "Sodium-based", description: "Na-ion and variants" },
{ title: "Metal-air", description: "Zn-air, Al-air (excluding Li-air)" },
{ title: "Solid-state", description: "Solid electrolyte batteries (any chemistry)" },
{ title: "Alternative chemistries", description: "Mg, Ca, multivalent ion, organic" }
]
})Step 3: Validate MECE
mark_mece({
tileId: "<root-id>",
isMECE: true,
coverageNotes: "Covers main battery chemistry families. Some overlap (e.g., Li-air could be 'metal-air'), resolved by treating Li as primary classifier."
})Step 4: Continue splitting
Split "Lithium-based" by approach:
Electrode material improvements
Electrolyte improvements
Cell architecture innovations
Manufacturing process optimizations
Step 5: Reach leaves and evaluate
When you reach concrete ideas:
evaluate_tile({
tileId: "<silicon-anode-id>",
impact: 9,
feasibility: 7,
uniqueness: 5,
timeframe: "2-3 years",
calculationsOrPilots: "Lab tests show 40% capacity increase; volume expansion remains challenge"
})Step 6: Analyze coverage
get_coverage_analysis({ treeId: "<tree-id>" })Step 7: Find top solutions
get_top_leaves({
criteria: "combined",
limit: 5,
treeId: "<tree-id>"
})Best Practices
1. Define Precisely
Write explicit definitions for each tile to ensure no overlaps. Be mathematical/physical when possible.
Good: "Electric vehicles using only battery power (no combustion engine)" Bad: "Clean cars"
2. Choose Good Split Attributes
Prefer physics/math-based dimensions
Ensure the attribute creates natural, complete partitions
Document rationale for future reference
3. Validate MECE Rigorously
Check for overlaps between sibling tiles
Verify all possibilities are covered
Document edge cases
4. Split to Appropriate Depth
Don't stop too early (you'll miss solutions)
Don't go too deep too fast (you'll lose the forest for the trees)
Leaf nodes should be concrete enough to evaluate
5. Evaluate Honestly
Base ratings on data when possible
Document assumptions
Include calculations or pilot results
Be consistent across evaluations
6. Revisit Periodically
Technologies evolve
Contexts change
Previously unviable branches may become promising
Tips for AI Assistants Using This MCP
When helping users with tiling trees:
Start with problem clarification - ensure the problem statement is specific
Suggest physics/math splits when applicable - avoid retroactive splitting from known solutions
Run validation after splits - use
validate_split_qualityto catch antipatterns earlyFlag vague language - watch for terms like "natural", "traditional", "advanced"
Prevent catch-all buckets - never allow "other" or "misc" categories
Enforce single dimensions - ensure each split uses one consistent attribute
Encourage precision - push for measurable properties and explicit definitions
Use coverage analysis - regularly check for unexplored areas
Balance breadth and depth - explore widely before going deep
Prompt evaluation - remind users to rate leaves with calculations/pilots, not just intuition
Proactive Validation: After each split, automatically run validate_split_quality and present any issues with constructive suggestions. This helps users learn the method correctly.
Integration with Web Interface
This MCP server complements the tiling-trees web interface. Use the server for:
Systematic exploration and validation
Programmatic tree construction
Coverage analysis
Bulk operations
Use the web interface for:
Visual exploration
Presentations
Collaborative sessions
Quick modifications
Export from MCP → Import to web interface for best of both worlds.
Example Split Attributes by Domain
Engineering/Physical
Energy source
Scale (nano/micro/macro)
Physical mechanism
Material type
Phase (solid/liquid/gas/plasma)
Business/Strategy
Market segment
Revenue model
Geographic region
Customer type
Distribution channel
Software/Computing
Architecture pattern
Data structure
Computational complexity class
Deployment model
Interface type
Research/Science
Methodology (experimental/theoretical/computational)
Organism/system type
Time scale
Spatial scale
Measurement technique
Troubleshooting
Q: My split has overlaps - what do I do? A: Refine definitions to make categories mutually exclusive. Sometimes this means choosing a different split attribute.
Q: I can't cover everything with my categories A: Add an "Other" category temporarily, then revisit with a better split attribute that creates natural, complete partitions.
Q: How do I know when to stop splitting? A: Stop when you reach concrete, evaluable ideas/projects. If a tile is still too abstract to assess impact/feasibility, keep splitting.
Q: Can I have multiple trees for the same problem? A: Yes! Different split strategies yield different insights. Compare trees to find the most useful partitioning.
License
MIT
References
The Tiling Tree Method - Original article
MECE Principle - Background on mutually exclusive and collectively exhaustive categorization
Available Tools
18 toolsadd_tiles_to_splitA
Add additional tiles to an existing split (when you realize a category was missed). This invalidates the MECE validation and requires re-verification.
| Name | Required | Description | Default |
|---|---|---|---|
| parentId | Yes | ID of the parent tile | |
| newTiles | Yes | New tiles to add to the split |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes the mutation effect ('Add additional tiles'), the consequence ('invalidates the MECE validation'), and the required follow-up action ('requires re-verification'). However, it doesn't mention potential side effects like whether this operation is reversible, what permissions are needed, or rate limits, leaving some behavioral aspects uncovered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise with just two sentences that each earn their place. The first sentence states the purpose and usage context, while the second provides critical behavioral information about consequences. There's zero wasted language or redundancy.
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 mutation tool with no annotations and no output schema, the description does well by explaining the purpose, usage context, and important behavioral consequences. However, it doesn't describe what the tool returns or provide details about error conditions, which would be helpful given the lack of output schema. The description is mostly complete but has minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters clearly documented in the schema. The description adds no additional parameter semantics beyond what's already in the structured schema. According to the scoring rules, when schema coverage is high (>80%), the baseline is 3 even with no parameter information in the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Add additional tiles'), target resource ('to an existing split'), and purpose ('when you realize a category was missed'). It distinguishes this from sibling tools like 'split_tile' (which creates new splits) and 'update_tile' (which modifies existing tiles).
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 explicitly states when to use this tool: 'when you realize a category was missed.' It also provides an important exclusion: 'This invalidates the MECE validation and requires re-verification,' which helps the agent understand this should not be used if MECE validation is currently valid. This gives clear context for when to use versus alternatives like 'split_tile' for initial splits.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_treeA
Create a new tiling tree to explore a problem/challenge. The tree starts with a root tile representing the complete solution space, which you'll then split recursively using MECE (Mutually Exclusive, Collectively Exhaustive) principles.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name for this tiling tree | |
| problemStatement | Yes | The problem or challenge to explore (e.g., 'How can we reduce carbon emissions in transportation?') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It explains what gets created (a new tiling tree with a root tile) and the methodology (MECE principles), but doesn't address important behavioral aspects like whether this operation is idempotent, what permissions might be required, how the tree is persisted, or what happens if a tree with the same name already exists. It provides some context but leaves significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise and well-structured in two sentences. The first sentence states the core action, the second explains the resulting structure and methodology. Every word earns its place with no redundancy or unnecessary elaboration.
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 this is a creation tool with no annotations and no output schema, the description should do more to explain what gets returned or how to verify success. While it adequately explains what the tool does, it doesn't address important contextual questions like what identifier is returned for the created tree, whether there are size limits for problem statements, or how to subsequently reference the created tree. The completeness is adequate but has clear gaps.
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?
With 100% schema description coverage, the schema already fully documents both parameters. The description doesn't add any additional semantic meaning beyond what's in the schema - it doesn't explain how the 'name' parameter affects tree identification or how the 'problemStatement' influences the root tile's content. The baseline score of 3 is appropriate when the schema does all the parameter documentation work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('create') and resource ('new tiling tree'), and distinguishes it from siblings by specifying it's for starting a tree exploration process. It explains the tree's structure (root tile representing solution space) and methodology (MECE principles), which differentiates it from tools like 'add_tiles_to_split' or 'split_tile' that work on existing trees.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool: to start exploring a problem/challenge by creating a new tiling tree. It doesn't explicitly state when NOT to use it or name specific alternatives, but the context implies this is the initial step before using other tree manipulation tools like 'split_tile' or 'add_tiles_to_split'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
evaluate_tileC
Evaluate a leaf tile (concrete idea/project) on impact, feasibility, and uniqueness. Include any calculations or pilot studies performed.
| Name | Required | Description | Default |
|---|---|---|---|
| tileId | Yes | ID of the tile to evaluate | |
| impact | No | Impact rating (1-10 scale) | |
| feasibility | No | Feasibility rating (1-10 scale) | |
| uniqueness | No | Uniqueness rating (1-10 scale) | |
| timeframe | No | Expected timeframe (e.g., '1-2 years', '5-10 years') | |
| notes | No | Additional evaluation notes | |
| calculationsOrPilots | No | Calculations or pilot studies performed to evaluate this idea |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions that evaluation should 'include any calculations or pilot studies performed,' which hints at expected inputs, but doesn't describe what the tool actually does (e.g., stores ratings, triggers notifications, updates tile status) or any side effects (e.g., whether it modifies the tile or just logs evaluation). For a tool with potential write operations, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose. It avoids redundancy and wastes no words, though it could be slightly more structured (e.g., separating evaluation criteria from input requirements). Every part earns its place, but it's borderline sparse for a tool with 7 parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (7 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain what happens after evaluation (e.g., returns a confirmation, updates a database), how ratings affect the tile, or any error conditions. For a tool that likely performs a write operation (evaluating implies storing data), more behavioral context is needed to be complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 7 parameters thoroughly (e.g., rating scales, timeframe format). The description adds minimal value beyond the schema by mentioning 'impact, feasibility, and uniqueness' and 'calculations or pilot studies,' which map to parameters but don't provide additional context like how ratings are used or what constitutes valid calculations. Baseline 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Evaluate a leaf tile (concrete idea/project) on impact, feasibility, and uniqueness.' It specifies the verb ('evaluate') and resource ('leaf tile'), and mentions the three evaluation dimensions. However, it doesn't explicitly differentiate this from sibling tools like 'get_tile' or 'update_tile' that might also interact with tiles.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a tile ID from 'get_tile'), compare it to similar tools like 'validate_split_quality' or 'get_coverage_analysis', or indicate when evaluation is appropriate (e.g., after tile creation vs. before splitting). Usage is implied but not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
explore_pathC
Explore the tree structure from a specific tile, showing the hierarchical breakdown
| Name | Required | Description | Default |
|---|---|---|---|
| tileId | Yes | ID of the tile to explore from | |
| depth | No | How many levels deep to explore (default: 10) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions 'explore' and 'hierarchical breakdown', implying a read operation, but lacks details on permissions, rate limits, output format, or any side effects. This leaves significant gaps in understanding how the tool behaves beyond basic functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose ('explore the tree structure') and adds necessary detail ('from a specific tile, showing the hierarchical breakdown'). There is no wasted verbiage, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete for a tool that likely returns complex hierarchical data. It does not address what the output contains (e.g., structure format, data types), error conditions, or behavioral nuances, leaving the agent with insufficient context for reliable use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, clearly documenting both parameters ('tileId' and 'depth'). The description adds no additional meaning beyond the schema, such as explaining what a 'tile' represents or the implications of depth levels. Baseline score of 3 is appropriate as the schema handles parameter documentation adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('explore') and resource ('tree structure from a specific tile'), with the hierarchical breakdown providing additional specificity. However, it does not explicitly distinguish this tool from similar siblings like 'get_tile' or 'search_tiles', which might also retrieve tile-related information but with different scopes or formats.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_tile', 'search_tiles', and 'get_leaf_tiles' that might offer overlapping functionality, there is no indication of context, prerequisites, or exclusions to help an agent choose appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_treeC
Export a tiling tree in various formats for visualization or documentation
| Name | Required | Description | Default |
|---|---|---|---|
| treeId | Yes | ID of the tree to export | |
| format | Yes | Export format |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions the tool exports 'in various formats' but doesn't disclose behavioral traits such as whether this is a read-only operation, if it requires specific permissions, what the output looks like (e.g., file download vs. inline data), or any rate limits. The description is minimal and lacks critical operational details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose ('Export a tiling tree') and adds value with the purpose clause ('for visualization or documentation'). There is no wasted verbiage, and every word earns its place.
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 and no output schema, the description is incomplete for a tool that likely produces significant output data. It doesn't explain what the exported result contains (e.g., tree structure, metadata) or how it's delivered, leaving gaps for an AI agent to understand the tool's behavior fully. The context signals indicate a simple parameter set, but the description doesn't compensate for the lack of structured output information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents both parameters (treeId and format with enum values). The description adds no additional meaning beyond what the schema provides, such as explaining what a 'tiling tree' is or how formats differ. Baseline 3 is appropriate since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Export') and resource ('a tiling tree'), and specifies the purpose ('for visualization or documentation'). It distinguishes from siblings like 'get_trees' (list) or 'get_tree_validation_report' (validation) by focusing on export functionality. However, it doesn't explicitly differentiate from all siblings (e.g., 'explore_path' might also output data).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an existing tree), exclusions, or comparisons to siblings like 'get_trees' (which might retrieve tree data without export formatting). Usage is implied only by the purpose statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_coverage_analysisC
Analyze the completeness of solution space exploration for a tree. Shows unexplored branches, unvalidated splits, and suggestions for next steps.
| Name | Required | Description | Default |
|---|---|---|---|
| treeId | Yes | ID of the tree to analyze |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It describes what the tool does ('analyze... shows unexplored branches, unvalidated splits, and suggestions') but lacks critical details: whether this is a read-only operation, if it requires specific permissions, what the output format is (e.g., structured report or raw data), or any performance considerations like rate limits. For a tool with no annotation coverage, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded, with a clear purpose in the first sentence. It uses two sentences efficiently: the first states the overall goal, and the second elaborates on specific aspects ('unexplored branches, unvalidated splits, and suggestions'). There's no wasted text, though it could be slightly more structured by explicitly separating features.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of analyzing tree exploration completeness, the description is incomplete. With no annotations and no output schema, it fails to disclose behavioral traits (e.g., read-only status, output format) or provide sufficient context for effective use. It hints at what the analysis includes but doesn't cover how results are returned or any limitations, making it inadequate for a tool with such a nuanced purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with 'treeId' clearly documented as 'ID of the tree to analyze.' The description adds no additional parameter semantics beyond this, such as format constraints or examples. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, as the description doesn't compensate but also doesn't detract.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Analyze the completeness of solution space exploration for a tree.' It specifies the action ('analyze') and resource ('solution space exploration for a tree'), distinguishing it from siblings like 'get_trees' (list trees) or 'get_tree_validation_report' (validation-specific). However, it doesn't explicitly differentiate from 'get_unexplored_tiles' or 'get_top_leaves', which might overlap in analyzing tree aspects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions analyzing 'unexplored branches, unvalidated splits, and suggestions for next steps,' but doesn't specify contexts where this is preferred over tools like 'get_unexplored_tiles' (for unexplored branches) or 'get_tree_validation_report' (for validation). There's no mention of prerequisites or exclusions, leaving usage ambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_leaf_tilesC
Get all leaf tiles (concrete ideas/projects) from a tree
| Name | Required | Description | Default |
|---|---|---|---|
| treeId | No | Optional tree ID to filter by |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the action ('Get all leaf tiles') but does not describe traits like whether this is a read-only operation, potential rate limits, authentication needs, or what 'all' entails (e.g., pagination, return format). This leaves significant gaps for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is appropriately sized and front-loaded, with every part contributing to clarity, earning a top score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (retrieving multiple items), lack of annotations, and no output schema, the description is incomplete. It does not explain return values, error handling, or behavioral details, making it inadequate for full contextual understanding despite the simple parameter schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the parameter 'treeId' documented as 'Optional tree ID to filter by'. The description adds no additional meaning beyond this, such as format examples or constraints, so it meets the baseline of 3 where the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Get') and resource ('leaf tiles'), specifying they are 'concrete ideas/projects from a tree', which provides a specific purpose. However, it does not explicitly distinguish this tool from sibling tools like 'get_tile' or 'get_top_leaves', which might also retrieve tile-related data, so it lacks sibling differentiation for a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as 'get_tile' for individual tiles or 'get_top_leaves' for top-level leaves. It mentions filtering by tree ID but does not clarify scenarios or exclusions, leaving usage context implied at best.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_statisticsB
Get overall statistics about all tiling trees
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states what the tool does but doesn't describe important behavioral aspects: whether this is a read-only operation, what format the statistics are returned in, whether there are rate limits, or what specific statistics are included. The description is minimal and lacks operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise - a single sentence that directly states the tool's purpose without any unnecessary words. It's front-loaded with the essential information and contains zero wasted text. This is an excellent example of efficient documentation for a simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no annotations and no output schema, the description is insufficiently complete. For a statistics retrieval tool, the description should ideally indicate what statistics are returned, the format of the response, or at minimum acknowledge that this provides aggregated data. The current description leaves too many questions unanswered about what 'overall statistics' actually means.
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 has zero parameters with 100% schema description coverage, so the baseline is 4. The description appropriately doesn't discuss parameters since none exist, and it correctly focuses on the tool's purpose rather than attempting to document non-existent inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Get') and resource ('overall statistics about all tiling trees'). It distinguishes itself from siblings by focusing on aggregated statistics rather than individual tree operations or tile-level details. However, it doesn't explicitly contrast with similar statistical tools like 'get_coverage_analysis' or 'get_top_leaves'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_coverage_analysis', 'get_top_leaves', and 'get_trees' that might provide related data, there's no indication of when this aggregated statistics tool is preferred over those more specific tools. Usage context is implied but not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tileC
Get details of a specific tile
| Name | Required | Description | Default |
|---|---|---|---|
| tileId | Yes | ID of the tile |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves details but does not specify what 'details' include, whether it's a read-only operation, potential error conditions, or any performance or permission constraints. This leaves significant gaps in understanding the tool's behavior beyond basic retrieval.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any wasted words. It is appropriately sized and front-loaded, making it easy for an agent to parse quickly, earning a high score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete for a tool that retrieves details. It does not explain what 'details' entail, such as data structure or fields returned, nor does it cover behavioral aspects like error handling. For a retrieval tool with no structured output information, this leaves the agent with insufficient context to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the 'tileId' parameter clearly documented. The description adds no additional meaning beyond the schema, such as explaining the format or source of tile IDs. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, as the description does not compensate but also does not detract.
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 'Get details of a specific tile' clearly states the verb ('Get details') and resource ('a specific tile'), making the purpose understandable. However, it does not distinguish this tool from siblings like 'get_leaf_tiles' or 'get_unexplored_tiles', which also retrieve tile information but with different scopes or filters, so it lacks sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, such as needing a tile ID, or compare it to other tile-related tools like 'search_tiles' or 'evaluate_tile', leaving the agent with no explicit usage context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_top_leavesC
Get the highest-rated leaf tiles based on evaluation criteria
| Name | Required | Description | Default |
|---|---|---|---|
| criteria | Yes | Criteria to sort by | |
| limit | No | Number of results to return (default: 10) | |
| treeId | No | Optional tree ID to filter by |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'highest-rated' and 'based on evaluation criteria', implying a ranking operation, but doesn't describe how ratings are determined, whether results are paginated, what the output format is, or any performance considerations like rate limits. For a tool with no annotations and unknown output, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose ('Get the highest-rated leaf tiles') and adds necessary qualification ('based on evaluation criteria'). There is no wasted wording, repetition, or unnecessary elaboration, making it highly concise and well-structured for quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (ranking operation with 3 parameters), lack of annotations, and no output schema, the description is incomplete. It doesn't cover behavioral aspects like how ratings are computed, output structure, or error handling. For a tool that likely returns a list of ranked items, more context is needed to guide the agent effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds minimal meaning beyond the input schema, which has 100% coverage. It implies parameters relate to sorting and limiting results, but doesn't explain the semantics of 'criteria' (e.g., what 'impact' or 'combined' mean) or how 'treeId' filtering works. With high schema coverage, the baseline is 3, as the schema documents parameters adequately without extra description value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and resource ('highest-rated leaf tiles'), specifying they are based on 'evaluation criteria'. It distinguishes from siblings like 'get_leaf_tiles' (which likely returns all leaves) by focusing on top-rated ones. However, it doesn't explicitly differentiate from 'get_statistics' or 'get_coverage_analysis', which might overlap in ranking aspects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose it over 'get_leaf_tiles' (for unfiltered leaves), 'search_tiles' (for broader searches), or 'get_statistics' (for analytical data). There's no context on prerequisites, exclusions, or typical use cases, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_treesC
Get all tiling trees
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It only states 'Get all tiling trees' without disclosing behavioral traits such as whether this is a read-only operation, if it returns a list or single item, potential rate limits, or error conditions. This is inadequate for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no wasted words. It's front-loaded and appropriately sized for a simple tool, making it easy to parse quickly.
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 multiple sibling tools, the description is incomplete. It doesn't explain what 'tiling trees' are, the return format, or how this differs from other get_* tools, leaving significant gaps for an AI agent to understand context and usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add param info, but that's acceptable here since there are no params to explain, aligning with the baseline for zero parameters.
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 'Get all tiling trees' states a clear action ('Get') and resource ('tiling trees'), but it's vague about what 'tiling trees' are and doesn't distinguish this tool from siblings like 'get_tree_validation_report' or 'get_top_leaves' that also retrieve tree-related data. It provides basic purpose but lacks specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. With siblings like 'get_tree_validation_report' and 'get_top_leaves', the description doesn't explain if this is for raw data, summaries, or other contexts, leaving usage unclear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tree_validation_reportA
Get validation report for all splits in a tree. Identifies antipatterns and provides an overall quality score. Use this after building a tree to check for common failure modes.
| Name | Required | Description | Default |
|---|---|---|---|
| treeId | Yes | ID of the tree to validate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool 'identifies antipatterns and provides an overall quality score,' which adds behavioral context beyond the basic 'get' action. However, it doesn't cover aspects like whether this is a read-only operation, performance implications, or error handling, leaving gaps for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded: the first sentence states the core purpose, the second adds key behavioral details, and the third provides usage guidance. Every sentence earns its place without redundancy or fluff, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no annotations, no output schema, and a simple input schema, the description is moderately complete. It covers purpose, key behaviors (antipatterns, quality score), and usage timing, but lacks details on output format, error cases, or integration with sibling tools, which could be helpful for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the single parameter 'treeId' documented as 'ID of the tree to validate.' The description doesn't add any additional meaning or context about this parameter beyond what the schema provides, so it meets the baseline of 3 for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get validation report for all splits in a tree' specifies the action (get) and resource (validation report for splits in a tree). It distinguishes from siblings by focusing on validation rather than creation, evaluation, or analysis, though it doesn't explicitly name alternatives like 'validate_split_quality'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool: 'Use this after building a tree to check for common failure modes.' This gives a specific timing and purpose, but it doesn't explicitly state when not to use it or name alternative tools like 'validate_split_quality' for comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_unexplored_tilesB
Get tiles that haven't been split yet - these are gaps in your solution space exploration
| Name | Required | Description | Default |
|---|---|---|---|
| treeId | No | Optional tree ID to filter by |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions the tool retrieves unexplored tiles but lacks behavioral details: it doesn't specify if this is a read-only operation, what permissions are needed, how results are returned (e.g., pagination, format), or any rate limits. For a tool with no annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is highly concise and front-loaded: the first clause states the core purpose, and the second adds contextual meaning ('gaps in your solution space exploration'). Every sentence earns its place with no wasted words, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (retrieving unexplored tiles), lack of annotations, and no output schema, the description is minimally adequate. It explains what the tool does but misses key contextual details like behavioral traits, return format, or how it fits with siblings. It's complete enough to understand the basic purpose but leaves gaps in practical usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the single parameter 'treeId' documented as 'Optional tree ID to filter by'. The description adds no parameter-specific information beyond what the schema provides, such as clarifying what a 'tree' represents in this context. With high schema coverage, the baseline score of 3 is appropriate, as the description doesn't compensate but doesn't need to.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get tiles that haven't been split yet' specifies the action (get) and target resource (unexplored tiles). It distinguishes from siblings like 'get_tile' (specific tile) or 'get_leaf_tiles' (already split tiles) by focusing on unexplored gaps. However, it doesn't explicitly name these alternatives, preventing a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context ('gaps in your solution space exploration'), suggesting this tool is for identifying unexplored areas during exploration. It doesn't provide explicit when-to-use guidance versus alternatives like 'search_tiles' or 'get_leaf_tiles', nor does it mention prerequisites or exclusions, leaving usage somewhat ambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mark_meceC
Mark a split as validated for MECE (Mutually Exclusive, Collectively Exhaustive) properties. Verify that the children completely cover the parent space with no overlaps.
| Name | Required | Description | Default |
|---|---|---|---|
| tileId | Yes | ID of the tile whose split to validate | |
| isMECE | Yes | Whether the split is truly MECE | |
| coverageNotes | No | Notes on the completeness and exclusivity of the split |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It describes the validation action but does not cover critical aspects like whether this is a read-only or mutative operation, permission requirements, side effects, or error handling. This is a significant gap for a tool that likely updates validation status.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose and followed by verification details. Every sentence earns its place by adding value, with no redundant or unnecessary information, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete for a tool with 3 parameters and likely mutative behavior. It does not explain what happens after validation (e.g., status updates, return values, or error cases), leaving gaps in understanding the tool's full context and effects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters (tileId, isMECE, coverageNotes). The description adds no additional meaning or context beyond what the schema provides, such as explaining how 'isMECE' relates to the verification process or the format of 'coverageNotes'. Baseline 3 is appropriate when the schema handles parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Mark a split as validated for MECE properties') and the resource ('split'), with specific criteria for validation ('Verify that the children completely cover the parent space with no overlaps'). However, it does not explicitly distinguish this tool from sibling validation tools like 'validate_split_quality', which could be a similar validation function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as 'validate_split_quality' or other sibling tools. It lacks context on prerequisites, timing, or exclusions, leaving the agent to infer usage based on the purpose alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_tilesC
Search for tiles by content
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query | |
| treeId | No | Optional tree ID to filter by |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the action ('search') but doesn't describe what 'search' entails—e.g., whether it's fuzzy or exact matching, if it returns paginated results, what the output format is, or any rate limits. For a search tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste—'Search for tiles by content' is front-loaded and directly conveys the core function. Every word earns its place, making it highly concise and well-structured for quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a search operation with no annotations and no output schema, the description is incomplete. It lacks details on behavioral traits (e.g., search mechanics, result format), usage context, and output expectations. For a tool with 2 parameters and potential variability in results, this minimal description doesn't provide enough context for reliable agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters ('query' and 'treeId') documented in the schema. The description adds no additional meaning beyond the schema—it doesn't explain what constitutes 'content' for the query or how the treeId filter works. Baseline 3 is appropriate as the schema does the heavy lifting, but the description doesn't compensate with extra context.
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 'Search for tiles by content' clearly states the verb ('search') and resource ('tiles'), with the qualifier 'by content' indicating the search scope. It distinguishes this from siblings like 'get_tile' (fetch single tile) or 'get_leaf_tiles' (list leaf tiles without search), though it doesn't explicitly name alternatives. The purpose is specific but could be more differentiated from other retrieval tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing existing tiles), exclusions (e.g., not for filtering by other attributes), or compare to siblings like 'explore_path' or 'get_unexplored_tiles'. Usage is implied by the name but not explicitly stated, leaving gaps for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
split_tileB
Split a tile into MECE (Mutually Exclusive, Collectively Exhaustive) subsets using a specific attribute/dimension. This is the core operation of the tiling trees method - partitioning the solution space systematically. Use physics/math-oriented splits when possible.
| Name | Required | Description | Default |
|---|---|---|---|
| tileId | Yes | ID of the tile to split | |
| splitAttribute | Yes | The attribute/dimension used to split (e.g., 'energy source', 'scale', 'physical mechanism', 'timeframe') | |
| splitRationale | Yes | Why this attribute was chosen for splitting | |
| subsets | Yes | The mutually exclusive and collectively exhaustive subsets |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions that splits should be 'MECE' and 'physics/math-oriented when possible', but lacks details on permissions, side effects, error handling, or what happens to the original tile. For a mutation tool (implied by 'split'), this is insufficient behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with three sentences, each adding value: the core operation, its methodological role, and a usage tip. It's front-loaded with the main purpose, though the second sentence could be slightly more streamlined.
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 mutation tool with no annotations and no output schema, the description is moderately complete. It covers the purpose and hints at usage but lacks details on behavioral traits, return values, or error conditions. Given the complexity implied by 'tiling trees method', more context would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds minimal value beyond the schema by emphasizing 'MECE subsets' and 'physics/math-oriented splits', which loosely relate to 'splitAttribute' and 'subsets' but don't provide additional syntax or format details. Baseline 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('split a tile into MECE subsets') and specifies the method ('using a specific attribute/dimension'), distinguishing it from siblings like 'add_tiles_to_split' or 'update_tile'. It explicitly mentions this is 'the core operation of the tiling trees method', providing context about its role in the system.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by stating 'Use physics/math-oriented splits when possible', which suggests a preference but doesn't explicitly define when to use this tool versus alternatives like 'explore_path' or 'validate_split_quality'. No clear exclusions or named alternatives are provided, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_tileC
Update a tile's information (title, description, split attributes, etc.)
| Name | Required | Description | Default |
|---|---|---|---|
| tileId | Yes | ID of the tile to update | |
| title | No | New title | |
| description | No | New description (precise definition) | |
| splitAttribute | No | Updated split attribute | |
| splitRationale | No | Updated split rationale | |
| isLeaf | No | Mark as leaf node |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states 'update' implying mutation but doesn't disclose behavioral traits like required permissions, whether changes are reversible, rate limits, or what happens to unspecified fields. For a mutation tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action ('update a tile's information') with illustrative examples. There's no wasted text, though it could be slightly more structured (e.g., separating purpose from examples). It earns its place but isn't perfectly optimized.
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 a mutation tool with 6 parameters, no annotations, and no output schema, the description is incomplete. It lacks behavioral context (e.g., error handling, side effects), doesn't explain return values, and provides minimal guidance. The 100% schema coverage helps with parameters, but overall context is insufficient for safe and effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all 6 parameters. The description adds minimal value by listing examples (title, description, split attributes, etc.) that align with parameters, but doesn't provide additional semantics beyond what's in the schema. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'update' and resource 'tile's information' with specific examples (title, description, split attributes, etc.). It distinguishes from siblings like 'get_tile' (read) and 'split_tile' (different operation), though it doesn't explicitly contrast with all siblings. The purpose is specific but could be more distinct from similar tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., tile must exist), when not to use it (e.g., for creating new tiles vs. updating existing ones), or refer to sibling tools like 'create_tree' or 'split_tile' for related operations. Usage is implied by the name but not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_split_qualityA
Validate split quality and detect common antipatterns (vague language, catch-all buckets, mixed dimensions, retroactive splitting, incomplete coverage). Returns a detailed quality report with issues and recommendations.
| Name | Required | Description | Default |
|---|---|---|---|
| tileId | Yes | ID of the tile whose split to validate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool returns a detailed quality report, which is useful, but doesn't cover other behavioral aspects like performance, error handling, or whether it's read-only or mutative. The description adds some value but leaves gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded, with two sentences that efficiently convey the tool's purpose and output. Every sentence adds value without redundancy, making it easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (validation with antipattern detection), no annotations, and no output schema, the description is adequate but incomplete. It explains the purpose and output type but lacks details on the report structure, error cases, or integration with sibling tools, leaving room for improvement.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the single parameter 'tileId'. The description doesn't add any parameter-specific details beyond what the schema provides, such as format or context for 'tileId'. Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as validating split quality and detecting specific antipatterns, with a specific verb ('validate') and resource ('split quality'). It distinguishes from siblings by focusing on validation rather than creation, modification, or analysis of tiles/trees, though it doesn't explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing to validate splits for quality issues, but provides no explicit guidance on when to use this tool versus alternatives like 'get_tree_validation_report' or 'evaluate_tile'. It lacks context on prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Most tools have distinct purposes, such as create_tree for tree creation, split_tile for splitting, and evaluate_tile for evaluation. However, get_coverage_analysis and get_unexplored_tiles both focus on identifying gaps in exploration, which could cause slight confusion, though their descriptions help differentiate them.
Tool names follow a highly consistent verb_noun pattern throughout, such as create_tree, split_tile, and evaluate_tile. All tools use snake_case and clear action-oriented verbs, making the set predictable and easy to understand.
With 18 tools, the count is slightly high but reasonable for the domain of tiling tree management, covering operations like creation, splitting, evaluation, validation, and analysis. It supports comprehensive workflows without being overly bloated, though it borders on the heavier side.
The tool set provides complete coverage for the tiling tree domain, including CRUD-like operations (create_tree, get_trees, update_tile), core methods (split_tile, mark_mece), evaluation (evaluate_tile), validation (validate_split_quality, get_tree_validation_report), and analysis (get_coverage_analysis, get_statistics). No obvious gaps exist for systematic solution space exploration.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Turn AI conversations into visual knowledge maps. Create, connect, search, and organize thoughts.
Research portfolio management — organize projects and track research artifacts.
Visual AI for strategic thinking — SWOT, flowcharts, mindmaps, Gantt diagrams as polished SVG.
Search arXiv/Semantic Scholar/OpenAlex + medical evidence (PubMed/Europe PMC) + LaTeX/PDF tools.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI-powered academic research workflow from keyword search to hypothesis generation. Integrates multiple AI models to automatically search ArXiv papers, extract key information, and generate innovative research hypotheses for researchers.2
- FlicenseCqualityBmaintenanceEnables academic literature management through PDF import, hybrid search, knowledge graph construction, and automated literature review generation. Combines full-text search with semantic vector search for comprehensive paper analysis.55
- AlicenseAqualityAmaintenanceProvides access to OpenAlex's catalog of 240+ million scholarly works through 18 specialized tools for conducting literature reviews, analyzing citations, tracking research trends, and mapping the scholarly landscape including authors, institutions, and collaboration networks.3119347MIT
- FlicenseNot gradedqualityDmaintenanceAutomates literature review, research gap detection, and novelty evaluation for academic research, providing tools to search, summarize, find gaps, generate ideas, and evaluate novelty.
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/k-chrispens/tiling-trees-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server