Skip to main content
Glama

get_workspace_graph

Discover all filenames, sheet names, columns, and cross-sheet relationships from a local cache, giving you the workspace structure before any API call.

Instructions

Returns the cached file structure — all filenames, sheet names, column headers, and cross-sheet relationships (inferred at scan time from matching column names plus overlapping sampled values, merged with any the user declared in ~/.excelmcp/relationships.yaml; each carries a confidence score and its evidence). INSTANT — makes no API call. Reads from local graph.json. ALWAYS call this first at session start to orient yourself. Shows you exactly which files exist, what sheets they have, and what columns are in each sheet. The structure varies for every company — never assume, always discover. Also returns sheet_name_variants: groups of sheet names that differ only in case or whitespace across files — check it before any cross-file operation, because those match by exact sheet name. Each sheet carries a regions list: the table bodies found in it, derived from the sheet's own SUM/COUNT formulas, in absolute sheet rows. A sheet with more than one region holds several separate tables (also listed in multi_region_sheets), so a plain aggregate over it adds up blocks that were never meant to be summed — read its unclaimed_rows and check which region you mean before totalling anything. layout_confidence is "unconfirmed" wherever the region map came from formulas alone and nothing has verified it. Use this before any filter_sheet call when unsure which file or column to query.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
folder_pathNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden and does so thoroughly. It discloses caching ('makes no API call', 'Reads from local graph.json'), warns about unconfirmed layout_confidence, explains multi-region sheets and the risk of summing separate tables, and notes sheet_name_variants as a matching caveat.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core function and all sentences add behavioral value. However, it is somewhat verbose and contains overlapping usage advice ('ALWAYS call this first' and 'Use this before any filter_sheet call'), so it is not maximally concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is exceptionally complete for a tool with an output schema and no annotations. It covers the return content, performance characteristics, caching path, confidence scoring, multi-region quirks, and recommended invocation order, leaving little ambiguity about the tool's role.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema defines one parameter, folder_path, but the description never mentions it. Schema description coverage is 0%, and the description provides no compensation—an agent would not know when or why to provide folder_path, or what happens if omitted.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Returns') naming a clear resource ('cached file structure') and enumerates exact content (filenames, sheet names, column headers, cross-sheet relationships). It also distinguishes itself from siblings by highlighting that it is cached and requires no API call.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit guidance is given: 'ALWAYS call this first at session start' and 'Use this before any filter_sheet call when unsure which file or column to query.' This makes the intended usage context and sequencing very clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

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/Karunya-Muddana/ExcelMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server