Skip to main content
Glama

Mathematica MCP

A front-end / notebook automation layer for Mathematica, built for AI agents.

Your AI agent can write Mathematica code. This server lets it run that code in your live Mathematica session: create and edit notebooks, build interactive Manipulate panels, capture screenshots, verify derivations step by step, and read .nb files even without a kernel. Works with Claude, Cursor, VS Code, Codex, and Gemini.

It runs beside the official Wolfram Local MCP, not instead of it: Wolfram's server is the reference evaluator and documentation surface; this one owns the live notebook. See How it compares.

License: MIT Python 3.10+ Mathematica 14+ CI Repo Published

Upgrading from an earlier version? See the Migration Guide.

Watch it in action

Mathematica MCP Demo

An AI agent solving math, generating plots, and controlling a live Mathematica notebook. Errors are returned directly to the agent, no copy-pasting notebook output back into chat.


Why this exists

LLMs can write Wolfram Language, but they cannot run it, see the result, or fix their own mistakes. This server closes that loop:

  • Live notebook control: the agent creates, edits, evaluates, and screenshots real notebooks in your running Mathematica front end. Interactive content (Manipulate, Dynamic, sliders) renders as live panels.

  • Fast by default: computation runs on a persistent kernel session that starts warming the moment the server launches; calls return in milliseconds, not the ~13 seconds of a cold wolframscript start per request.

  • Self-debugging agents: Mathematica errors flow back with a suggested_fix and, when derivable, a ready-to-run retry_with call. No copying red text from the notebook into chat.

  • Derivation checking: verify_derivation validates a chain of mathematical steps and pinpoints the first invalid one.

  • Reads notebooks without a license: read_notebook_file parses .nb files in pure Python when no kernel is available (a kernel is used for higher fidelity when present).

  • Local and private: core execution stays on your machine. Cloud services are contacted only by opt-in tools like wolfram_alpha.


Related MCP server: JupyterMCP

What you can ask for

"Integrate x^2 sin(x) from 0 to pi, then verify the result."

evaluate("Integrate[x^2 Sin[x], {x, 0, Pi}]")   =>  -4 + Pi^2
verify_derivation(steps=["Integrate[x^2 Sin[x], {x, 0, Pi}]", "-4 + Pi^2"])
=> Step 1 → 2: ✓ VALID
   All steps are valid!

"Plot the sombrero function in a new notebook."

notebooks(action="create", title="Sombrero")
evaluate("Plot3D[Sinc[Sqrt[x^2+y^2]], {x,-4,4}, {y,-4,4}]", target="notebook")
=> [3D surface plot rendered in the live notebook]

"Give me a Chebyshev polynomial explorer with a degree slider."

evaluate("Manipulate[Plot[ChebyshevT[n, x], {x, -1, 1}], {n, 0, 30, 1}]", target="notebook")
=> [live slider panel in the notebook; interactive code is auto-routed to the front end]

Quick start

Prerequisites: Mathematica 14.0+ (15+ recommended) with wolframscript on your PATH, and the uv package manager.

# One command, pick your client:
uvx mathematica-mcp-full setup claude-desktop   # or: cursor | vscode | codex | gemini | claude-code

Restart Mathematica (so the addon loads) and restart your editor. Then verify:

uvx mathematica-mcp-full doctor

Done - ask your agent for a plot.

The PyPI package and CLI are named mathematica-mcp-full.

Manual installation, per-client configuration details, and troubleshooting live in the Installation Guide.


The lean default

Agents see a consolidated 12-tool surface (~2.9k tokens of schema) instead of the classic 82 tools (~15k tokens) - a 5x cut in the context an agent pays before doing any work, with the same engine underneath. Prefer everything? MATHEMATICA_PROFILE=classic restores the full pre-1.0 surface, and MATHEMATICA_TOOLSETS adds opt-in extras to lean.


How it compares

Runs alongside the official Wolfram Local MCP (setup <client> --with-official configures both side by side). The differentiator is live notebook / front-end automation:

Capability

Official Wolfram Local MCP

This MCP

Wolfram-Language evaluation

WolframLanguageEvaluator

evaluate (warm persistent kernel)

Wolfram Alpha

WolframAlpha

wolfram_alpha (opt-in cloud)

Symbol docs / definitions

SymbolDefinition, CreateSymbolDoc

symbols extra (get_symbol_info)

Read a notebook file

ReadNotebook (needs kernel)

read_notebook_file - works with no kernel / license (Python fallback)

Write a notebook file

WriteNotebook

notebooks, edit_cells (live front-end)

Live notebook control (create/edit/eval/screenshot)

No

Yes

Interactive UIs (sliders, Manipulate)

No

Yes, in the live front-end

Derivation verification

No

verify_derivation

Doc search / code inspection / test reports

CodeInspector, TestReport

Deliberately not duplicated - use the official server


Who this is for

Audience

Use case

Researchers using LLM coding assistants

Run Mathematica from Claude/Cursor/VS Code without leaving your editor

Data scientists

Import, transform, and visualize data through natural language

Educators

Create interactive Mathematica notebooks through AI conversation

Not for

Production web services, untrusted multi-tenant environments


Documentation


License

MIT License

Available Tools

82 tools
batch_commandsC

Execute multiple commands in one round-trip.

ParametersJSON Schema
NameRequiredDescriptionDefault
commandsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

Without annotations, the description carries full burden for behavioral traits. It does not mention execution order, error handling, or result format, leaving significant ambiguity.

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

Conciseness3/5

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

The single-sentence description is short but under-specified; conciseness is achieved at the expense of necessary detail.

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

Completeness2/5

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

Given the presence of many sibling tools for individual operations, the description fails to explain command structure, execution guarantees, or output expectations, leaving the tool incomplete for safe agent use.

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

Parameters2/5

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

Schema description coverage is 0%, and the description adds no semantic detail about the 'commands' parameter format (e.g., what fields or structure each command object should have).

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 'Execute multiple commands in one round-trip' clearly identifies the tool's purpose of batching commands to reduce round trips, distinguishing it from sibling tools that execute single commands.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus individual command execution tools. The description implies batching but does not specify scenarios or alternatives.

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

cache_expressionC

Evaluate and cache a Wolfram expression for later reuse.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
expressionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations, the description carries full burden but only mentions evaluation and caching. It omits important details like overwrite behavior, cache persistence, or how the result is stored, leaving the agent uninformed about side effects.

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 single sentence is concise and front-loaded. However, it sacrifices depth; a slightly longer description with key details would be more helpful.

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

Completeness2/5

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

Given the complexity of caching and the many sibling tools, the description lacks completeness. It does not explain cache key behavior, retrieval method, or whether evaluation is immediate, leaving significant gaps.

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?

Schema description coverage is 0%, yet the description adds no information about the purpose or format of 'name' and 'expression' parameters. The agent receives only the schema's type info, which is insufficient.

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 clearly states the tool evaluates and caches a Wolfram expression, with the added purpose of reuse. It distinguishes from siblings like 'get_cached' (retrieval) and 'clear_expression_cache' (deletion) by focusing on the storing action.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as 'evaluate_cell' or 'get_cached'. The description provides no context for selecting this tool over others.

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

check_syntaxA

Validate Wolfram Language code syntax without executing it.

ParametersJSON Schema
NameRequiredDescriptionDefault
codeYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations provided, the description explicitly states the key behavioral trait: no execution occurs. This is crucial for trust. The output schema likely covers return format, but the description could mention error handling or response structure.

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

Conciseness5/5

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

The description is a single sentence that efficiently conveys the tool's purpose and key constraint. No unnecessary words or repetition.

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?

Given the simple single-parameter tool with an output schema, the description covers the primary purpose and behavioral constraint. It lacks details on syntax validation specifics or error handling, but these are often implied or detailed in the output schema.

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

Parameters2/5

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

The schema has 0% description coverage for the 'code' parameter. The description does not elaborate on the expected format or content of the code string, merely implying it is Wolfram Language code. The single sentence adds little beyond what the parameter name suggests.

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 clearly states the verb 'validate', the resource 'Wolfram Language code syntax', and the constraint 'without executing it'. It effectively distinguishes from siblings like execute_code or evaluate_cell.

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

Usage Guidelines4/5

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

The description implies use for syntax checking over execution, and the phrase 'without executing it' provides a clear safety context. However, it does not explicitly state when to prefer this tool over alternatives like evaluate_cell or when not to use it.

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

clear_computation_journalC

Clear the computation journal.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior1/5

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

With no annotations, the description must disclose behavioral traits. It only says 'Clear', which implies a destructive action, but fails to mention any side effects (e.g., whether the journal is immediately erased or if confirmation is needed), reversibility, or impact on ongoing computations. This is insufficient for safe agent operation.

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

Conciseness2/5

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

The description is only two words, which is too brief. While conciseness is valued, this lacks essential behavioral information, making it under-specified rather than efficient. The description should front-load critical details about the action's consequences.

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

Completeness2/5

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

The tool is a mutation (clearing a journal) but provides no information about prerequisites (e.g., whether a notebook must be open), return value (despite having an output schema, it is not described), or potential data loss. The description is too minimal to be contextually complete for a destructive operation.

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?

The tool has zero parameters and schema description coverage is 100%. The description does not need to add parameter information, as the schema is already complete and there are no parameters to document. Baseline of 4 is appropriate.

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 clearly states the action and resource: 'Clear the computation journal.' It uses a specific verb and resource, and the tool is distinct from siblings like 'clear_expression_cache' and 'clear_variables', which target different resources.

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

Usage Guidelines2/5

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 such as 'get_computation_journal' or 'clear_expression_cache'. The agent is left to infer the appropriate context without explicit direction.

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

clear_expression_cacheB

Clear all cached expressions.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It only states the action without disclosing side effects, recovery, or permissions. For a destructive operation, more transparency is needed.

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 concise with one sentence and no wasted words. It is appropriately sized for the simplicity of the tool, though it lacks any structure like bullet points.

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

Completeness3/5

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

Given no parameters but an output schema exists, the description does not explain return values or the impact of clearing all cache. It is adequate but lacks context about when clearing is needed and what happens after.

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?

No parameters exist in the schema, so schema coverage is 100%. The description adds no parameter info, but none is required. Baseline 4 is appropriate.

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

Purpose4/5

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

The description states a clear verb+resource: 'Clear all cached expressions.' It distinguishes from the sibling 'cache_expression' which does the opposite, but the scope 'all' is broad and could be more specific.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like 'cache_expression' or 'list_cache'. The description does not mention context or exclusions.

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

clear_variablesA

Clear variables from the Mathematica kernel session.

Equivalent to Python's 'del' or clearing notebook state.

Args: names: Specific variable names to clear (e.g., ["x", "y", "z"]) pattern: Wolfram pattern to match (e.g., "temp*" clears temp1, temp2, etc.) clear_all: If True, clear ALL Global` variables (use with caution!)

Returns: List of cleared variables

Example: clear_variables(names=["x", "y"]) -> {cleared: ["x", "y"], count: 2} clear_variables(pattern="temp*") -> {cleared: ["temp1", "temp2"], count: 2}

ParametersJSON Schema
NameRequiredDescriptionDefault
namesNo
patternNo
clear_allNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

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

No annotations are provided, so the description carries full burden. It details parameter effects, warns about clear_all being destructive, and includes return value format. This is sufficient behavioral disclosure for a mutation tool.

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 concise with three short paragraphs and an example. It starts with the purpose, then details parameters, and ends with an example. Slightly verbose in the example but overall efficient.

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?

The description is complete for a tool with 3 parameters and no annotations. It explains return values and provides examples. It does not discuss edge cases like clearing protected variables, but it is adequate for typical use.

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%, but the description explains each parameter (names, pattern, clear_all) with examples and clarifies that clear_all is destructive. This compensates for the lack of schema descriptions.

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 clearly states the tool clears variables from the Mathematica kernel session, uses an analogy to Python's 'del', and provides parameters and an example. It distinctly differentiates from siblings like set_variable and get_variable.

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

Usage Guidelines4/5

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

The description provides context via the Python analogy and usage notes for clear_all, but does not explicitly distinguish when to use names vs pattern or when not to use each. It implicitly guides usage through parameter descriptions.

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

close_notebookC

Close a notebook.

ParametersJSON Schema
NameRequiredDescriptionDefault
notebookNo
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are present, and the description does not disclose behavioral traits like whether closing saves or discards changes, or if it is destructive. The term 'close' implies a state change, but details are missing.

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

Conciseness3/5

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

The description is extremely concise with one sentence, but it lacks essential information. It could be expanded with parameter details or usage notes without being verbose.

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

Completeness2/5

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

Given the presence of an output schema (not shown) and only two parameters, the description still leaves gaps about prerequisites, side effects, and return values. More context is needed for effective use.

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?

Schema description coverage is 0%, and the description adds no meaning to the two parameters (notebook, session_id). The agent must infer their roles from names alone, which is insufficient.

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

Purpose4/5

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

The description 'Close a notebook.' clearly states the verb and resource, distinguishing it from siblings like create_notebook or save_notebook. However, it lacks explicit differentiation from other close-related tools, though the action is self-evident.

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

Usage Guidelines2/5

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, such as when a notebook is open or what happens to unsaved changes. The description is purely functional without usage context.

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

compare_plotsC

Generate a side-by-side comparison of multiple plots.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelsNo
expressionsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

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

No annotations provided, and the description does not disclose behavioral traits like whether it modifies state, requires pre-existing plots, or returns a specific output format.

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 a single concise sentence with no redundancy, but could be slightly more informative without losing brevity.

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

Completeness2/5

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

Given the tool's complexity and lack of annotations, the description is too minimal; it omits details about output, parameter usage, and behavioral context that an agent needs.

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?

With 0% schema description coverage, the description fails to explain the purpose of the 'expressions' or 'labels' parameters, leaving the agent uninformed about how to construct input.

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 clearly states the verb 'Generate' and the resource 'side-by-side comparison of multiple plots', which is specific and distinguishes it from sibling tools like 'inspect_graphics' or 'create_animation'.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives; lacks context on prerequisites or scenarios where comparison is appropriate.

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

convert_notebookA

[LEGACY] Convert a notebook into markdown, LaTeX, plain text, or Wolfram code.

Prefer read_notebook() unless you specifically need this older or narrower workflow.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
output_formatNomarkdown

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior2/5

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

No annotations provided, and description only says 'convert.' Does not disclose side effects, authorization needs, or whether it modifies the notebook. Minimal behavioral info.

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?

Two concise sentences with front-loaded key info. However, omission of parameter details makes it efficient but incomplete.

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

Completeness3/5

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

Given legacy status and existence of output schema, the description minimally covers conversion and guidance. But lacks parameter explanations and behavioral details, making it incomplete for uninitiated agents.

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?

Schema coverage is 0% and description adds nothing about parameters `path` or `output_format`. Fails to compensate for missing schema documentation.

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?

Clearly states 'Convert a notebook into markdown, LaTeX, plain text, or Wolfram code' with a specific verb and resource. Distinguishes itself from sibling `read_notebook()` by marking as legacy.

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?

Explicitly tells when to use: only if need legacy/narrower workflow, otherwise prefer `read_notebook()`. No ambiguity.

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

convert_unitsA

Convert between units using Wolfram's comprehensive unit system.

Args: quantity: Value with unit (e.g., "5 miles", "100 kg", "25 Celsius") target_unit: Target unit (e.g., "kilometers", "pounds", "Fahrenheit")

Returns: Converted quantity

Example: convert_units("100 kilometers", "miles") -> "62.1371 miles" convert_units("0 Celsius", "Fahrenheit") -> "32 Fahrenheit"

ParametersJSON Schema
NameRequiredDescriptionDefault
quantityYes
target_unitYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior2/5

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

No annotations are provided, so the description must fully disclose behavior. It mentions 'Wolfram's comprehensive unit system' but does not describe potential errors, limitations (e.g., compound units), or confirmation of conversion. The example with temperature is helpful but not comprehensive.

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

Conciseness5/5

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

The description is concise with clear sections (Args, Returns, Example) and no extraneous text. Every sentence adds value.

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?

Given the low complexity (2 required params, no nested objects, output schema is present), the description fully explains the tool's purpose, usage, and output format. Examples cover both distance and temperature conversions.

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?

The input schema has 0% description coverage. The description compensates by explaining each parameter's meaning ('Value with unit', 'Target unit') and providing examples that demonstrate the required format.

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 clearly states the verb 'Convert' and the resource 'units using Wolfram's comprehensive unit system'. It distinguishes itself from sibling tools which cover different operations (e.g., integration, solving).

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

Usage Guidelines4/5

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

Examples show typical usage patterns (e.g., '100 kilometers' to 'miles'), but there is no explicit when-not-to-use or alternative tools guidance. However, the purpose is clear and no direct sibling exists for unit conversion.

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

create_animationC

Create an animation by varying a parameter.

ParametersJSON Schema
NameRequiredDescriptionDefault
framesNo
parameterYes
expressionYes
range_specYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It only states 'create an animation', implying a creation action but lacking details on side effects (e.g., whether existing animations are overwritten), required permissions, output format, or state changes. The word 'create' suggests a mutation, but no safety or error context is given. This is insufficient for an AI agent to predict behavior.

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 a single sentence, which is concise and front-loads the main action. However, it sacrifices semantic value for brevity; it could be slightly longer to add meaningful guidance without becoming verbose. The structure is fine, but the content is too sparse to fully earn a 5.

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

Completeness2/5

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

Given the tool has 4 parameters (3 required), no annotations, and a moderate complexity (animation generation), the description is woefully incomplete. It does not explain the role of each parameter, the expected format of inputs, or what the output contains (even though an output schema exists, the description could still add context). The agent has no clear picture of how to use the tool effectively.

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?

Schema description coverage is 0%, meaning no parameter descriptions exist in the schema. The description fails to compensate: it only mentions 'varying a parameter' without explaining what 'expression', 'parameter', 'range_spec', or 'frames' mean. An agent cannot determine how to construct valid inputs from this description alone.

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

Purpose4/5

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

The description clearly states the action ('Create an animation') and gives a hint about the mechanism ('by varying a parameter'), which is specific enough to convey the tool's core purpose. However, it does not differentiate from siblings that also involve parameter variation or animation-like outputs, like batch_commands or execute_code. The verb+resource combination is good, but misses a chance to highlight what makes this animation-specific.

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

Usage Guidelines2/5

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

No guidance is provided about when to use this tool instead of alternatives. Sibling tools include many computational and animation-related options (e.g., batch_commands, visualisation tools), but the description offers no context for selection. The agent receives zero direction on preconditions, typical use cases, or what distinguishes this from similar tools.

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

create_notebookA

[ADVANCED] Create a new empty notebook.

Use when the user explicitly asks for a NEW notebook. This sets the active notebook so subsequent execute_code(style="notebook") calls write into it. Without this, execute_code reuses the currently open notebook.

For code execution in whatever notebook is already open, use execute_code(style="notebook") directly instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNoUntitled
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior4/5

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

Without annotations, the description discloses that the tool sets the active notebook for subsequent execute_code calls, which is an important side effect. However, it does not mention potential issues like title uniqueness, session management, or return value expectations, leaving some behavioral gaps.

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 four sentences, front-loaded with the core action, and then provides usage and context. It is efficient and avoids unnecessary words, but could be slightly more structured.

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

Completeness3/5

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

The tool has moderate complexity with side effects, and the description covers the creation and side effect but omits parameter details and return value information (despite an output schema). More context about results would improve completeness.

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?

Schema coverage is 0% and the description provides no explanation of the two parameters (title, session_id). The description adds no meaning beyond the schema, failing to compensate for the lack of schema documentation.

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 clearly states 'Create a new empty notebook,' providing a specific verb and resource. It further distinguishes from siblings by noting that this tool sets the active notebook for subsequent execute_code calls, which differentiates it from other notebook-related tools.

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?

The description explicitly says 'Use when the user explicitly asks for a NEW notebook' and contrasts with 'execute_code(style="notebook")' for reusing the current notebook, offering clear when-to-use and when-not-to-use guidance with a sibling reference.

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

delete_cellC

Delete a cell from a notebook.

ParametersJSON Schema
NameRequiredDescriptionDefault
cell_idYes
notebookNo
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

Description does not disclose behavioral traits beyond the basic action: no mention of whether deletion is permanent, requires confirmation, or affects other cells. With no annotations, the description carries the full burden and fails to provide adequate transparency.

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

Conciseness3/5

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

Extremely concise (one sentence) but at the cost of missing essential information. It is front-loaded but incomplete.

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

Completeness2/5

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

With three parameters and an output schema, the description provides no context about return values, side effects, or how parameters affect behavior. Incomplete for an agent to use safely.

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?

Description does not explain any of the three parameters (cell_id, notebook, session_id). Schema description coverage is 0%, and the description adds no meaning beyond the schema field names.

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?

Clearly states verb 'Delete' and resource 'cell from a notebook', which uniquely identifies the tool among siblings that include get, write, select operations. The action is unambiguous.

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

Usage Guidelines2/5

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

No guidance on when to use or not use this tool, no alternatives mentioned. The single sentence provides no context for decision-making.

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

entity_lookupA

Look up real-world entity data from Wolfram's curated knowledge base.

Entity types include: "Country", "City", "Chemical", "Planet", "Company", "Person", "Movie", "University", "Element", "Star", and many more.

Args: entity_type: Type of entity (e.g., "Country", "City", "Chemical") name: Name to look up (e.g., "France", "Tokyo", "Water") properties: Specific properties to retrieve (default: common properties)

Returns: Entity data with requested properties

Example: entity_lookup("Country", "Japan", ["Population", "Capital", "GDP"]) -> {name: "Japan", Population: "125.8 million", Capital: "Tokyo", GDP: "$4.94 trillion"}

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
propertiesNo
entity_typeYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It mentions return format but not side effects, error handling (e.g., entity not found), authentication, or rate limits. The example gives some idea, but transparency is moderate.

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

Conciseness5/5

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

The description is well-structured with clear sections: purpose, entity types, parameter details, returns, and example. Every sentence earns its place; no redundancy. It is front-loaded with the main purpose.

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?

Given the tool's complexity (3 params, no enums, output schema exists), the description is fairly complete. It covers parameters, provides an example, and mentions return data. Could include more on output schema constraints or edge cases, but not essential.

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

Parameters5/5

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

Schema coverage is 0%, so description must compensate. It explains each parameter with examples: entity_type (list of types), name (examples), properties (default behavior and example). This adds significant meaning beyond the schema.

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 clearly states the tool looks up real-world entity data from Wolfram's curated knowledge base, with a specific verb 'Look up' and resource 'real-world entity data'. It lists entity types and provides an example, effectively distinguishing from siblings like wolfram_alpha which is more general.

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?

The description does not explicitly state when to use this tool vs alternatives like wolfram_alpha or search data repository. It provides an example but no guidance on selection criteria, leaving the agent to infer usage context.

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

evaluate_cellA

[ADVANCED] Re-evaluate an existing cell in a notebook.

Prefer execute_code(style="notebook") for fresh execution. Use evaluate_cell only when you already have a notebook cell and need to re-run that specific cell.

ParametersJSON Schema
NameRequiredDescriptionDefault
syncNonone
cell_idYes
max_waitNo
notebookNo
sync_waitNo
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It adds the [ADVANCED] tag but does not describe side effects, blocking behavior, or output details. Adequate but lacks depth.

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

Conciseness5/5

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

The description is very concise with two sentences and a tag, front-loading the key information without waste.

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

Completeness2/5

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

Given the tool has 6 parameters and an output schema, the description does not cover parameter usage, return values, or execution context, leaving the agent with insufficient information.

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?

Schema description coverage is 0%, and the description does not mention any parameter meanings or constraints. It fails to compensate for the lack of schema descriptions.

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 clearly states it re-evaluates an existing cell in a notebook, and distinguishes itself from execute_code by specifying it's for re-running an existing cell rather than fresh execution.

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?

Explicitly says to prefer execute_code for fresh execution and only use evaluate_cell when re-running an existing cell, providing clear when-to-use guidance.

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

evaluate_selectionA

[ADVANCED] Evaluate the currently selected notebook cell or cells.

Prefer execute_code(style="notebook") for fresh execution. Use evaluate_selection only for explicit notebook-selection workflows.

ParametersJSON Schema
NameRequiredDescriptionDefault
syncNonone
max_waitNo
notebookNo
sync_waitNo
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior2/5

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

No annotations provided, and the description does not disclose behavioral traits such as side effects, permissions, or behavior when no selection exists. It lacks sufficient transparency for an evaluation tool.

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

Conciseness5/5

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

The description is very short, concise, and front-loaded with the key purpose. No unnecessary words.

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

Completeness2/5

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

Despite having an output schema, the description fails to explain the parameters or behavior, leaving significant gaps for a tool with 5 parameters and no annotations.

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?

Schema description coverage is 0%, and the description does not explain any of the five parameters (notebook, session_id, max_wait, sync, sync_wait), adding no meaning beyond the schema.

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?

Clearly states it evaluates the currently selected notebook cell or cells. The [ADVANCED] tag and distinction from execute_code make the purpose unambiguous.

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

Usage Guidelines5/5

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

Explicitly says to prefer execute_code for fresh execution and to use evaluate_selection only for explicit notebook-selection workflows, providing clear when-to-use guidance.

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

execute_codeA

[PRIMARY] Execute Wolfram Language code. Prefer this for nearly all computation and plotting.

Choose a style:

  • style="compute" — fast kernel evaluation, result in chat

  • style="notebook" — evaluate in kernel, show in notebook cell

  • style="interactive" — front-end evaluation (required for Manipulate/Dynamic)

style is a high-level preset for output_target + mode. Individual params still work and override style. When style and output_target are both omitted, output_target defaults to the profile's default (notebook) and mode defaults to kernel.

response_detail accepts the canonical levels compact, standard, verbose, and diagnostic, plus the aliases short, medium, and long.

Prefer this over write_cell + evaluate_cell for running code. With output_target="notebook", it reuses the active notebook (or creates one if none exists), writes the code, and evaluates it in one call. If notebook transport fails, the request returns a notebook-targeted error instead of silently rerunning through CLI fallback. NOTE: if the user asks for a NEW notebook, call create_notebook first.

ParametersJSON Schema
NameRequiredDescriptionDefault
codeYes
modeNo
syncNonone
styleNo
formatNotext
timeoutNo
max_waitNo
sync_waitNo
session_idNo
output_targetNo
isolate_contextNo
render_graphicsNo
response_detailNostandard
deterministic_seedNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.8/5.0
Behavior5/5

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

No annotations provided, so description covers behavior thoroughly. It explains style presets, default behavior when style/output_target omitted, response_detail aliases, notebook reuse, error handling, and failure mode.

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?

Well-organized with primary purpose first, then style options, defaults, aliases, and sibling relationships. Somewhat verbose but each sentence adds value; could be slightly more 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?

Given the tool's complexity (14 params, output schema exists), description provides comprehensive guidance on usage, behavior, error scenarios, and alternatives, making it complete for an AI agent.

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 coverage is 0%, so description adds critical meaning for key parameters: style, output_target, mode, response_detail, and their interactions. However, it does not cover all 14 parameters (e.g., code, format, render_graphics, etc.) in detail.

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 clearly states 'Execute Wolfram Language code' and positions it as the primary tool for computation and plotting. It distinguishes itself from sibling tools like write_cell + evaluate_cell.

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?

Explicitly says 'Prefer this for nearly all computation and plotting' and 'Prefer this over write_cell + evaluate_cell for running code'. Also specifies when not to use: 'if the user asks for a NEW notebook, call create_notebook first'.

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

export_dataD

Export data or graphics to a file.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
formatNo
expressionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

D1.8/5.0
Behavior1/5

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

No annotations are present, and the description fails to disclose any behavioral traits such as whether files are overwritten, required permissions, or side effects. With zero annotation coverage, the description carries the full burden but provides no transparency.

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

Conciseness2/5

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

The description is very short (one sentence), but it is under-specified to the point of being unhelpful. Conciseness should preserve utility, but here it sacrifices necessary detail.

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

Completeness1/5

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

Given 3 parameters with zero schema description, sibling tools that overlap in purpose, and no behavioral or usage guidance, the description is completely inadequate. The existence of an output schema does not compensate for the lack of clarity about what the tool does and how to use it.

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?

Schema description coverage is 0%, and the description does not explain any of the three parameters (expression, path, format). The agent receives no guidance beyond the raw schema, which is insufficient.

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

Purpose3/5

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

The description 'Export data or graphics to a file' identifies the verb 'export' and resource 'data or graphics', but it is vague because it lists two distinct resource types without clarifying the difference from sibling tool 'export_graphics'. This ambiguity reduces clarity.

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

Usage Guidelines2/5

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

No usage guidelines are provided. The description does not indicate when to use this tool versus alternatives like 'export_graphics' or 'export_notebook', nor does it mention any prerequisites or context.

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

export_graphicsC

Export a graphics expression to an image file.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
sizeNo
formatNoPNG
expressionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It only states the basic action, omitting side effects like file overwriting, permissions, or whether the tool requires a notebook to be open. The behavioral transparency is minimal.

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

Conciseness3/5

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

The description is a single concise sentence, but it sacrifices informativeness for brevity. It is under-specified given the tool's four parameters and should include more detail while remaining concise.

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

Completeness2/5

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

Despite moderate complexity (4 params, 1 enum) and an output schema (assumed present), the description lacks parameter details and output information. It fails to cover essential aspects beyond the core purpose, leaving gaps for the agent.

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?

Schema description coverage is 0%, placing full burden on the description to explain parameters. The description does not mention any parameter, leaving expression, path, format, and size completely unexplained.

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

Purpose4/5

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

The description states it exports a graphics expression to an image file, clearly identifying the verb, resource, and outcome. It distinguishes from siblings like export_data and export_notebook, though it could be more specific about what a 'graphics expression' entails.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like screenshot_cell or rasterize_expression. The context of use is implied (saving a graphics expression as a file) but no explicit when-not or alternative tools are mentioned.

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

export_notebookC

Export a notebook to PDF, HTML, TeX, or Markdown.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
formatNoPDF
notebookNo
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It only states the basic operation but omits effects on the notebook (e.g., read-only, destructive), permissions required, or output handling.

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

Conciseness3/5

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

The description is a single sentence, concise but too brief to convey necessary context. It sacrifices informativeness for brevity.

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

Completeness2/5

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

Given 4 parameters, an output schema, and many sibling tools, the description is incomplete. It lacks prerequisites, return value explanation (though output schema may cover it), and distinction from similar tools.

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

Parameters2/5

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

Schema description coverage is 0%, yet the description adds no parameter details. It does not explain 'path', 'notebook', or 'session_id'. Only 'format' is partially clarified by its enum values.

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

Purpose4/5

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 (notebook) with specific output formats (PDF, HTML, TeX, Markdown). However, it does not differentiate from sibling tools like 'convert_notebook' or 'save_notebook', which could lead to confusion.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. The description does not provide context for selection among siblings with overlapping functionality.

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

get_cachedC

Retrieve a previously cached expression result.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose any behavioral traits (e.g., idempotency, safety, side effects, return format). The tool could be a simple read, but there is no confirmation.

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

Conciseness3/5

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

The description is very short at one sentence, which is efficient but lacks necessary details. It is front-loaded but under-specified.

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

Completeness2/5

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

Given the existence of an output schema (indicated by context), the description does not mention what the tool returns. With many sibling tools for caching, more context is needed to differentiate usage.

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

Parameters2/5

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

The single required parameter 'name' is not described. With 0% schema description coverage, the description should explain what 'name' represents (e.g., the cache key). The current phrase 'previously cached expression result' implies a concept but does not tie it to the parameter.

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

Purpose3/5

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

The description states it retrieves a previously cached expression result, which is clear but does not distinguish from siblings like 'list_cache' (which lists cache entries) or 'cache_expression' (which caches). The verb is generic and lacks specificity about what 'name' refers to.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., list_cache to find cache keys, clear_expression_cache to clear). No mention of prerequisites or typical usage context.

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

get_cell_contentC

Get the full content of a specific cell.

ParametersJSON Schema
NameRequiredDescriptionDefault
cell_idYes
notebookNo
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior3/5

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

The description implies a read-only operation ('get') but does not explicitly state it is non-destructive or specify any additional behavioral traits such as authentication or rate limits. With no annotations provided, the description carries the burden but falls short of full transparency.

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

Conciseness2/5

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

The description is a single short sentence, which is concise but under-specified. It lacks key information about parameters and return values, making it less useful despite its brevity.

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

Completeness2/5

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

Given the tool has three parameters (one required) and an output schema exists (not shown), the description should explain parameter usage and return value structure. It does neither, leaving the agent to infer from context.

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?

Schema description coverage is 0%, and the description does not explain the purpose or usage of any of the three parameters (cell_id, notebook, session_id). It adds no meaning beyond what the schema itself provides.

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 clearly states the verb 'get' and the resource 'full content of a specific cell,' which is specific and unambiguous. It differentiates from sibling tools like 'get_cells' (list cells) and 'get_notebook_cell' (likely metadata) by focusing on content retrieval.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as 'get_cells' or 'get_notebook_cell'. There is no mention of prerequisites, contextual cues, or exclusions.

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

get_cellsC

Get list of cells in a notebook.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
styleNo
offsetNo
notebookNo
session_idNo
include_contentNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose behavioral traits like whether filtering, ordering, or pagination apply. It does not mention what data is returned (e.g., metadata only or cell contents).

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

Conciseness3/5

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

The description is a single short sentence, but it lacks substance. It is concise but at the expense of adequate information.

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

Completeness2/5

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

Despite having an output schema, the description fails to provide necessary context about the tool's behavior, parameters, or how it fits with sibling tools. For a tool with 6 parameters and no annotations, it is incomplete.

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?

With schema description coverage at 0%, the description adds no meaning to the six parameters. It does not explain 'notebook', 'style', 'offset', 'limit', or 'include_content', leaving the agent to rely solely on parameter names.

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

Purpose4/5

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

The description clearly states the action (get a list) and the resource (cells in a notebook). It distinguishes from siblings like 'get_notebook_cell' (single cell) and 'get_cell_content' (content), but does not explicitly differentiate them.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs. alternatives such as 'get_notebook_cell' or 'get_cell_content'. No context about prerequisites or conditions.

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

get_computation_journalA

Get recent computation history: code previews, outputs, timing, success status.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of disclosing behavioral traits. It only lists what the tool returns, not any side effects, requirements, or limitations. As a get operation, it is non-destructive, but the description does not explicitly confirm this or add other 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.

Conciseness5/5

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

The description is a single sentence that efficiently conveys the tool's purpose and the key elements of the returned data. No unnecessary words or repetition.

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

Completeness3/5

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

The description tells what the tool returns but does not mention ordering, limits, or whether it returns all history or recent entries. Given the tool's simplicity and the presence of an output schema, the description is adequate but could be more precise.

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

Parameters3/5

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

The tool has no parameters, and schema description coverage is 100%. The description adds value by listing the types of information returned, but since there are no parameters, the baseline of 3 is appropriate.

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 clearly states the verb 'Get' and the resource 'computation history', and specifies what is returned (code previews, outputs, timing, success status). It distinguishes this tool from siblings that perform different actions (e.g., clear_computation_journal) or retrieve single results (get_computation_result).

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?

The description implies usage for viewing recent computation history but does not explicitly state when to use this tool versus alternatives like clear_computation_journal or get_computation_result. No when-not-to-use guidance is provided.

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

get_computation_resultC

Retrieve the result of a completed computation.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, and the description only states the basic action. It does not disclose what happens if the computation is incomplete, any error conditions, or authentication needs. The output schema exists but is not referenced.

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

Conciseness3/5

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

The description is a single sentence with no unnecessary words, but it is too brief to provide meaningful value beyond the name.

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

Completeness2/5

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

Given one required parameter and an output schema, the description fails to connect the parameter to the tool's purpose or explain the return value, making it incomplete.

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 input schema has 0% description coverage, and the tool description does not explain the meaning of 'job_id' or how to obtain it, leaving the agent without guidance.

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 clearly states the verb 'Retrieve' and the resource 'result of a completed computation,' which distinguishes it from sibling tools like submit_computation or poll_computation.

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?

The description implies that the computation must be completed, but it does not explicitly state when to use this tool versus alternatives like poll_computation, nor does it mention prerequisites.

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

get_constantA

Get a physical or mathematical constant.

Args: name: Constant name (e.g., "SpeedOfLight", "PlanckConstant", "Pi", "EulerGamma", "GoldenRatio", "Avogadro")

Returns: Constant value with unit (if applicable) and numeric approximation

Example: get_constant("SpeedOfLight") -> {value: "299792458 m/s", numeric: "2.998e8"}

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

No annotations exist, so the description carries full burden. It describes input (name) and output format (value with unit and numeric approximation), but lacks disclosure on side effects, permissions, error handling, or whether it is read-only. The behavior is adequately implied for a simple lookup.

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

Conciseness5/5

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

The description is concise, with clear structure including Args and Returns sections and an example. It is front-loaded with the purpose and every sentence adds value.

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?

Given only one parameter and no annotations, the description is fairly complete: it explains the parameter, return format, and provides an example. However, it could list supported constants or error cases for full completeness.

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?

The schema has 0% description coverage, but the description compensates by explaining the 'name' parameter with examples and stating it is the constant name. This adds significant meaning beyond the schema property name.

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 clearly states the tool gets a physical or mathematical constant, with specific examples like SpeedOfLight and PlanckConstant. This distinguishes it from sibling get_* tools that handle different resources.

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?

The description implies usage via an example but does not explicitly state when to use this tool over alternatives such as entity_lookup. No exclusions or when-not guidance is provided.

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

get_dataset_infoC

Get detailed information about a Wolfram Data Repository dataset.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataset_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description bears full responsibility for behavioral disclosure. It does not mention side effects, costs, or what 'detailed information' entails, leaving the agent with minimal understanding of the tool's behavior.

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

Conciseness3/5

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

The description is a single sentence, making it concise, but it is too sparse. It lacks structure and depth, earning an average score for conciseness as it fails to add value.

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

Completeness2/5

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

With no annotations and an output schema (details not visible), the description is incomplete. It does not explain the return information or any constraints, leaving significant gaps for a tool with one parameter and no behavioral cues.

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?

Schema description coverage is 0%, and the tool description adds no additional meaning to the 'dataset_name' parameter beyond its existence. There is no format guidance, example, or clarification of what constitutes a valid dataset name.

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 clearly states the verb 'Get' and the resource 'detailed information about a Wolfram Data Repository dataset'. It effectively distinguishes from sibling tools like 'search_data_repository' (search) and 'load_dataset' (load).

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

Usage Guidelines2/5

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, no prerequisites, and no exclusions. It lacks any context about appropriate use cases.

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

get_expression_infoA

Get detailed structural information about a Wolfram expression.

Like Python's type() on steroids - shows Head, FullForm, tree structure, depth, leaf count, and type checks (NumericQ, ListQ, etc.)

Args: expression: Wolfram Language expression to analyze

Returns: Structural information: head, full form, depth, leaf count, type flags

Example: get_expression_info("{{1,2},{3,4}}") -> {head: "List", depth: 3, dimensions: [2,2]} get_expression_info("Sin[x] + Cos[x]") -> {head: "Plus", leaf_count: 3}

ParametersJSON Schema
NameRequiredDescriptionDefault
expressionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries full burden. It lists the returned information (head, depth, etc.) but does not disclose potential limitations, side effects, or required permissions. It is adequate but not comprehensive.

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

Conciseness5/5

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

The description is concise, well-structured with Args and Returns sections, and includes helpful examples. Every sentence contributes value without redundancy.

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?

Given the simple parameter set and existence of an output schema, the description is largely complete. It covers the tool's purpose, inputs, outputs, and examples, though it could mention edge cases or expression length limits.

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?

The single parameter 'expression' is described as 'Wolfram Language expression to analyze', adding meaningful context beyond the schema type string. The description enhances understanding, though additional examples of valid expressions would be even better.

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

Purpose4/5

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

The description clearly states it gets detailed structural information about a Wolfram expression, using a specific verb and resource. It includes examples that clarify the output, but does not explicitly distinguish from sibling 'get' tools like get_symbol_info.

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

Usage Guidelines2/5

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

The description lacks guidance on when to use this tool versus alternatives. No when-to-use or when-not-to-use criteria are mentioned, leaving the agent to infer usage solely from the description.

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

get_feature_statusA

Get the status of all feature flags.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

The description indicates a read-only operation ('Get status'), but with no annotations, it does not disclose additional behavioral traits such as permissions, rate limits, or side effects. The absence of parameters and the existence of an output schema partially compensate, but the description itself offers minimal extra context.

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

Conciseness5/5

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

The description is a single, concise sentence that immediately conveys the tool's purpose. Every word is necessary, and it is front-loaded with the key verb and resource.

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 getter with no parameters and an existing output schema, the description is largely complete. It could briefly mention that the output lists flags and statuses, but the schema handles that. Overall adequate.

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?

There are no parameters, and schema coverage is 100%. The description does not need to add parameter information; the baseline is 4. It adds no param semantics because none are needed.

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 ('Get') and resource ('status of all feature flags'), clearly stating the tool's function. It distinguishes itself from sibling tools like 'get_kernel_state' or 'get_mathematica_status' which target different aspects.

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?

No explicit guidance on when to use this tool versus alternatives is provided. The intended use is implied (checking feature flag status), but there are no exclusions or references to sibling tools.

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

get_function_repository_infoB

Get details about a Wolfram Function Repository function.

ParametersJSON Schema
NameRequiredDescriptionDefault
function_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description must fully disclose behavior. It does not state that this is a read operation, mention required permissions, describe side effects, or indicate what 'details' entails.

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

Conciseness3/5

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

The description is a single, short sentence. It is concise but lacks necessary detail, making it borderline under-specified.

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

Completeness2/5

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

Given the presence of an output schema, return values are covered. However, the description is too brief to provide complete context for a 1-parameter tool, leaving many questions unanswered.

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

Parameters2/5

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

The schema has 0% description coverage and the description adds no information about the 'function_name' parameter beyond its name. No types, format, or constraints are specified.

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 clearly states the action ('Get details') and the resource ('Wolfram Function Repository function'). It is specific and distinguishes from sibling tools like search_function_repository.

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?

No explicit when or when-not guidance is provided. The context is implied but not elaborated; alternatives are not mentioned.

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

get_kernel_stateA

Get current Wolfram kernel session state (memory, uptime, version).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses the tool returns memory, uptime, and version, and implies no side effects. However, it lacks details on potential restrictions (e.g., frequency limits) or additional context like whether the state is instantaneous or cached. For a simple stateless read, it is adequate but minimal.

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

Conciseness5/5

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

The description is a single concise sentence that front-loads the verb 'Get' and specifies the resource. Every word adds value; there is no fluff or redundancy.

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?

Given the tool's simplicity (zero parameters, no side effects, output schema present), the description is complete. It covers what the tool does and what information it returns. The output schema (not shown) would handle return structure details, so no further description is needed.

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?

The tool has zero parameters, and schema coverage is 100% (since no parameters exist). The description adds no parameter information, but the baseline for zero-parameter tools is 4 because the schema already documents everything. The description's mention of the retrieved attributes compensates for the absence of parameters.

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 explicitly states that the tool retrieves the current Wolfram kernel session state, listing three specific attributes (memory, uptime, version). This is a specific verb+resource combination that clearly distinguishes it from sibling tools which focus on computations, notebooks, or other operations.

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?

The description implies usage for checking kernel state but provides no explicit guidance on when to use or not use this tool versus alternatives. However, given the tool's niche purpose and the lack of obvious conflicting siblings, the implication is moderately clear.

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

get_mathematica_statusB

Get connection status and system info.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It does not mention read-only nature, side effects, authentication needs, or rate limits. Since it's a 'get' tool, idempotency is implied but not stated.

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?

Single sentence with no waste. Front-loaded with the verb. However, it is very minimal; could add context without losing conciseness.

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

Completeness3/5

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

Given an output schema exists, return values are covered. The description is adequate for a simple status tool but lacks specifics like what 'system info' includes or how it differs from sibling tools. It is minimally complete.

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?

No parameters exist, and schema coverage is trivial at 100%. Baseline for 0 parameters is 4; no additional description is needed.

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

Purpose4/5

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

The verb 'Get' clearly indicates retrieval, and the resource 'connection status and system info' is specific. It distinguishes from siblings like 'get_kernel_state' (kernel-specific) and 'get_session_brief' (session summary), though 'system info' is somewhat vague.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. Does not mention when to prefer this over other status/get tools, nor any prerequisites or context.

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

get_messagesA

Get recent Mathematica messages/warnings from the session.

Like Python's exception traceback - helps debug what went wrong. Includes recently captured evaluation and dispatch-level messages.

Args: count: Number of recent messages to retrieve (default 10)

Returns: List of recent messages with timestamps

Example: After a failed computation: get_messages() -> [{timestamp: "...", message: "Power::infy: Infinite expression 1/0 encountered."}]

ParametersJSON Schema
NameRequiredDescriptionDefault
countNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

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

In the absence of annotations, the description discloses that it includes 'recently captured evaluation and dispatch-level messages' and provides a concrete example of the output format. It does not detail all limitations (e.g., message retention limits), but it is sufficiently transparent for a simple read tool.

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

Conciseness5/5

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

The description is extremely concise, using a brief intro, an analogy, structured Args/Returns/Example sections, and no wasted words. Every sentence adds value.

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?

Given only one parameter and the presence of an output schema, the description covers the essential information: what the tool returns (list with timestamps) and when to use it. The example solidifies understanding.

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?

The only parameter, 'count', is explained in the Args section as 'Number of recent messages to retrieve (default 10)', adding meaning beyond the schema (which lacks any description). This compensates for the 0% schema description coverage.

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?

Clearly states 'Get recent Mathematica messages/warnings from the session' with a specific verb and resource. The analogy to Python's exception traceback and the example further clarify its purpose, distinguishing it from sibling tools like get_symbol_info or get_variable.

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

Usage Guidelines4/5

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

Provides context for when to use: 'Like Python's exception traceback - helps debug what went wrong' and includes an example after a failed computation. However, it does not explicitly state when not to use or mention alternative tools.

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

get_notebook_cellA

[LEGACY] Read a single notebook cell by index.

Prefer read_notebook() unless you specifically need this older or narrower workflow.

ParametersJSON Schema
NameRequiredDescriptionDefault
fullNo
pathYes
cell_indexYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

No annotations provided, so description carries burden. It discloses legacy status and basic read behavior, but lacks details on error handling or edge cases. However, output schema covers return format, and simplicity reduces need for extensive behavior notes.

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

Conciseness5/5

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

Two sentences with front-loaded purpose and clear guidance. No extraneous information.

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

Completeness3/5

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

Provides purpose and usage guidance, but lacks parameter descriptions. With output schema present, return values are covered, but incomplete parameter info reduces overall completeness for a legacy tool.

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

Parameters2/5

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

With 0% schema description coverage, the description must compensate but only mentions 'by index' (cell_index). The 'path' and 'full' parameters are unexplained, leaving agents to guess their purpose and semantics.

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 clearly states it reads a single notebook cell by index, and distinguishes itself from read_notebook() as a legacy alternative for older or narrower workflows.

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?

Explicitly advises to prefer read_notebook() unless the older/narrower workflow is needed, providing clear when-to-use and alternative guidance.

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

get_notebook_infoC

Get details about a notebook (filename, directory, cell count).

ParametersJSON Schema
NameRequiredDescriptionDefault
notebookNo
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

The description implies a read-only operation but does not explicitly state behavior such as error handling (e.g., notebook not found), required permissions, or side effects. With no annotations, the description carries the full burden and falls short.

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

Conciseness5/5

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

The description is extremely concise—a single sentence that directly states the purpose. Every word is meaningful, with no redundancy or unnecessary detail.

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

Completeness2/5

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

Given the tool's simplicity and presence of an output schema, the description is incomplete. It omits critical context about how to identify the notebook and lacks guidance on when to use this specific tool among many notebook-related siblings.

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?

Schema description coverage is 0%, and the description does not mention the parameters 'notebook' or 'session_id'. It provides no explanation of how to specify the notebook or the purpose of session_id, making parameter usage unclear.

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

Purpose4/5

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

The description specifies the verb 'get details' and the resource 'notebook', listing specific fields (filename, directory, cell count). However, it does not differentiate from sibling tools like 'get_notebooks' or 'get_notebook_outline', which could cause confusion.

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

Usage Guidelines2/5

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. There is no mention of prerequisites, context, or exclusions, leaving the agent uncertain about appropriate usage.

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

get_notebook_outlineA

[LEGACY] Get the notebook's section outline.

Prefer read_notebook() unless you specifically need this older or narrower workflow.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

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

While no annotations are provided, the description adds context by labeling the tool as legacy and narrower. However, it lacks details on what the outline contains, side effects, or specific behavior beyond the name.

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

Conciseness5/5

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

Two sentences, no wasted words. Front-loaded with 'LEGACY' and immediately states purpose, then provides usage preference. Highly efficient.

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?

With an output schema present (though not shown), return value explanation is not required. The description covers purpose and usage context. Missing parameter description is a minor gap, but overall complete for a simple, legacy tool.

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

Parameters2/5

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

Schema description coverage is 0% and the description does not explain the 'path' parameter. Despite the parameter name being intuitive, the description adds no semantic value beyond the schema.

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?

Clearly states the tool gets the notebook's section outline and marks itself as legacy. Distinguishes from read_notebook by describing it as older/narrower workflow.

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?

Explicitly recommends preferring read_notebook() unless the legacy/narrower workflow is needed, providing clear when-to-use and 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.

get_notebooksA

List all open Mathematica notebooks. Returns ID, filename, title.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

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

No annotations provided, so description carries full burden. It states a read operation (listing open notebooks) and return fields, but lacks permissions, side effects, or edge case behavior (e.g., empty list).

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

Conciseness5/5

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

Two sentences, no fluff, action verb front-loaded. Every word adds value.

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?

For a simple list tool with no parameters and an output schema, the description completely covers purpose and output. No gaps.

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?

No parameters; schema coverage is 100%. Description adds no parameter info, but none is needed. Baseline 4 applies.

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?

Description clearly states the tool lists all open Mathematica notebooks and returns specific fields (ID, filename, title). This distinguishes it from sibling tools like close_notebook or create_notebook.

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?

No explicit guidance on when to use this tool versus alternatives like get_notebook_info or get_notebook_cell. Usage is implied but not contrasted.

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

get_session_briefA

Compact session state summary: connection, profile, recent errors, routing advice.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior4/5

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

Without annotations, the description carries the full burden. It implies a read-only, non-destructive operation and specifies the output contents. However, it does not disclose potential error conditions or dependencies on an active session.

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

Conciseness5/5

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

Single sentence, concise and front-loaded with the core purpose. Every word adds value, listing the exact components of the summary.

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?

Given no parameters and presence of an output schema, the description adequately explains what the tool returns. It is complete for a simple getter tool.

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?

Tool has zero parameters, so schema coverage is 100%. Baseline is 4, and the description adds no parameter information because none exist.

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 clearly states it provides a compact session state summary, listing specific components (connection, profile, recent errors, routing advice). This distinguishes it from sibling tools like get_kernel_state or get_messages by combining multiple aspects into one brief.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives. The description does not mention prerequisites, limitations, or situations where other tools would be preferred.

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

get_symbol_infoB

Get comprehensive information about a Wolfram Language symbol.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden. It only promises 'comprehensive information' without detailing what that includes (e.g., definitions, attributes, usage). The output schema exists but the description does not reference it.

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

Conciseness5/5

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

The description is a single sentence of 7 words, front-loading the purpose without any unnecessary verbiage. Every word is essential.

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

Completeness3/5

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

The tool has one parameter and an output schema, so the description need not explain return values. However, given the many siblings, the description is minimal and does not provide additional context such as prerequisites or scope of 'comprehensive'. It is adequate but not rich.

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

Parameters3/5

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

The schema has 0% description coverage for its single parameter. The description adds the context 'Wolfram Language symbol', which clarifies the parameter's domain beyond the schema's generic 'Symbol' title. However, it lacks examples or format specification, so it only partially compensates.

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 clearly states the tool retrieves comprehensive information about a Wolfram Language symbol. It uses a specific verb ('Get') and resource ('comprehensive information about a Wolfram Language symbol'), which distinguishes it from sibling tools like get_expression_info or get_constant.

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

Usage Guidelines2/5

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. Given the many sibling tools (e.g., get_expression_info, get_constant, get_function_repository_info), explicit usage guidelines are needed but absent.

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

get_variableC

Get detailed information about a specific variable.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

No annotations provided, so the description should disclose behavioral traits. It only says 'Get detailed information' without specifying what is returned (e.g., value, metadata) or if it is read-only. The lack of detail is a gap.

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

Conciseness3/5

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

The description is a single sentence, which is concise but omits necessary details. It is acceptable but could be more structured with bullet points or additional context.

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

Completeness2/5

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

Despite having an output schema, the description does not explain what 'detailed information' includes. Given the complexity of variable metadata, the description is incomplete for effective tool selection.

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?

Schema coverage is 0%, meaning parameter 'name' has no description. The description adds no meaning beyond the parameter name, failing to indicate format or constraints.

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 clearly states the verb 'Get' and resource 'detailed information about a specific variable'. It distinguishes from sibling tools like 'list_variables' (list all variables) and 'set_variable' (modify a variable).

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as 'get_constant' or 'get_symbol_info'. The description lacks context for optimal usage.

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

import_dataB

Import data from a file or URL into Mathematica.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
formatNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description must disclose behaviors. It only says 'imports data' but does not mention side effects, return value, or whether it stores data or just returns it. Output schema exists but description adds no context.

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

Conciseness5/5

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

The description is a single, concise sentence with no unnecessary words.

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

Completeness2/5

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

Given the tool's complexity (import from file/URL with format option) and lack of annotations, the description is too sparse. The output schema exists but is not leveraged to explain return values.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not explain the purpose or format of the 'path' and 'format' parameters. No additional meaning beyond the raw schema.

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 clearly states it imports data from a file or URL into Mathematica, using a specific verb and resource. It distinguishes from siblings like export_data (export) and load_dataset (more specific).

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like load_dataset. The description does not specify prerequisites or typical use cases.

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

inspect_graphicsC

Analyze the structure of a graphics object.

ParametersJSON Schema
NameRequiredDescriptionDefault
expressionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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

With no annotations, the description carries full burden but only says 'analyze the structure'. It does not disclose whether the tool is read-only, requires permissions, or has side effects. The return behavior is not mentioned (though an output schema exists).

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

Conciseness3/5

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

The description is a single short sentence, which is concise but at the cost of completeness. It front-loads the core purpose but lacks necessary details, earning a middle score.

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

Completeness2/5

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

Given the tool has one parameter, no annotations, and an output schema exists, the description is too sparse. It doesn't explain what 'analyze the structure' means, what kind of output to expect, or how to use the parameter, leaving significant gaps.

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

Parameters2/5

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

The parameter 'expression' has no description in the schema and the tool description adds no meaning. With 0% schema coverage, the description should explain what 'expression' represents (e.g., a graphics object expression) but fails to do so.

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

Purpose4/5

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

The description clearly states the verb 'analyze' and the resource 'graphics object', giving a specific purpose. It distinguishes from sibling tools like 'export_graphics' or 'rasterize_expression', though 'structure' could be more precise.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. The description does not provide context, prerequisites, or exclusions, leaving the agent to infer usage.

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

interpret_natural_languageA

Convert natural language mathematical description to Wolfram Language code.

This is magic - describe what you want in English and get executable code.

Args: text: Natural language description (e.g., "the integral of x squared from 0 to 1", "solve x squared equals 4 for x", "plot sine of x from 0 to 2 pi")

Returns: Wolfram Language code and its evaluation result

Example: interpret_natural_language("the derivative of e to the x") -> {code: "D[E^x, x]", result: "E^x"}

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose side effects, authentication needs, rate limits, or any behavioral traits beyond returning code and result. The example gives return format but lacks safety or constraint information.

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

Conciseness5/5

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

The description is concise with clear sections (Args, Returns, Example). Every sentence adds value, and the structure is easy to scan. The colloquial 'This is magic' is negligible.

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?

Given the tool's simplicity (one parameter) and the availability of an output schema (implied by the return description), the description adequately covers the conversion process and return format, though it lacks explicit details about output schema fields.

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?

The only parameter 'text' has no schema description (0% coverage), but the description compensates by explaining it is a natural language description and providing examples. It adds clear meaning beyond the schema's title and type.

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 clearly states the tool converts natural language mathematical descriptions to Wolfram Language code. It provides examples and distinguishes its unique natural language input from sibling tools like mathematica_integrate or mathematica_solve.

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

Usage Guidelines2/5

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

The description tells users to 'describe what you want in English' but does not guide when to use this tool versus more specific siblings (e.g., mathematica_integrate for integrals). No explicit when-not or alternative recommendations.

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

list_cacheA

List all cached expressions with their metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior4/5

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

The description states it lists all cached expressions with metadata, which implies a read-only operation. Although annotations are absent, the description adequately covers the main behavioral trait.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no redundant words. Every word contributes to clarity.

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?

Given the tool has no parameters and an output schema exists (presumably), this concise description is fully adequate for correct usage.

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

Parameters5/5

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

There are zero parameters, and schema coverage is 100% (none needed). The description adds no extra parameter info, but following the rule for 0 params, baseline is 4; the description is perfect.

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 the specific verb 'List' and identifies the resource as 'cached expressions' with 'their metadata'. This clearly distinguishes the tool from siblings like 'cache_expression' and 'get_cached'.

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?

No explicit guidance on when to use or not use this tool, nor alternatives. However, the tool is simple and self-explanatory; the need for extensive guidelines is minimal.

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

list_loaded_packagesA

List all currently loaded packages and contexts.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior2/5

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

No annotations provided, so description must fully disclose behavior. It only says 'list all currently loaded packages and contexts' with no mention of side effects, permission needs, or other traits. Minimal.

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

Conciseness5/5

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

Single sentence, no wasted words. Efficiently communicates core functionality.

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?

Output schema exists, so return format details are covered. Given zero parameters and simple listing operation, description is adequate but could benefit from more behavioral context.

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?

No parameters exist, so description does not need to add parameter meaning. Baseline 4 applies.

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?

Description clearly states it lists 'all currently loaded packages and contexts'. Verb 'list' and resource 'packages and contexts' are specific. This distinguishes it from siblings like 'load_package'.

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?

No guidance on when to use this tool versus alternatives. It merely states what it does without context on when it's appropriate.

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

list_supported_formatsA

List all supported import/export formats.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It correctly indicates a non-destructive read operation (listing), which is sufficient for this simple tool. However, no additional behavioral traits (e.g., caching, consistency) are disclosed beyond the basic purpose.

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

Conciseness5/5

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

The description is a single sentence that is front-loaded and contains no extraneous information. Every word earns its place, making it highly concise and easy to parse.

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?

Given the tool has no parameters and an output schema exists (context signals indicate 'Has output schema: true'), the description 'List all supported import/export formats' is entirely complete for an agent to understand what the tool does and when to invoke it. No additional context is necessary.

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

Parameters3/5

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

The input schema has no parameters (100% coverage), so the description does not need to add parameter details. The baseline score of 3 is appropriate as the description adds no parameter semantics, but none are required.

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 'List all supported import/export formats' clearly states the verb 'list' and the resource 'supported import/export formats', making the tool's purpose immediately obvious. It distinguishes itself from sibling tools like import_data and export_data, which perform actual import/export operations.

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?

The description implies usage when users need to know available formats for import/export, but it does not explicitly state when to use this tool versus alternatives, nor does it provide any usage exclusions. Given the tool's simplicity, the implicit usage is clear, but explicit guidance is lacking.

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

list_variablesC

List all user-defined variables in the current Mathematica kernel session.

ParametersJSON Schema
NameRequiredDescriptionDefault
include_systemNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden. It correctly indicates this is a read-only listing operation, which is safe. However, it does not disclose any potential side effects, performance implications, or behavior when many variables exist. Given the simplicity of the tool, the description is minimally adequate.

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

Conciseness3/5

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

The description is a single sentence, which is concise, but it omits important information about the parameter and the scope of variables. It is front-loaded but incomplete, which reduces its effectiveness.

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

Completeness2/5

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

Given the tool has one optional parameter that is not explained and the description does not cover its behavior, the description is incomplete. The output schema exists but does not compensate for the missing parameter documentation.

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 description does not mention the single parameter 'include_system' at all. Since the schema has 0% description coverage, the agent receives no explanation of what this boolean does or how to use it. This is a critical gap that prevents correct invocation.

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

Purpose4/5

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

The description clearly states the verb 'list' and resource 'all user-defined variables in the current Mathematica kernel session', which distinguishes it from siblings like 'get_variable' or 'clear_variables'. However, it does not mention the optional parameter 'include_system', which allows listing system variables as well, making the description slightly incomplete.

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

Usage Guidelines2/5

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_variable', 'clear_variables', or 'list_cache'. There is no mention of context, prerequisites, or exclusions.

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

load_datasetC

Load a dataset from the Wolfram Data Repository.

ParametersJSON Schema
NameRequiredDescriptionDefault
sample_sizeNo
dataset_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

No annotations exist, so the description carries the full burden. It only says 'Load', with no details on side effects, network calls, caching, or output nature.

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

Conciseness3/5

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

The description is very concise (one sentence), but it lacks necessary detail for a tool with two parameters and no schema descriptions. It could be more informative while remaining efficient.

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

Completeness2/5

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

Given the presence of an output schema and sibling tools, the description fails to provide sufficient context about what 'load' entails or how to use parameters effectively.

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?

Schema description coverage is 0%, and the description does not explain any parameters (dataset_name or sample_size), leaving the agent with no semantic guidance beyond raw names.

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

Purpose4/5

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

The description clearly states it loads a dataset from the Wolfram Data Repository, providing a specific verb and resource. However, it does not differentiate from sibling tools like search_data_repository or get_dataset_info.

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

Usage Guidelines2/5

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, nor are there any usage context or prerequisites mentioned.

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

load_packageC

Load a Mathematica package (e.g., "Developer`").

ParametersJSON Schema
NameRequiredDescriptionDefault
package_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description bears full burden. It only says 'Load', omitting side effects (global state changes), error behavior, kernel requirements, or confirmation on success. This is insufficient for safe invocation.

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

Conciseness3/5

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

Single sentence, concise, but too terse. Every word is used, but the description could include more context without becoming verbose. It is adequately structured for the minimal content.

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

Completeness2/5

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

Output schema exists, but the description does not mention return values or behavior. For a simple one-parameter tool, it misses prerequisites (e.g., running kernel) and idempotency details. Incomplete for a complete specification.

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

Parameters2/5

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

Schema has 0% description coverage and only one parameter. The description adds an example but does not specify the required format (e.g., backtick-quoted context) or valid patterns. Minimal added meaning.

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 clearly states the verb 'Load' and the resource 'a Mathematica package', with a concrete example ('Developer`'). This distinguishes it from sibling tools like 'list_loaded_packages' (listing) and 'load_resource_function' (resource functions).

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, no mention of prerequisites or that loading a package multiple times is safe. The description does not help an agent decide between this and similar loading operations.

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

load_resource_functionB

Load a function from the Wolfram Function Repository.

ParametersJSON Schema
NameRequiredDescriptionDefault
function_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries full burden but only states 'Load a function'. It does not disclose whether the operation is read-only, what happens if the function is not found, or any side effects (e.g., modifying session state). This is insufficient for a tool with no annotations.

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

Conciseness5/5

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

The description is a single sentence with no extraneous words. It is appropriately sized for the tool's simplicity and front-loads the core action.

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

Completeness3/5

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

The tool has only one parameter and an output schema exists, but the description lacks context about prerequisites (e.g., function must exist in repository) and does not hint that the agent should use 'search_function_repository' first to find valid names. It is minimally viable but incomplete given the sibling tools.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not add any meaning beyond the schema's title 'Function Name'. It fails to describe the expected format, examples, or how to obtain valid function names. Given only one parameter, the description should at least elaborate on it.

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 clearly states the tool loads a function from the Wolfram Function Repository. It uses a specific verb 'load' and identifies the resource, making its purpose unambiguous. It also distinguishes itself from siblings like 'search_function_repository' and 'resolve_function'.

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

Usage Guidelines2/5

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

No usage guidelines are provided. The description does not indicate when to use this tool versus alternatives such as 'search_function_repository' or 'resolve_function', nor does it mention prerequisites or context.

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

mathematica_differentiateC

Compute derivative using D.

ParametersJSON Schema
NameRequiredDescriptionDefault
orderNo
variableYes
expressionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.3/5.0
Behavior2/5

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

No annotations provided. The description does not disclose behavioral traits such as whether it handles symbolic or numeric differentiation, error conditions, or return format. With annotations absent, the description carries full burden but fails to address these.

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

Conciseness2/5

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

The description is one sentence, which is concise but severely under-specified. It front-loads the core function but lacks essential details, making it less useful than a more thorough but still concise description.

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

Completeness1/5

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

Given the complexity of differentiation, the description is highly incomplete. It fails to mention syntax for expressions, supported functions, output structure (though output schema exists), or any constraints. Far from meeting the needs of an agent.

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?

Schema description coverage is 0%. The description adds no meaning to the three parameters (expression, variable, order). It does not explain that 'expression' is a symbolic math string, 'variable' is the differentiation variable, or that 'order' defaults to 1. Critical semantics are omitted.

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

Purpose4/5

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

The description 'Compute derivative using D' clearly states the action and the Mathematica function used. It differentiates from siblings like mathematica_integrate, mathematica_limit, etc., but could be more specific about symbolic differentiation.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives. For example, it doesn't mention that this is for symbolic differentiation or that mathematica_limit might be used for limits. The description only states what it does, not when.

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

mathematica_expandC

Expand a mathematical expression.

ParametersJSON Schema
NameRequiredDescriptionDefault
expressionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. The description is minimal and does not disclose any behavioral traits such as supported expression types, output format, side effects, or limitations. This is insufficient for safe and effective use.

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

Conciseness3/5

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

The description is very concise at one sentence. While brevity is valued, it comes at the cost of informativeness. It is not overly long, but could be slightly more detailed without becoming verbose.

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

Completeness2/5

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

Given the existence of an output schema, the description does not need to detail return values. However, the description is too minimal to be complete for a tool with many siblings and a single parameter. More context about the type of expansion and expected input would be necessary.

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

Parameters2/5

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

There is only one parameter, 'expression', which is a required string. The description adds no meaning beyond the parameter name. With schema coverage at 0%, the description should clarify expected input format or constraints.

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

Purpose4/5

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

The description clearly states 'Expand a mathematical expression.' This identifies the action and resource. However, it does not specify what type of expansion (e.g., algebraic, polynomial) which could help distinguish from siblings like mathematica_simplify or mathematica_factor.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. Given the sheer number of sibling mathematical tools, explicit usage context or examples of when 'expand' is appropriate would significantly improve the description.

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

mathematica_factorC

Factor a mathematical expression.

ParametersJSON Schema
NameRequiredDescriptionDefault
expressionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the core action without mentioning side effects, safety (e.g., read-only), or any constraints on input. This is insufficient for a tool with no other behavioral hints.

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

Conciseness5/5

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

The description is a single, clear sentence with no unnecessary words. It is appropriately concise for a simple tool.

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

Completeness3/5

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

Given the low parameter count and presence of an output schema, the description covers the basic purpose. However, it omits any hints about input format, error conditions, or typical use cases, leaving it minimally adequate.

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 input schema has 0% description coverage for its sole parameter 'expression', and the tool description does not add any semantics beyond what the parameter name implies. The description should clarify expected format (e.g., Mathematica syntax, polynomial) but does not.

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

Purpose4/5

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

The description 'Factor a mathematical expression' provides a clear verb ('factor') and resource ('mathematical expression'). It distinguishes the tool from siblings like mathematica_simplify or mathematica_expand, though it does not explicitly contrast them.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as mathematica_simplify or mathematica_expand. The description fails to provide any 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.

mathematica_integrateC

Compute integral using Integrate.

ParametersJSON Schema
NameRequiredDescriptionDefault
variableYes
expressionYes
lower_boundNo
upper_boundNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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

With no annotations, the description carries the full burden. It only says 'Compute integral' with no disclosure of whether it handles symbolic or numeric integration, error behavior, or performance traits. The agent gets no insight into side effects or requirements.

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

Conciseness3/5

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

The description is extremely concise (one sentence), but this brevity sacrifices clarity and completeness. It is front-loaded but lacks enough substance to be maximally helpful.

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

Completeness2/5

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

Given the complexity of integration and the presence of many sibling tools, the description is too sparse. Even though an output schema exists, the description fails to provide usage context, examples, or notes about supported forms, making it insufficient for confident agent invocation.

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

Parameters2/5

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

Schema description coverage is 0%, so the description should compensate, but it adds nothing about the parameters. Although parameter names are self-explanatory, the description does not clarify their syntax, defaults, or constraints beyond the schema.

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

Purpose4/5

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

The description clearly states the action (compute integral) and names the underlying Mathematica function (Integrate). It distinguishes from sibling tools like mathematica_differentiate. However, it lacks detail on scope (e.g., definite vs indefinite) and is very brief.

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

Usage Guidelines2/5

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 its many symbolic math siblings. The description does not mention any prerequisites, limitations, or alternative tools, leaving the agent without decision support.

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

mathematica_limitC

Compute limit using Limit.

ParametersJSON Schema
NameRequiredDescriptionDefault
pointYes
variableYes
directionNo
expressionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It merely repeats the tool name essentially ('Compute limit using Limit') and does not disclose behavioral traits such as handling of infinite limits, directional limits (the direction parameter), error cases, or computational cost. This is insufficient for safe agent invocation.

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

Conciseness3/5

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

At one sentence, the description is extremely concise. However, this brevity sacrifices essential information. It is not a model of clarity through brevity; it is under-specified. A balanced approach would include parameter hints or usage guidance without being verbose.

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

Completeness2/5

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

Given that there is an output schema (not shown), the description need not explain return values. However, with four parameters and zero descriptions, the description fails to make the tool independently usable. The agent cannot infer proper parameter values or expected behavior from the description alone.

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 description coverage is 0%, meaning the JSON schema has no descriptions for parameters. The tool description also fails to explain any parameter, such as the meaning of 'expression', 'variable', 'point', or 'direction'. The agent receives no help beyond the parameter names, which is inadequate for proper use.

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

Purpose4/5

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 computing a limit, which is a specific mathematical operation. It distinguishes well from sibling tools like mathematica_integrate, mathematica_differentiate, etc. However, it could be slightly more precise (e.g., specifying that it computes the limit of an expression as a variable approaches a point).

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

Usage Guidelines2/5

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. There is no mention of prerequisites, exclusions, or context. The agent gets no help in deciding between this and other tools like mathematica_series or mathematica_simplify for related tasks.

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

mathematica_seriesC

Compute Taylor/power series expansion.

ParametersJSON Schema
NameRequiredDescriptionDefault
orderNo
pointNo0
variableYes
expressionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior1/5

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

No annotations exist, and the description does not disclose any behavioral aspects, such as side effects, required permissions, or performance characteristics.

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 a single concise sentence, but it lacks structure and front-loads only the purpose.

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

Completeness2/5

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

Given the complexity of 4 parameters and no annotations, the description is incomplete. It does not explain output or edge cases, though an output schema exists.

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

Parameters2/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 explain parameters. It does not mention any parameter details, though parameter names are somewhat self-explanatory.

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 clearly states the verb 'Compute' and the resource 'Taylor/power series expansion.' It is specific enough to distinguish it from sibling tools like mathematica_differentiate or mathematica_integrate.

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

Usage Guidelines2/5

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. There are no prerequisites, exclusions, or context about when not to use it.

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

mathematica_simplifyC

Simplify a mathematical expression.

ParametersJSON Schema
NameRequiredDescriptionDefault
fullNo
expressionYes
assumptionsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description must convey behavioral traits. It only states the basic function without disclosing side effects, limitations, or the nature of simplification (e.g., algebraic, symbolic). This leaves significant gaps for an agent.

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

Conciseness3/5

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

The description is a single, concise sentence, but its brevity sacrifices helpfulness. It is not overly verbose, but it fails to provide enough context to be deemed efficient.

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

Completeness1/5

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

Despite the presence of an output schema, the description is critically incomplete. With 3 parameters, no annotations, and a long list of sibling tools, the description offers no details on return values, parameter usage, or behavioral nuances, leaving a knowledgeable agent underinformed.

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?

Schema description coverage is 0%, meaning parameter descriptions are completely absent from the schema. The tool's description adds no semantic information about the 'expression', 'assumptions', or 'full' parameters, leaving the agent without necessary guidance.

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

Purpose4/5

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

The description 'Simplify a mathematical expression' uses a specific verb and resource, clearly indicating the tool's action. However, it lacks differentiation from sibling tools like mathematica_expand or mathematica_factor, which could also be considered simplifications in certain contexts.

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

Usage Guidelines2/5

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, nor does it mention any prerequisites or exclusions. The agent is left to infer usage without explicit context.

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

mathematica_solveC

Solve an equation using Solve.

ParametersJSON Schema
NameRequiredDescriptionDefault
domainNo
equationYes
variableYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the full burden is on the description. The description only states that it solves an equation, but does not disclose side effects, return format (though output schema exists, its content is not described), required prerequisites, or limitations. The agent is left uninformed about behavior beyond the basic operation.

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

Conciseness2/5

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

The description is extremely concise (6 words) but at the cost of missing essential information. While brevity is valued, it should not sacrifice necessary context. A few additional sentences clarifying parameters and usage would improve utility without excessive verbosity.

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

Completeness2/5

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

Given the absence of annotations and low schema coverage, the description is incomplete. It does not leverage the output schema (which exists) to clarify return values, nor does it address the complexity of solving equations. Sibling tools suggest a rich ecosystem, and more context about when to use this specific tool is needed.

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?

Schema description coverage is 0%, and the tool description adds no meaning for any of the three parameters. The text does not explain that 'equation' is the mathematical expression, 'variable' is the unknown to solve for, or 'domain' restricts solutions. Without any guidance, the agent must infer parameter semantics from names alone.

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

Purpose4/5

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

The description 'Solve an equation using Solve' clearly states the verb (solve) and resource (equation). It distinguishes the tool from siblings like mathematica_integrate or mathematica_factor by focusing on solving equations. However, it does not specify the type of equations (e.g., algebraic, differential) or the scope of Solve.

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

Usage Guidelines2/5

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. Sibling tools include mathematica_simplify, mathematica_expand, etc., but no comparison or context is given. An agent cannot determine when solving versus simplifying or factoring is appropriate.

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

open_notebook_fileA

Open an existing Mathematica notebook file (.nb) in the Mathematica frontend.

Supports:

  • Absolute paths: /Users/foo/notebook.nb

  • Home-relative paths: ~/Documents/notebook.nb

  • Relative paths (resolved from current directory)

Args: path: Path to the .nb file

Returns: Notebook ID and metadata for use with other notebook commands

Example: open_notebook_file("~/Documents/analysis.nb") -> {id: "NotebookObject[...]", cell_count: 15}

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It describes the return value (Notebook ID and metadata) and path formats, but does not disclose potential side effects (e.g., no modification), error conditions, or dependencies (e.g., kernel state). Adequate but could be more comprehensive.

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

Conciseness5/5

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

The description is concise and well-structured with bullet points and an example. Every sentence adds value, and the layout improves readability.

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?

Given the tool has 2 parameters, no annotations, and an output schema (not shown but hinted), the description covers the core functionality well. However, it misses the optional session_id and does not specify error handling. Still, for a simple file open, it is reasonably complete.

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

Parameters3/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 compensate. It thoroughly explains the 'path' parameter with examples and formats, but completely omits the optional 'session_id' parameter. This partial coverage earns a 3.

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 clearly states the tool opens a Mathematica notebook file (.nb) in the frontend, and specifies supported path formats (absolute, home-relative, relative). This distinguishes it from siblings like create_notebook or read_notebook.

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

Usage Guidelines4/5

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

The description implies usage when wanting to open an existing .nb file, but does not explicitly compare to alternatives or state when not to use it. However, the context and example are clear enough for an agent to infer appropriate use.

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

parse_notebook_pythonB

[LEGACY] Parse a notebook with the Python-native parser.

Prefer read_notebook() unless you specifically need this older or narrower workflow.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
output_formatNomarkdown
truncation_thresholdNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description must reveal behavioral traits. It only mentions 'legacy' and 'Python-native parser', but does not describe what parsing entails, side effects, permissions, or return format. The minimal information leaves the agent with significant unknowns about the tool's behavior.

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 very concise at two sentences, front-loading the legacy note and alternative recommendation. However, it omits parameter details, which would have been valuable. Still, it achieves efficiency without redundancy.

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

Completeness2/5

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

Given the tool is legacy with three parameters, an output schema exists, but the description does not explain what the tool returns or any nuances of its operation. The agent lacks sufficient context to confidently invoke this tool correctly, especially regarding parameter usage and return values.

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?

Schema description coverage is 0% and the description offers no explanation for any of the three parameters (path, output_format, truncation_threshold). The agent must rely solely on the schema, which lacks context like meaning of output format options or truncation threshold effect.

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 clearly states the tool parses notebooks using a Python-native parser and explicitly distinguishes it from the preferred alternative `read_notebook()`. The verb 'parse' and resource 'notebook' are specific and unambiguous.

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?

The description explicitly advises to prefer `read_notebook()` unless the older or narrower workflow is needed. This provides clear guidance on when to use this tool and when to avoid it, with a direct reference to an alternative.

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

poll_computationB

Check the status of a submitted computation.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose behavioral traits such as idempotency, frequency of polling, or latency. It only states the tool checks status, lacking important context for an agent.

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 a single concise sentence, which is appropriate for a simple tool. However, it lacks any structural elements like sections or examples.

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

Completeness3/5

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

Given the tool has an output schema, the description doesn't need to detail return values. However, it omits any context about the output schema existence or what status information is returned, leaving the agent somewhat in the dark.

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

Parameters2/5

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

The single parameter 'job_id' is not described in the schema (0% coverage). The description implies it identifies the computation but gives no details on format or how to obtain a valid job_id.

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

Purpose4/5

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

The description clearly states the tool's purpose: checking the status of a computation. It implicitly distinguishes from siblings like submit_computation (submission) and get_computation_result (final result), but does not explicitly differentiate.

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?

The description implies usage for monitoring progress, but provides no explicit guidance on when to use vs alternatives like get_computation_result or when not to use it.

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

rasterize_expressionA

Render a Wolfram Language expression as an image.

Useful for visualizing plots, matrices, or formatted output without modifying any notebook.

Args: expression: Wolfram Language expression to render image_size: Size of the resulting image in pixels

Examples: rasterize_expression("Plot[Sin[x], {x, 0, 2 Pi}]") rasterize_expression("MatrixForm[{{1, 2}, {3, 4}}]") rasterize_expression("Graphics[Circle[]]", image_size=200)

ParametersJSON Schema
NameRequiredDescriptionDefault
expressionYes
image_sizeNo

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It states the tool does not modify notebooks, but does not disclose return format (e.g., image binary or URL), error behavior, or system-side effects.

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

Conciseness5/5

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

The description is brief yet includes key info and examples, front-loading the purpose. Every sentence contributes, with no wasted words.

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?

Given the tool's simplicity (2 parameters, no output schema), the description adequately covers what and how. However, it could mention return type or format for completeness.

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 coverage is 0%, so description must add meaning. The 'Args' section explains 'expression' as the Wolfram Language expression to render and 'image_size' as the image size in pixels, adding value beyond the schema's type-only information.

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 clearly states the tool renders a Wolfram Language expression as an image, using specific verbs and resource. It distinguishes from sibling tools like evaluate_cell (which evaluates but does not produce an image) or export_graphics (which exports existing graphics).

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

Usage Guidelines4/5

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

The description explains it is useful for visualizing plots, matrices, or formatted output without modifying notebooks, providing clear context. However, it does not explicitly state when not to use it or list alternatives like evaluate_cell for non-visual results.

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

read_notebookA

[PRIMARY] Read a Mathematica notebook with backend-aware dispatch.

Prefer this over read_notebook_content, convert_notebook, get_notebook_outline, parse_notebook_python, and get_notebook_cell unless you need a specific legacy backend or narrow low-level operation.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
viewNosemantic
backendNo
cell_typesNo
output_formatNomarkdown
include_outputsNo
include_alternatesNo
truncation_thresholdNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

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

Mentions 'backend-aware dispatch' as a key behavior, but does not elaborate on side effects, permissions, or other behavioral traits. With no annotations, this is a moderate disclosure.

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

Conciseness5/5

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

Two sentences, each with a distinct purpose, front-loaded with primary function and followed by usage guidelines. No superfluous text.

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

Completeness3/5

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

While the output schema exists, the description does not explain the various output formats or other parameters, making it less complete for a tool with 8 parameters.

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?

Schema description coverage is 0% and the description provides no explanation of the 8 parameters, leaving the agent to rely solely on parameter names and schema enums.

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?

Clearly states it reads a notebook with backend-aware dispatch, and explicitly names sibling tools to differentiate.

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?

Provides explicit guidance on when to prefer this tool over specific alternatives, and when not to use it.

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

read_notebook_contentA

[LEGACY] Read notebook content as structured text.

Prefer read_notebook() unless you specifically need this older or narrower workflow.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
include_outputsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

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

With no annotations, the description should disclose behavioral aspects. It only mentions 'legacy' and 'older/narrower workflow' but does not describe specific behaviors, limitations, or effects beyond returning structured text.

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

Conciseness5/5

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

The description is extremely concise with two sentences, front-loading the legacy warning and alternative preference. No unnecessary words.

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

Completeness3/5

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

The description gives the essential purpose and usage guidance but lacks parameter details and behavioral context beyond 'structured text'. Output schema exists, so return values are covered, but overall it is minimally complete for a legacy tool.

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?

Schema description coverage is 0% and the description does not mention either parameter (path, include_outputs) or their meanings, providing no added value over the raw schema.

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 clearly states the tool reads notebook content as structured text and explicitly contrasts with the preferred sibling tool read_notebook, making the purpose unambiguous.

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

Usage Guidelines5/5

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

The description provides explicit guidance: prefer read_notebook() unless specifically needing this older/narrower workflow, which clearly indicates when to use and when not to use this tool.

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

resolve_functionC

Search for Wolfram Language functions and optionally auto-execute.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
expressionNo
auto_executeNo
output_targetNocli
max_candidatesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It mentions 'optionally auto-execute' but does not explain what auto-execution entails (e.g., running code, side effects, kernel requirements). The description omits clarity on permissions, rate limits, or destructive potential.

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

Conciseness3/5

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

The description is a single sentence of 10 words, which is concise but too minimal. It front-loads the core purpose, but every word should earn its place; here, the description is under-specified for the tool's complexity.

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

Completeness2/5

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

Despite having an output schema (not shown), the description fails to explain what the search returns, how auto-execution interacts with results, or the meaning of parameters like expression, max_candidates, and output_target. For a tool with 5 parameters and an output schema, much more context is needed.

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 description has 0% schema description coverage, meaning no parameters are explained in the description. With 5 parameters, the description should compensate for the lack of schema documentation, but it does not. Even the key parameter 'auto_execute' is only hinted at without explaining its impact.

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

Purpose4/5

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

The description states it searches for Wolfram Language functions with optional auto-execution, which is a specific verb+resource. However, it does not differentiate from sibling tools like suggest_similar_functions, so it's not a 5.

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

Usage Guidelines2/5

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 suggest_similar_functions or entity_lookup. It does not mention when auto-execution is appropriate or when to avoid it.

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

restart_kernelA

Restart the Mathematica kernel, clearing all state.

This is the nuclear option - clears all variables, definitions, and state. Use when the kernel is in a bad state or you need a fresh start.

Returns: Confirmation of kernel restart

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.7/5.0
Behavior5/5

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

No annotations, so description fully carries burden. Clearly states it clears all variables, definitions, and state, and returns a confirmation. Discloses destructive nature.

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

Conciseness5/5

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

Two concise paragraphs, first sentence clearly states action, second adds context. No wasted words.

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?

Given no parameters and simple action, description covers what, when, and return. Output schema exists, so return value detail is sufficient.

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?

No parameters, input schema is empty with 100% coverage. Baseline 4 as per instructions; description need not add parameter info.

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?

Description uses specific verb 'restart' and resource 'kernel', explicitly stating it clears all state. Distinguishes from siblings like 'clear_variables' by calling it the 'nuclear option'.

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

Usage Guidelines4/5

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

Explicitly says 'Use when the kernel is in a bad state or you need a fresh start.' Provides clear context, though alternatives are not explicitly listed.

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

run_scriptA

Execute a Wolfram Language script file (.wl, .m) and return the result.

This is equivalent to Get[path] - loads and executes the script in the current kernel session. Any definitions or side effects persist.

Args: path: Path to the .wl or .m script file

Returns: The result of the last expression in the script, plus timing info

Example: run_script("~/scripts/setup.wl") -> {result: "Null", timing_ms: 150}

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

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

With no annotations, the description carries full burden. It discloses that side effects persist and that the script runs in the current kernel session. It does not cover error handling or file existence, but the basic behavioral traits are adequately communicated.

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

Conciseness5/5

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

The description is four sentences plus an example, all relevant and well-structured. The core action is stated first, followed by equivalent operation, behavior, and a concrete example. No unnecessary words.

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?

Given the tool's simplicity (one parameter) and the presence of an output schema (implied by example), the description covers purpose, behavior, parameter, and return value. It is complete for an agent to use correctly.

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 add meaning. It specifies the parameter as a path to .wl or .m files, which goes beyond the schema's type-only definition. More details like path resolution could be added, but it suffices for a single parameter.

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 clearly states it executes a Wolfram Language script file (.wl, .m) and returns the result. It uses specific verbs like 'Execute' and 'loads and executes', and distinguishes from siblings by focusing on file execution rather than code evaluation or batch commands.

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

Usage Guidelines4/5

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

The description explains that it is equivalent to Get[path] and that definitions persist, implying use for script files where side effects are desired. It does not explicitly contrast with siblings like execute_code, but the context is clear enough for an AI agent to infer appropriate usage.

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

save_notebookC

Save a notebook to disk.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNo
formatNoNotebook
notebookNo
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

No annotations provided, so description is the sole source. It only states the basic action, omitting details on default paths, overwrite behavior, error handling, or impact on the notebook state.

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

Conciseness2/5

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

Extremely concise but under-specified; lacks detail needed for correct usage.

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

Completeness2/5

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

With 4 parameters including an enum and sibling tools, the description is insufficiently complete; output schema exists but is not utilized or referenced.

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?

Schema description coverage is 0%, and the description does not mention any parameters, failing to add meaning beyond the schema.

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

Purpose4/5

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

Description clearly states the action (save) and resource (notebook), but does not differentiate from sibling tool 'export_notebook' which likely has similar purpose.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like export_notebook, nor any prerequisites or restrictions.

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

screenshot_cellC

Capture a screenshot of a specific cell's content and output.

Useful for seeing plots, graphics, or formatted mathematical output.

Args: cell_id: The cell object ID to screenshot

ParametersJSON Schema
NameRequiredDescriptionDefault
cell_idYes
notebookNo
session_idNo
use_rasterizeNo

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It says 'Capture a screenshot' but does not disclose whether it's read-only, if any side effects occur, or what the return format is. For a screenshot tool, likely read-only, but not stated.

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

Conciseness3/5

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

The description is relatively short and includes an 'Args' section, but it covers only one of four parameters, making it less efficient. It could be more structured to include all parameters or output details.

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

Completeness2/5

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

Given 4 parameters, no output schema, and no annotations, the description is incomplete. It doesn't describe the return value (e.g., image path or data), how the screenshot is delivered, or the purpose of optional parameters like use_rasterize.

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

Parameters2/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 compensate. The 'Args' section explains only the required parameter 'cell_id' ('The cell object ID to screenshot'). Other parameters (notebook, session_id, use_rasterize) have no descriptions in schema or description, leaving them undocumented.

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

Purpose4/5

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

The description clearly states it captures a screenshot of a cell's content and output, using specific verb and resource. It distinguishes from sibling tools like screenshot_notebook (whole notebook) and inspect_graphics (graphics inspection). However, it doesn't explicitly differentiate from rasterize_expression.

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?

The description gives context ('Useful for seeing plots, graphics, or formatted mathematical output') but does not provide when-not to use or alternatives among siblings. Implied usage is adequate but not explicit.

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

screenshot_notebookC

Capture a screenshot of an entire notebook window.

Args: notebook: Notebook ID. If None, uses selected notebook. max_height: Maximum height in pixels (prevents huge images)

Returns the screenshot as an image that can be viewed directly.

ParametersJSON Schema
NameRequiredDescriptionDefault
wait_msNo
notebookNo
max_heightNo
session_idNo
use_rasterizeNo

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries full burden for behavioral disclosure. It mentions max_height prevents huge images, but does not disclose whether the tool modifies the notebook, requires a live kernel, has rate limits, or what the output format is beyond 'image'. The behavioral traits are poorly explained.

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

Conciseness3/5

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

The description is relatively short and front-loaded with the purpose. However, it includes an 'Args:' section that could be more efficiently integrated. It does not cover all parameters, so it is not as concise as it could be given the missing information. Adequate but not exemplary.

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

Completeness2/5

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

Given 5 parameters, no output schema, and no annotations, the description is incomplete. It does not explain the return value in detail, missing parameters, or context about session management (session_id). The tool's behavior is under-specified for an agent to use effectively.

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

Parameters2/5

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

Schema coverage is 0%, so the description must document all 5 parameters. It only explains notebook and max_height, missing session_id, use_rasterize, and wait_ms. The agent has no guidance on these three parameters, which severely limits correct usage.

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 clearly states the tool captures a screenshot of an entire notebook window, which is distinct from the sibling tool screenshot_cell that likely captures a single cell. The verb 'Capture a screenshot' and resource 'entire notebook window' are specific and unambiguous.

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

Usage Guidelines2/5

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

The description does not provide guidance on when to use this tool versus alternatives like screenshot_cell. It also does not explain when to change default parameters or what prerequisites are needed (e.g., notebook must be open). There is no mention of when not to use it.

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

scroll_to_cellC

Scroll the notebook view to make a cell visible.

ParametersJSON Schema
NameRequiredDescriptionDefault
cell_idYes
notebookNo
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations, the description minimally states the main behavior but fails to disclose side effects, limitations (e.g., does not select the cell), or constraints. An agent cannot assess safety or impact.

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 a single, concise sentence that is front-loaded with the key action. However, it could include more detail without adding length, such as parameter usage hints.

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

Completeness2/5

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

Given the tool's simplicity and presence of an output schema, the description is still insufficient. It omits parameter explanations, usage context, and differentiation from siblings, leaving an AI agent without enough information to invoke correctly.

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

Parameters2/5

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

Schema has 0% description coverage, and the description adds no parameter guidance. Parameter names (cell_id, notebook, session_id) are moderately inferrable but the description does not clarify defaults or required context like which notebook is used when omitted.

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

Purpose4/5

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

The description uses a specific verb 'scroll' and resource 'notebook view' with object 'cell', clearly indicating the action. However, it does not explicitly differentiate from sibling tools like 'select_cell' which might overlap in purpose.

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

Usage Guidelines2/5

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 (e.g., select_cell, evaluate_cell). The description lacks context about prerequisites or use cases.

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

search_data_repositoryC

Search the Wolfram Data Repository.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
max_resultsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It only states 'Search the Wolfram Data Repository' without disclosing behavioral traits such as whether it is read-only, what the output format is, or if it requires an internet connection.

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

Conciseness3/5

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

The description is very concise (one sentence), which is good for front-loading, but it omits important contextual information. It could be longer to cover essential details without being verbose.

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

Completeness2/5

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

Given that the tool has an output schema, the description does not need to explain return values. However, it lacks any contextual completeness such as examples, prerequisites, or relationship to sibling tools. The 0% schema coverage further compounds the lack of completeness.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not elaborate on the parameters. While parameter names are somewhat self-explanatory ('query' as search term, 'max_results' as maximum results), the description adds no additional meaning or usage hints beyond the names.

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 clearly states the tool's purpose: 'Search the Wolfram Data Repository.' It uses a specific verb ('Search') and a specific resource ('Wolfram Data Repository'), distinguishing it from sibling tools like 'search_function_repository' and 'wolfram_alpha'.

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

Usage Guidelines2/5

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. There is no mention of prerequisites, when not to use it, or relationships to sibling tools like 'search_function_repository' or 'load_dataset'.

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

search_function_repositoryC

Search the Wolfram Function Repository.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
max_resultsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations, description bears full burden. It only says 'Search', implying a read operation, but omits details on side effects, permissions, rate limits, or pagination behavior.

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?

Extremely concise (one sentence). No unnecessary words, but could benefit from a structured breakdown of parameters or examples. Still, it is well-front-loaded and brief.

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

Completeness2/5

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

Given the existence of an output schema, description need not detail return values, but it lacks context about search behavior (e.g., fuzzy matching, ranking). For a search tool with two parameters, more completeness is expected.

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

Parameters2/5

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

Schema description coverage is 0%. Description adds no meaning beyond parameter names and types from schema. 'query' and 'max_results' are self-explanatory but description should have clarified, e.g., what kind of query or max results count.

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

Purpose4/5

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

Description clearly states verb 'Search' and resource 'Wolfram Function Repository', distinguishing from sibling 'search_data_repository' and 'get_function_repository_info'. It is specific and unambiguous.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like 'get_function_repository_info' or 'load_resource_function'. Missing context on prerequisites or typical use cases.

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

select_cellB

Select a cell in the notebook (moves cursor to it).

ParametersJSON Schema
NameRequiredDescriptionDefault
cell_idYes
notebookNo
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the burden. It discloses the cursor movement behavior, but does not mention side effects (e.g., selection state, read-only nature) or safety. Adequate for a simple action.

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 a single sentence with no wasted words. It is front-loaded with the core purpose. However, it sacrifices parameter clarity for brevity.

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

Completeness2/5

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

Given no annotations, the description is incomplete. It does not state the return value (despite an output schema being present), nor does it explain optional parameters. The tool is simple but still lacks essential context.

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?

Schema description coverage is 0%, and the description provides no explanation for any of the three parameters (cell_id, notebook, session_id). The agent cannot infer their purpose or constraints from the description.

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 clearly states the verb 'select' and resource 'cell in the notebook', and adds 'moves cursor to it' for specificity. It distinguishes from sibling tools like delete_cell, evaluate_cell, and get_cell_content.

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?

The description implies usage for navigating to a cell, but does not explicitly state when to use it vs alternatives or provide exclusions. No guidance on prerequisites or context.

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

set_variableA

Set a variable in the Mathematica kernel session.

Args: name: Variable name (e.g., "x", "myData") value: Wolfram Language expression to assign (e.g., "5", "{1,2,3}", "Plot[Sin[x],{x,0,Pi}]")

Returns: Confirmation with the assigned value

Example: set_variable("x", "Range[10]") -> {success: true, value: "{1,2,3,4,5,6,7,8,9,10}"}

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
valueYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior2/5

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

No annotations provided, so the description carries full burden. It discloses that the tool sets a variable and returns confirmation, but does not warn about overwriting existing variables or other side effects.

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

Conciseness5/5

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

Very concise: two sentences for purpose, then structured Args, Returns, Example. No wasted words, front-loaded.

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?

With an output schema present, the description explains the return format (confirmation with assigned value) and provides an example. Adequate for a simple variable setter.

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?

Input schema has 0% coverage, so description adds meaning with examples for both 'name' and 'value' (e.g., Wolfram Language expressions). This compensates well for the schema gaps.

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 clearly states 'Set a variable in the Mathematica kernel session.' It uses a specific verb (set) and resource (variable), distinguishing it from siblings like get_variable or clear_variables.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as batch_commands or execute_code. It does not mention prerequisites or exclusion criteria.

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

submit_computationC

Submit a long-running computation for background execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
codeYes
nameNo
timeoutNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description bears full responsibility. It discloses the tool is for long-running background execution but fails to describe behavior such as asynchronicity, how to retrieve results, or potential side effects. This is insufficient for a mutation tool.

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 a single, front-loaded sentence that efficiently communicates the core purpose. However, it sacrifices necessary detail, so it stops short of a perfect score.

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

Completeness2/5

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

Despite having an output schema and multiple sibling tools for computation management, the description does not explain how to handle the returned result, nor does it address error handling, prerequisites, or integration with polling. The description is too minimal for the tool's complexity.

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?

Schema description coverage is 0%, and the description adds no information about parameters. The agent must guess the meaning of 'code', 'name', and 'timeout' from their names alone, which is inadequate.

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

Purpose4/5

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

The description clearly states the verb (submit) and resource (computation), and adds context of being long-running and for background execution. This implies a distinction from synchronous execution like execute_code, though siblings are not explicitly named.

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

Usage Guidelines2/5

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

The description provides no explicit guidance on when to use this tool versus alternatives like execute_code or poll_computation. The phrase 'long-running' gives an implicit hint, but no when-not or alternative comparisons.

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

suggest_similar_functionsA

Find Wolfram functions similar to a query using fuzzy matching.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

No annotations are provided, so the description must convey behavioral traits. It mentions 'fuzzy matching' but does not disclose whether the tool is read-only, has rate limits, or any side effects. The trait is minimally informative.

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 a single sentence with no extraneous words. It is concise, though it could be slightly more structured with examples or bullet points. No waste.

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

Completeness3/5

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

Given the simple functionality (one parameter, fuzzy matching), the description is adequate but lacks details about the output schema (which exists) and how results are presented. It does not cover return value format or any additional context.

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

Parameters2/5

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

Schema description coverage is 0%, so the description should add meaning to the 'query' parameter. It only mentions 'query' and 'fuzzy matching' without specifying format, examples, or what kind of input is expected (e.g., function name, partial name).

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 clearly states it finds Wolfram functions similar to a query using fuzzy matching. It specifies both the action (find similar) and the resource (Wolfram functions), and the mention of 'fuzzy matching' distinguishes it from exact search tools like search_function_repository.

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?

The description implies usage for finding similar functions but does not explicitly state when to use it versus alternatives like search_function_repository or resolve_function. No 'when-not' guidance is provided.

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

time_expressionB

Time the evaluation of an expression with memory tracking.

ParametersJSON Schema
NameRequiredDescriptionDefault
expressionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations, the description carries full burden. It states the tool times and tracks memory, but does not disclose side effects (e.g., whether it leaves state unchanged), or what happens to the expression after timing. The behavioral context is minimal.

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 a single, concise sentence that front-loads the action. It is efficient but could be slightly more structured to separate the timing and memory aspects. No unnecessary words.

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

Completeness3/5

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

Given the single required param and presence of an output schema, the description is somewhat complete. However, it lacks details on the output format, what 'memory tracking' entails, and the exact behavior. There is room for improvement.

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

Parameters2/5

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

Schema description coverage is 0%, and the tool description does not add meaning to the 'expression' parameter beyond its name and type. It does not clarify what kind of expressions are accepted (e.g., Mathematica code, strings, etc.).

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 clearly states the tool times the evaluation of an expression with memory tracking. The verb 'time' and resource 'expression' are specific, and it distinguishes itself from sibling tools like 'execute_code' or 'evaluate_cell' by adding timing and memory tracking.

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?

The description implies usage when timing and memory tracking are needed, but does not explicitly tell when to use it versus alternatives like 'evaluate_cell' or 'trace_evaluation'. No when-not-to-use guidance is provided.

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

trace_evaluationC

Trace the step-by-step evaluation of an expression.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_depthNo
expressionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations, the description carries full burden. 'Trace the step-by-step evaluation' implies a read-only operation but does not disclose return format, side effects, or whether it modifies state. Insufficient for safe invocation.

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

Conciseness3/5

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

The description is a single sentence and front-loaded, but it is overly terse. It contains no wasted words, but it fails to include critical details that could be added without sacrificing conciseness.

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

Completeness2/5

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

Given the complexity of tracing evaluation and the availability of an output schema, the description omits what the trace output contains (e.g., steps, times, values). It is not complete enough for effective use.

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?

Schema description coverage is 0%, yet the description adds no information about parameters. The param names 'expression' and 'max_depth' are self-explanatory but the description does not clarify their roles or constraints.

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

Purpose4/5

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

The description 'Trace the step-by-step evaluation of an expression' clearly states the tool's action (trace) and resource (evaluation of an expression). It distinguishes itself from sibling tools like 'evaluate_cell' which returns final results, but does not explicitly differentiate from similar debug tools.

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

Usage Guidelines2/5

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 such as 'evaluate_cell', 'time_expression', or 'get_computation_result'. The description lacks context for selection.

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

verify_derivationC

Verify a sequence of mathematical expressions steps.

ParametersJSON Schema
NameRequiredDescriptionDefault
stepsYes
formatNotext
timeoutNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It does not state whether the tool modifies state, requires a running kernel, returns a Boolean or detailed feedback, or any side effects. The minimal description 'Verify a sequence...' offers no transparency beyond the name.

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

Conciseness3/5

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

The description is a single sentence, which is concise, but it lacks structure such as bullet points or front-loaded key information. It earns its place by stating the purpose, but it could be more informative within the same length.

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

Completeness2/5

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

Given the tool has three parameters, an output schema (not shown), and zero schema description coverage, the description leaves major gaps. It does not explain the return value, input constraints, or any operational context needed for correct usage.

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?

Schema description coverage is 0%, meaning the schema provides no parameter descriptions. The tool description does not explain any of the three parameters: 'steps' (what constitutes a step?), 'format' (what formats are accepted and why?), or 'timeout' (units, significance). It adds no value beyond the raw schema.

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

Purpose4/5

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

The description specifies the verb 'verify' and the resource 'a sequence of mathematical expression steps', which clearly indicates the tool's core function. However, it does not distinguish this tool from similar siblings like 'check_syntax' or 'mathematica_simplify', which also involve verification or simplification of mathematical expressions.

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

Usage Guidelines2/5

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 'check_syntax' or 'mathematica_solve'. It lacks any context about prerequisites, typical use cases, or scenarios where this tool is preferred.

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

wolfram_alphaA

Query Wolfram Alpha with natural language.

This gives Mathematica superpowers - ask questions in plain English and get computed answers, data, and more.

Args: query: Natural language question (e.g., "population of France", "integrate x^2 from 0 to 1", "weather in Tokyo") return_type: - "result": Simple text result (default) - "data": Structured data when available - "full": All available pods/information

Returns: Wolfram Alpha response in requested format

Example: wolfram_alpha("population of Tokyo") -> "13.96 million people (2021)" wolfram_alpha("derivative of sin(x^2)", "data") -> {result: "2 x cos(x^2)"}

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
return_typeNoresult

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It describes the tool as giving computed answers and data, and outlines return types. However, it omits potential limitations like API rate limits, authentication requirements, or behavior for ambiguous queries. The description is adequate but lacks some transparency for a reliable agent invocation.

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 well-structured with a clear purpose statement, args, returns, and examples. It is front-loaded with the key action and adds value without verbosity. It could be slightly more concise, but it effectively communicates everything needed in a compact format.

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?

Given the tool has only 2 parameters and the context indicates an output schema exists, the description is sufficiently complete. It covers parameter semantics, return types, and provides examples. The presence of an output schema reduces the need to detail return values. The description meets the needs for correct invocation and understanding.

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

Parameters5/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 compensate entirely. It provides excellent parameter details: 'query' is explained as 'Natural language question' with multiple domain examples, and 'return_type' is described with each enum value ('result', 'data', 'full') and their purposes. This far exceeds the schema's minimal title and type information.

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 clearly states 'Query Wolfram Alpha with natural language,' specifying the verb and resource. It distinguishes from sibling tools like 'interpret_natural_language' and various Mathematica functions by calling it 'Mathematica superpowers' and emphasizing plain English queries, which is unique among the many computation tools listed.

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?

The description provides clear use context: ask questions in plain English and get computed answers, data, and more. Examples illustrate typical use cases. However, it does not explicitly state when not to use this tool or mention alternatives, such as more specific Mathematica functions for symbolic computation or data lookup tools like 'entity_lookup' or 'interpret_natural_language'.

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

write_cellA

[ADVANCED] Write a cell without evaluating it.

Prefer execute_code(style="notebook") for code execution. Use write_cell only for deliberate manual notebook authoring, such as text, section headers, or carefully controlled cell-by-cell construction.

ParametersJSON Schema
NameRequiredDescriptionDefault
syncNonone
styleNoInput
contentYes
notebookNo
positionNoAfter
sync_waitNo
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

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

No annotations provided; description states the tool writes without evaluating, which is a key behavioral trait, but lacks details on side effects, overwriting behavior, or other implications.

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

Conciseness5/5

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

Two concise sentences plus a brief example list, front-loaded with the core behavior and usage advice—every sentence is informative.

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

Completeness2/5

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

With 7 parameters, no schema documentation, and no annotations, the description fails to explain important aspects like content formatting, style options, position semantics, or sync behavior, making it insufficient for a complex tool.

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?

0% schema description coverage; description provides no details about parameters like content, style, position, sync, leaving the agent without guidance beyond the schema.

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?

Clearly states 'Write a cell without evaluating it' and provides specific use cases (text, section headers, careful cell-by-cell construction), distinguishing it from sibling `execute_code`.

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?

Explicitly advises to prefer `execute_code(style="notebook")` for code execution and reserves `write_cell` for deliberate manual authoring, offering clear when-to-use and 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.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 82 tool updatesv0.9.4
    • First observedbatch_commands
    • First observedcache_expression
    • First observedcheck_syntax
    • First observedclear_computation_journal
    • First observedclear_expression_cache
    • First observedclear_variables
    • First observedclose_notebook
    • First observedcompare_plots
    • First observedconvert_notebook
    • First observedconvert_units
    • First observedcreate_animation
    • First observedcreate_notebook
    • First observeddelete_cell
    • First observedentity_lookup
    • First observedevaluate_cell
    • First observedevaluate_selection
    • First observedexecute_code
    • First observedexport_data
    • First observedexport_graphics
    • First observedexport_notebook
    • First observedget_cached
    • First observedget_cell_content
    • First observedget_cells
    • First observedget_computation_journal
    • First observedget_computation_result
    • First observedget_constant
    • First observedget_dataset_info
    • First observedget_expression_info
    • First observedget_feature_status
    • First observedget_function_repository_info
    • First observedget_kernel_state
    • First observedget_mathematica_status
    • First observedget_messages
    • First observedget_notebook_cell
    • First observedget_notebook_info
    • First observedget_notebook_outline
    • First observedget_notebooks
    • First observedget_session_brief
    • First observedget_symbol_info
    • First observedget_variable
    • First observedimport_data
    • First observedinspect_graphics
    • First observedinterpret_natural_language
    • First observedlist_cache
    • First observedlist_loaded_packages
    • First observedlist_supported_formats
    • First observedlist_variables
    • First observedload_dataset
    • First observedload_package
    • First observedload_resource_function
    • First observedmathematica_differentiate
    • First observedmathematica_expand
    • First observedmathematica_factor
    • First observedmathematica_integrate
    • First observedmathematica_limit
    • First observedmathematica_series
    • First observedmathematica_simplify
    • First observedmathematica_solve
    • First observedopen_notebook_file
    • First observedparse_notebook_python
    • First observedpoll_computation
    • First observedrasterize_expression
    • First observedread_notebook
    • First observedread_notebook_content
    • First observedresolve_function
    • First observedrestart_kernel
    • First observedrun_script
    • First observedsave_notebook
    • First observedscreenshot_cell
    • First observedscreenshot_notebook
    • First observedscroll_to_cell
    • First observedsearch_data_repository
    • First observedsearch_function_repository
    • First observedselect_cell
    • First observedset_variable
    • First observedsubmit_computation
    • First observedsuggest_similar_functions
    • First observedtime_expression
    • First observedtrace_evaluation
    • First observedverify_derivation
    • First observedwolfram_alpha
    • First observedwrite_cell

TDQS

C2.9/5.0
Disambiguation4/5

Most tools have clearly distinct purposes guided by detailed descriptions and usage notes (e.g., PRIMARY vs LEGACY vs ADVANCED). Some overlap exists between execute_code, evaluate_cell, and write_cell, but the descriptions clarify when to use each.

Naming Consistency3/5

Naming is moderately consistent with a mix of snake_case (e.g., batch_commands) and camelCase (e.g., interpret_natural_language). Some tools use verb_noun pattern, others do not, leading to a readable but not fully uniform style.

Tool Count3/5

With 82 tools, the server is heavy but the Mathematica domain is broad, covering computation, notebooks, symbolic math, and external knowledge. The count is borderline; some tools are legacy or narrow, but they serve specific needs.

Completeness4/5

The tool surface covers core CRUD workflows (notebooks, variables, packages, caching) and extensive mathematical operations, unit conversion, entity lookup, and repository search. Minor gaps exist (e.g., no explicit matrix operations) but are covered by generic code execution.

Maintenance

ActivityStale
ResponsivenessSlow

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

Related MCP Servers

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/AbhiRawat4841/mathematica-mcp'

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