Skip to main content
Glama
sus-tech-gmbh

matrix42-mcp

Matrix42 data query

data_query
Read-only

Read records from your Matrix42 instance with validated ASQL queries, saved views, and object lookups. Retrieve data safely and accurately without modifying anything.

Instructions

Read records from the connected Matrix42 instance (read-only). action='asql_guide' explains the ASQL expression language used by 'where' and 'columns' — read it before writing a filter. action='validate_asql' checks an expression against a class and reports the exact error; validating is cheaper than a failed query. action='query' returns rows of one data definition, with typed column metadata, an ASQL 'where' filter, 'columns' projection, 'sort', and paging. action='get_fragment' returns one complete fragment by id; action='get_object' returns a whole object by configuration-item name and object id. action='list_views' lists the instance's saved data queries — curated, named views that already carry a predefined filter — and action='run_view' runs one; prefer a matching view over hand-written ASQL. action='list_journal' returns an object's comment timeline and action='list_attachments' its files. NEVER guess attribute names: read them with schema_discovery(describe_data_definition) before writing 'columns' or 'where', and use get_pickup_values for the valid values of any pickup you filter on.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNo1-based page number (default 1).
sortNoSort expression, e.g. 'CreatedDate DESC'. Pass one whenever you page — without it, page boundaries are not stable.
classNoInternal name of the data definition to read, e.g. 'SPSActivityClassBase'. Required by query, get_fragment and validate_asql.
whereNoASQL filter expression, e.g. "Subject LIKE '%printer%' AND T(SPSCommonClassBase).State.Value = 710".
actionYesWhich data operation to perform.
searchNoFilter saved views by name, description or class (list_views), or free-text search within a view (run_view).
verifyNoFor action='deep_link': resolve the object's real configuration item first, so a dead link is reported rather than handed over. Defaults to true; set false only to build a link for an id this instance cannot resolve.
ci_nameNoConfiguration item internal name, e.g. 'SPSActivityTypeIncident'. Required for action='get_object'.
columnsNoComma-separated ASQL column expressions, e.g. 'ID,Subject,[Expression-ObjectID]'. Use only attribute names reported by schema_discovery(describe_data_definition) — guessed names fail. Aliases are supported ('expr AS Name'). ID is added for you; do NOT request DisplayString (it is returned automatically and cannot be selected explicitly). Omit entirely for Matrix42's default columns.
view_idNoId of a saved data query. Required for action='run_view'.
embeddedNoHide the surrounding navigation, for embedding the page elsewhere.
action_idNoAction or wizard to run, for view_type='action'.
dialog_idNoOpen a specific dialog instead of the default one.
object_idNoObject id — the value of [Expression-ObjectID] on a row. Required for get_object, list_journal and list_attachments.
page_sizeNoRows per page (default 25).
view_typeNoFor action='deep_link': how to open the object. 'preview' (default) is read-only, 'edit' opens the form, 'new' a creation form, 'action' a wizard. Only 'new' works without an object_id.
expressionNoThe ASQL expression to check. Required for action='validate_asql'.
applicationNoUUX application hosting the creation form, e.g. 'ServiceDesk'. Used by link_kind='create'.
fragment_idNoFragment id. Required for action='get_fragment'.
link_view_idNoShow only one page of the dialog, for action='deep_link'.
preset_paramsNoValues to pre-fill a creation form, keyed by data definition then attribute, e.g. {"SPSActivityClassBase":{"Initiator":"<user fragment id>"}}.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.5

TDQS

A4.7/5.0
Behavior5/5

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

Adds rich behavioral context well beyond the readOnlyHint/openWorldHint annotations: ID is auto-added to queries, DisplayString is returned automatically and 'cannot be selected explicitly', 'without [sort], page boundaries are not stable', validation is cheaper than a failed query, and guessed attribute names fail. deep_link's verify parameter behavior is disclosed in the schema, and the description's read-only claim is consistent with readOnlyHint=true. No contradiction.

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?

Long (~400 words) but proportionate to a 10-action, 21-parameter tool; the core read-only purpose is front-loaded and the action enumeration is compact. Every clause earns its place, though it could be tightened into a structured list rather than a dense paragraph.

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?

Very complete for a tool this complex: covers 9 of 10 actions with prerequisites, failure modes ('guessed names fail'), and best-practice warnings, while the query action's return shape ('rows... with typed column metadata') is at least named despite no output schema. The sole gap is action='deep_link', absent from the description; its behavior is partially recovered by the schema's parameter descriptions (verify, view_type, embedded), so the omission is not disabling.

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 100% with already-detailed parameter descriptions (examples for where, enum meanings for view_type, verify's default and opt-out case), so the baseline is 3. The description adds value above that by giving each value of the central 'action' parameter a purpose clause and by stating cross-parameter rules — pass sort whenever you page; never request columns not reported by schema_discovery — that the schema alone does not convey.

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?

Opens with a specific verb and resource — 'Read records from the connected Matrix42 instance (read-only)' — and enumerates its nine named sub-actions (asql_guide, validate_asql, query, get_fragment, get_object, list_views, run_view, list_journal, list_attachments), making the tool's scope unmistakable. The read-only data-access framing implicitly separates it from schema discovery and service operations, so an agent can tell what this tool is for at a glance.

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?

Gives explicit when-to-use guidance with named alternatives: read asql_guide 'before writing a filter', validating 'is cheaper than a failed query', and 'prefer a matching view over hand-written ASQL' for run_view. It also names a sibling tool as a prerequisite — 'NEVER guess attribute names: read them with schema_discovery(describe_data_definition)' and use get_pickup_values for pickup filtering — which properly routes the agent across the toolset.

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