Skip to main content
Glama

List capabilities

list_capabilities
Read-only

Return the cached runtime capability matrix of the Inkscape MCP server, including tool count, tool names with purpose, and a curated goal-to-tool map. Provides fast read-only access without reprobing.

Instructions

Return the cached runtime capability matrix (probed once, then reused).

When to use: the cheap default for "what can this host/server do". To FORCE a re-probe use diagnose_runtime; to map a single goal to a tool use how_do_i.

Key params: none.

Return shape: Capabilities — same shape as diagnose_runtime, served from cache. Includes an intents section: the curated natural-language goal → tool(s) map (the same map how_do_i matches against) so an agent can browse "which tool does X" without one call per goal. Also carries the authoritative MCP tool surface: tool_count (the one true count of registered @mcp.tools) and tools (name + one-line purpose + risk class), sourced from the live registry — so agents read one number instead of deriving it.

Example: list_capabilities()

Risk class: low (read-only).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
notesNoHuman-readable degradation messages (e.g. 'inkscape not found').
toolsNoThe authoritative MCP tool surface: each entry is {name, purpose, risk}, sourced from the live FastMCP registry. Counts only `@mcp.tool`s (not resources or prompts). Populated by the tools/system layer before serving; empty on a raw probe.
actionsNoAction ids from `inkscape --action-list` (enumeration only; not executable).
intentsNoCurated natural-language goal → tool(s) map: each entry is {goal_pattern, tools, how_to, group}. The same data the read-only `how_do_i` tool matches against; surfaced here so an agent can browse the whole map. Guidance only — executes nothing, no raw-action hatch (ADR-003). Host-independent (not probed).
probed_atYesUTC ISO-8601 timestamp of when this probe ran.
font_countNoFont faces reported by `fc-list` (0 ⇒ fontconfig broken/absent).
inkex_pathNoPath to bundled `inkex/__init__.py`, or null if not found.
tool_countNoAuthoritative number of registered `@mcp.tool`s. Equals `len(tools)` and the live `mcp.list_tools()` count — one unambiguous number so agents stop deriving it. Populated from the live FastMCP registry, not probed from Inkscape.
export_typesNoExport-type tokens parsed from the `--export-type=` list in inkscape --help.
inkex_versionNo`__version__` read from inkex sources (NOT imported), or null if unknown.
meets_minimumNoWhether the detected version is >= MINIMUM_VERSION (1, 3, 0).
user_data_dirNoInkscape user data directory (`--user-data-directory`).
python_versionYesInterpreter version running this server.
inkscape_binaryNoAbsolute path to the Inkscape binary, or null if absent.
system_data_dirNoInkscape system data directory (`--system-data-directory`).
dbus_session_busNoWhether DBUS_SESSION_BUS_ADDRESS is set (session bus present).
has_path_actionsNoWhether any `path-*` action is present.
inkscape_versionNoRaw version string reported by `inkscape --version`.
has_export_actionsNoWhether any `export-*` action is present.
has_object_actionsNoWhether any `object-*` action is present.
has_select_actionsNoWhether any `select*` action is present.
inkscape_availableYesWhether an Inkscape binary was found and ran.
shell_mode_availableNoWhether `inkscape --shell` (the headless shell engine/ADR-007) can run here. True when an Inkscape binary is present (shell mode ships on all supported 1.x). Whether the warm engine is USED is the separate INKSCAPE_MCP_ENGINE_MODE gate.
dbus_inkscape_presentNoWhether an `org.inkscape.Inkscape*` name is on the session bus right now.
inkscape_version_tupleNoParsed (major, minor, patch) version, or null if unparsable.
live_extension_socket_availableNoWhether the live helper extension is installed under a data dir (unshipped).
Behavior5/5

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

Discloses that the result is cached and probed once, which is beyond the annotations (readOnlyHint, destructiveHint). It explains return shape includes intents and tools sections, and states risk class as low. No contradiction with annotations; adds valuable context about caching.

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 highly concise with front-loaded purpose, then sections for usage, parameters, return shape, example, and risk class. Every sentence provides essential information without redundancy. Structure is clear and scannable.

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 an output schema, the description covers all necessary aspects: what it returns (including details on intents and tools sections), an example call, risk class, and usage guidance. It is complete for the tool's low complexity.

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?

No parameters exist, and schema coverage is 100%. The description explicitly says 'Key params: none' and explains why (cached call with no inputs). This adds meaning beyond the schema by confirming the parameterless nature.

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 returns the cached runtime capability matrix, and distinguishes it from siblings by specifying when to use diagnose_runtime and how_do_i. The verb 'Return' with the specific resource 'cached runtime capability matrix' makes 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 provides when-to-use ('cheap default for what can this host/server do'), when-not-to-use ('To FORCE a re-probe use diagnose_runtime; to map a single goal use how_do_i'), and notes there are no key parameters. This gives clear guidance for tool selection.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jjjsood/inkscape-mcp-server'

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