Skip to main content
Glama
OpenPyXL MCP Server

OpenPyXL MCP Server

by jonemo

get_cell_details

Retrieve a single Excel cell's value, data type, style, comments, formula, hyperlink, and other details to inspect or analyze workbook contents.

Instructions

Get value, data type, style, comments, formulas, hyperlinks, and other details for a single cell in a workbook.

Args: filepath: The path to the Excel workbook. For example, "~/Downloads/test.xlsx" or "C:\myfolder\myfile.xlsx". If only a filename is provided, the file will be searched for in the Desktop and Downloads folders. sheet_name: The name of the sheet to get the value from. cell_name: The name of the cell to get the value from. For example, "A1", "B2", "R5987".

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "filepath": "<filepath>",
      "sheet_name": "<sheet_name>",
      "cell_name": "<cell_name>"
    },
    "name": "get_cell_details"
  }
}

Input Schema

NameRequiredDescriptionDefault
filepathYes
cell_nameYes
sheet_nameYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A3.9/5.0
Behavior3/5

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

No annotations are supplied, so the description carries the behavioral burden. It usefully explains filepath fallback behavior (filename-only searches Desktop and Downloads) and lists the kinds of details returned, but it does not explicitly state read-only status, error behavior for missing sheets/cells, or whether formulas are evaluated.

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 purpose is front-loaded and the Args block is compact and easy to scan. 'and other details' is vague, and the parameter block has some repetition, but overall there is little waste.

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

Completeness4/5

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

For a simple three-parameter read tool with an output schema, the definition covers inputs and filepath resolution well enough to invoke correctly. It is less complete on sibling selection and edge-case behavior, but not materially deficient.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must document all three parameters; it does. filepath includes path examples and a fallback search rule, and cell_name gives A1/B2/R5987 examples, though sheet_name is only minimally described.

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?

States a specific verb and resource ('Get value, data type, style, comments, formulas, hyperlinks... for a single cell') and enumerates the returned details. The phrase 'single cell' separates it from the range-oriented siblings, and 'details' separates it from get_cell_value.

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

Usage Guidelines3/5

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

Usage is implied: use this when rich details for one cell are needed rather than just a value. However, the description never explicitly names get_cell_value or the range tools as alternatives, and it gives no when-not-to-use guidance.

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