MCP Capabilities
Server default
Tools 72
get_my_account
Description: Get the account of the authenticated user, in "data": username, display name, phone numbers, the global roles they have ("allowedRoles") and the groups they are a member of ("groups").
Handler: App\Mcp\AccountTools::myAccount()
Parameters
| Name | Type | Required | Default | Description |
|---|
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> object(stdClass)#996 (0) { } } |
get_my_notification_settings
Description: Get the notification settings of the authenticated user, in "data": the default setting ("defaultNotificationConfig") and the settings per project ("notificationConfigs"), each with the channel (e.g. email) to notify on, how often ("digest") and about what ("level").
Handler: App\Mcp\AccountTools::myNotificationSettings()
Parameters
| Name | Type | Required | Default | Description |
|---|
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> object(stdClass)#997 (0) { } } |
list_my_oauth_sessions
Description: List the OAuth sessions, such as MCP clients, the authenticated user has granted access to their account, in "data": one entry per still valid access token, with its name, when it was created, when it expires and when it was last used.
Handler: App\Mcp\AccountTools::myOAuthSessions()
Parameters
| Name | Type | Required | Default | Description |
|---|
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> object(stdClass)#998 (0) { } } |
list_organisations
Description: List all organisations, in "data", each with its email domains. Only for account managers.
Handler: App\Mcp\AccountTools::organisations()
Parameters
| Name | Type | Required | Default | Description |
|---|
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> object(stdClass)#999 (0) { } } |
search_organisations
Description: Find organisations by id, or whose full or abbreviated name contains the search text. The result holds at most 20 organisations in "data". Only for account managers.
Handler: App\Mcp\AccountTools::searchOrganisations()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
query |
string | Yes | - | Text to search for. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["query"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(19) "Text to search for." } } ["required"]=> array(1) { [0]=> string(5) "query" } } |
get_codelist_version
Description: Get one codelist version with all its entries, in "data": its specification ("versionOf"), governing organisation ("govOrg"), the codelists it is a union of ("unionOf") or that include it ("unionedBy"), the elements that use it, and in "allEntries" every entry (also those of the codelists it is a union of) with its code, description, status and the number of open issues and discussion posts.
Handler: App\Mcp\CodelistTools::version()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
id |
string | Yes | - | The id of the codelist version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(31) "The id of the codelist version." } } ["required"]=> array(1) { [0]=> string(2) "id" } } |
list_codelist_entries
Description: List the entries of a codelist version (including those of the codelists it is a union of), 25 at a time. The result holds the entries in "data", plus "page", "pageSize" and "numResults" for paging.
Handler: App\Mcp\CodelistTools::entries()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the codelist version. |
query |
string | No |
|
Search text: an entry id, or (part of) a code or description. |
orderBy |
null|string | No |
|
Sort by this field. Omit for no particular order. |
orderDir |
string | No |
ASC
|
- |
page |
integer | No |
0
|
Page number, starting at 0. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(5) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(31) "The id of the codelist version." } ["query"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(0) "" ["description"]=> string(61) "Search text: an entry id, or (part of) a code or description." } ["orderBy"]=> array(4) { ["type"]=> array(2) { [0]=> string(4) "null" [1]=> string(6) "string" } ["default"]=> NULL ["description"]=> string(49) "Sort by this field. Omit for no particular order." ["enum"]=> array(6) { [0]=> string(4) "code" [1]=> string(11) "description" [2]=> string(7) "addedAt" [3]=> string(9) "removedAt" [4]=> string(10) "reportedBy" [5]=> string(6) "status" } } ["orderDir"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(3) "ASC" ["enum"]=> array(2) { [0]=> string(3) "ASC" [1]=> string(4) "DESC" } } ["page"]=> array(4) { ["type"]=> string(7) "integer" ["default"]=> int(0) ["description"]=> string(27) "Page number, starting at 0." ["minimum"]=> int(0) } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_codelist_entry
Description: Get one codelist entry, in "data": code, description, status, when it was added or removed, who reported it, its codelist version and project, and on its "artefact" the discussion posts and issues about it.
Handler: App\Mcp\CodelistTools::entry()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the codelist version the entry belongs to. |
id |
string | Yes | - | The id of the entry. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(52) "The id of the codelist version the entry belongs to." } ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(20) "The id of the entry." } } ["required"]=> array(2) { [0]=> string(9) "versionId" [1]=> string(2) "id" } } |
get_codelist_skos
Description: Export a codelist version as a SKOS concept scheme, with a concept per entry. The result is the RDF as text.
Handler: App\Mcp\CodelistTools::skos()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the codelist version. |
format |
string | No |
turtle
|
The RDF serialization. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(31) "The id of the codelist version." } ["format"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(6) "turtle" ["description"]=> string(22) "The RDF serialization." ["enum"]=> array(4) { [0]=> string(6) "turtle" [1]=> string(8) "ntriples" [2]=> string(6) "rdfxml" [3]=> string(6) "jsonld" } } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
list_groups
Description: List the groups the user is an active member of (all groups for administrators), active groups first, in "data". Each group has its meetings and number of members. Groups are the working groups that govern projects.
Handler: App\Mcp\GroupTools::groups()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
query |
string | No |
|
Only groups whose name contains this text. |
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["query"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(0) "" ["description"]=> string(42) "Only groups whose name contains this text." } } } |
search_groups
Description: Find groups by id or (part of) their name, including groups the user is not a member of. The result holds at most 20 groups in "data". Only for maintainers.
Handler: App\Mcp\GroupTools::searchGroups()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
query |
string | Yes | - | Text to search for. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["query"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(19) "Text to search for." } } ["required"]=> array(1) { [0]=> string(5) "query" } } |
get_group
Description: Get one group, in "data": its projects, its members with their organisation and roles ("groupMemberships"), and its meetings with their action points, agendas, minutes and the issues discussed.
Handler: App\Mcp\GroupTools::group()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
id |
string | Yes | - | The id of the group. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(20) "The id of the group." } } ["required"]=> array(1) { [0]=> string(2) "id" } } |
list_group_members
Description: List the members of a group, in "data", each with their organisation. Members are representatives: not a person in itself, but the role of a person acting on behalf of one organisation, so the same person can be a member once per organisation they act for.
Handler: App\Mcp\GroupTools::members()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
groupId |
string | Yes | - | The id of the group. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["groupId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(20) "The id of the group." } } ["required"]=> array(1) { [0]=> string(7) "groupId" } } |
get_meeting
Description: Get one meeting of a group, in "data": date, location, the members and whether they were present ("meetingMembers"), action points with their owners, agendas, minutes and the issues discussed. Only for maintainers of the group.
Handler: App\Mcp\GroupTools::meeting()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
id |
string | Yes | - | The id of the meeting, as found by get_group. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(45) "The id of the meeting, as found by get_group." } } ["required"]=> array(1) { [0]=> string(2) "id" } } |
list_issues
Description: List issues (change requests and questions about specifications), one page at a time. The result holds the issues in "data", plus "page", "pageSize" and "numResults" for paging.
Handler: App\Mcp\IssueTools::index()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
query |
string | No |
|
Search text. "#<number>" finds the issue with that number; any other text matches (part of) the title, assignee, submitter or a label. |
orderBy |
string | No |
createdAt
|
Sort by creation date, date of the latest comment, or date of the latest comment falling back to the creation date. |
orderDir |
string | No |
DESC
|
- |
filter |
string | No |
open
|
Which issues to list: only open ones, only the ones the user submitted (open or closed), or all. |
page |
integer | No |
0
|
Page number, starting at 0. |
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> array(5) { ["query"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(0) "" ["description"]=> string(134) "Search text. "#<number>" finds the issue with that number; any other text matches (part of) the title, assignee, submitter or a label." } ["orderBy"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(9) "createdAt" ["description"]=> string(115) "Sort by creation date, date of the latest comment, or date of the latest comment falling back to the creation date." ["enum"]=> array(3) { [0]=> string(9) "createdAt" [1]=> string(11) "lastComment" [2]=> string(12) "lastActivity" } } ["orderDir"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(4) "DESC" ["enum"]=> array(2) { [0]=> string(3) "ASC" [1]=> string(4) "DESC" } } ["filter"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(4) "open" ["description"]=> string(96) "Which issues to list: only open ones, only the ones the user submitted (open or closed), or all." ["enum"]=> array(3) { [0]=> string(4) "open" [1]=> string(2) "my" [2]=> string(3) "all" } } ["page"]=> array(4) { ["type"]=> string(7) "integer" ["default"]=> int(0) ["description"]=> string(27) "Page number, starting at 0." ["minimum"]=> int(0) } } } |
get_issue
Description: Get one issue with everything about it, in "data": title, the requested change ("request"), its "solution", whether it is open, its project, submitter, assignee, labels, attached files, the comments in "commentPosts", and what it is about ("about": the specifications, versions, elements, concepts or codelist entries it concerns).
Handler: App\Mcp\IssueTools::get()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
id |
string | Yes | - | The id of the issue (not its "#<number>"), as found by list_issues. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(67) "The id of the issue (not its "#<number>"), as found by list_issues." } } ["required"]=> array(1) { [0]=> string(2) "id" } } |
get_mapping_version
Description: Get one mapping version with all its mappings, in "data": the source and target specification versions it maps between, and in "mappings" each mapping with its status, "predicate" (the kind of match, e.g. skos:exactMatch), justification, the number of open issues and discussion posts, and its "source" and "target" artefact (an element, requirement, concept or codelist entry).
Handler: App\Mcp\MappingTools::version()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
id |
string | Yes | - | The id of the mapping version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(30) "The id of the mapping version." } } ["required"]=> array(1) { [0]=> string(2) "id" } } |
get_mapping
Description: Get one mapping, in "data": status, "predicate", its "source" and "target" artefact with the specification version they belong to, the mapping version it is part of ("partOf"), annotations, suggested alternative targets ("suggestions"), and on its "artefact" the discussion posts and issues about it.
Handler: App\Mcp\MappingTools::mapping()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
id |
string | Yes | - | The id of the mapping, as found by get_mapping_version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(55) "The id of the mapping, as found by get_mapping_version." } } ["required"]=> array(1) { [0]=> string(2) "id" } } |
get_mapping_version_sssom
Description: Export a mapping version in SSSOM (Simple Standard for Sharing Ontological Mappings) format. The result is the RDF as text.
Handler: App\Mcp\MappingTools::sssom()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the mapping version. |
format |
string | No |
turtle
|
The RDF serialization. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(30) "The id of the mapping version." } ["format"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(6) "turtle" ["description"]=> string(22) "The RDF serialization." ["enum"]=> array(4) { [0]=> string(6) "turtle" [1]=> string(8) "ntriples" [2]=> string(6) "rdfxml" [3]=> string(6) "jsonld" } } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_message_model_tree
Description: Get all elements of a message model version as a flat list in "elements". Rebuild the tree with "subOfId", the id of the parent element; order siblings by "seqNr". Each element has its name, label, multiplicity ("multMin", "multMax"), class, property and datatype URIs, and the number of open issues and discussion posts about it. Also returns the project (with its labels), the specification with its versions, the version and its root element ("message"). Use get_element for all details of one element.
Handler: App\Mcp\MessageModelTools::tree()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the message model version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the message model version." } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_message_model_diff_tree
Description: Get all elements of a message model version as a flat list in "elements", with just the fields that matter when comparing two versions: name, label, definition, class, property and datatype URIs, multiplicity, "seqNr", the parent element ("subOfId"), notes (in "notesConcat", separated by "||") and the human ids of its business rules (in "businessRulesConcat", separated by "||"). Call it for two versions to compare them.
Handler: App\Mcp\MessageModelTools::diffTree()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the message model version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the message model version." } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_message_model_dependencies
Description: Get what a message model version builds on: the ontology versions it uses definitions from (in "messageModelVersion.usesDefinitionsFromOntologies"), its root element ("message") and the codelist versions its elements use ("codelistVersions").
Handler: App\Mcp\MessageModelTools::dependencies()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the message model version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the message model version." } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
list_syntax_bindings
Description: List the syntax bindings of a message model version, in "data". A syntax binding is a concrete serialization of the message model (for example XML or JSON), with its own schema, schematrons and examples, which the validator can check messages against.
Handler: App\Mcp\MessageModelTools::syntaxBindings()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the message model version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the message model version." } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_syntax_binding
Description: Get all details of one syntax binding, in "data": its syntax type, validation settings, root schema, schemas, schematrons, examples, user supplied JSON schemas and SHACL shapes, and the message model version it binds ("bindingFor"). Only for maintainers of the specification.
Handler: App\Mcp\MessageModelTools::syntaxBinding()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
id |
string | Yes | - | The id of the syntax binding, as found by list_syntax_bindings. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(63) "The id of the syntax binding, as found by list_syntax_bindings." } } ["required"]=> array(1) { [0]=> string(2) "id" } } |
get_element
Description: Get all details of one element of a message model, in "data": name, label, definition, multiplicity, URIs, its path ("pathString"), restrictions, notes, example values, allowed values, codelists, business rules, sub elements ("subs"), parent ("subOf"), the message model version it is part of ("partOf.rootNodeOf"), its predecessor and successors in other versions, and on its "artefact": issues, metadata and the mappings from and to it.
Handler: App\Mcp\MessageModelTools::element()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
id |
string | Yes | - | The id of the element. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(22) "The id of the element." } } ["required"]=> array(1) { [0]=> string(2) "id" } } |
search_elements
Description: Find elements in one message model version whose name or label contains the search text. The result holds at most 40 elements in "data", each with its path ("pathString").
Handler: App\Mcp\MessageModelTools::searchElements()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
rootElementId |
string | Yes | - | The id of the root element of the message model version: "message" in get_message_model_tree, or "rootNode" of a version in get_specification_metadata. |
query |
string | Yes | - | Text to search for. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["rootElementId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(151) "The id of the root element of the message model version: "message" in get_message_model_tree, or "rootNode" of a version in get_specification_metadata." } ["query"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(19) "Text to search for." } } ["required"]=> array(2) { [0]=> string(13) "rootElementId" [1]=> string(5) "query" } } |
get_element_ontology_class
Description: Look up the class of an element in the ontologies (or JSON schemas) that its message model version uses definitions from. Returns the class "uri" and "label", its properties ("properties-out", each with the property, its target class or datatype and multiplicity), the properties that point to it ("properties-in") and its super classes ("subClassOf"). This shows which sub elements the element could have.
Handler: App\Mcp\MessageModelTools::elementClass()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
elementId |
string | Yes | - | The id of the element. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["elementId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(22) "The id of the element." } } ["required"]=> array(1) { [0]=> string(9) "elementId" } } |
get_ontology_class_for_element
Description: Look up any class in the ontologies that the message model version of an element uses definitions from, in the same shape as get_element_ontology_class. An unknown class gives empty property lists.
Handler: App\Mcp\MessageModelTools::classForElement()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
elementId |
string | Yes | - | The id of an element in the message model version. |
classUri |
string | Yes | - | The URI of the class. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["elementId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(50) "The id of an element in the message model version." } ["classUri"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(21) "The URI of the class." } } ["required"]=> array(2) { [0]=> string(9) "elementId" [1]=> string(8) "classUri" } } |
get_generic_ontology_properties
Description: Get the properties without a domain in the ontologies that a message model version uses definitions from: properties that could be added as sub element to any element. Returns them as the class "owl:Thing", in the same shape as get_element_ontology_class.
Handler: App\Mcp\MessageModelTools::genericProperties()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the message model version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the message model version." } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_message_model_json_schema
Description: Generate a JSON schema from a message model version. The result is the JSON schema itself, as JSON or as YAML text.
Handler: App\Mcp\MessageModelTools::jsonSchema()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the message model version. |
style |
string | No |
doll
|
"doll" (Russian doll) nests the definitions of sub elements; "blind" (Venetian blind) defines each type once and refers to it. |
format |
string | No |
json
|
- |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(3) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the message model version." } ["style"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(4) "doll" ["description"]=> string(126) ""doll" (Russian doll) nests the definitions of sub elements; "blind" (Venetian blind) defines each type once and refers to it." ["enum"]=> array(2) { [0]=> string(4) "doll" [1]=> string(5) "blind" } } ["format"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(4) "json" ["enum"]=> array(2) { [0]=> string(4) "json" [1]=> string(4) "yaml" } } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_message_model_json_example
Description: Generate an example JSON message from a message model version. The result is the example message itself.
Handler: App\Mcp\MessageModelTools::jsonExample()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the message model version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the message model version." } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_message_model_openapi
Description: Generate an OpenAPI specification with operations for a message model version, with its JSON schema under "components.schemas". The result is the OpenAPI specification itself, as JSON or as YAML text.
Handler: App\Mcp\MessageModelTools::openApi()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the message model version. |
style |
string | No |
doll
|
"doll" (Russian doll) nests the definitions of sub elements; "blind" (Venetian blind) defines each type once and refers to it. |
format |
string | No |
json
|
- |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(3) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the message model version." } ["style"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(4) "doll" ["description"]=> string(126) ""doll" (Russian doll) nests the definitions of sub elements; "blind" (Venetian blind) defines each type once and refers to it." ["enum"]=> array(2) { [0]=> string(4) "doll" [1]=> string(5) "blind" } } ["format"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(4) "json" ["enum"]=> array(2) { [0]=> string(4) "json" [1]=> string(4) "yaml" } } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_message_model_xml_schema
Description: Generate an XML schema (XSD) from a message model version. The result is the XSD as text.
Handler: App\Mcp\MessageModelTools::xmlSchema()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the message model version. |
style |
string | No |
doll
|
"doll" (Russian doll) nests the definitions of sub elements; "blind" (Venetian blind) defines each type once and refers to it. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the message model version." } ["style"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(4) "doll" ["description"]=> string(126) ""doll" (Russian doll) nests the definitions of sub elements; "blind" (Venetian blind) defines each type once and refers to it." ["enum"]=> array(2) { [0]=> string(4) "doll" [1]=> string(5) "blind" } } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_message_model_xml_example
Description: Generate an example XML message from a message model version. The result is the example message as text.
Handler: App\Mcp\MessageModelTools::xmlExample()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the message model version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the message model version." } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_message_model_shacl
Description: Generate SHACL shapes from a message model version, to validate RDF data against. The result is the RDF as text.
Handler: App\Mcp\MessageModelTools::shacl()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the message model version. |
format |
string | No |
turtle
|
The RDF serialization. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the message model version." } ["format"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(6) "turtle" ["description"]=> string(22) "The RDF serialization." ["enum"]=> array(4) { [0]=> string(6) "turtle" [1]=> string(8) "ntriples" [2]=> string(6) "rdfxml" [3]=> string(6) "jsonld" } } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_message_model_rdf_example
Description: Generate example RDF data from a message model version. The result is the RDF as text.
Handler: App\Mcp\MessageModelTools::rdfExample()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the message model version. |
format |
string | No |
turtle
|
The RDF serialization. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the message model version." } ["format"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(6) "turtle" ["description"]=> string(22) "The RDF serialization." ["enum"]=> array(4) { [0]=> string(6) "turtle" [1]=> string(8) "ntriples" [2]=> string(6) "rdfxml" [3]=> string(6) "jsonld" } } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_message_model_rml
Description: Generate an RML mapping from a message model version: rules that convert XML or JSON messages to RDF. The result is the RML (itself RDF) as text.
Handler: App\Mcp\MessageModelTools::rml()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the message model version. |
queryLanguage |
string | No |
xml
|
The syntax of the messages to convert: XML (selected with XPath) or JSON (selected with JSONPath). |
format |
string | No |
turtle
|
The RDF serialization. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(3) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the message model version." } ["queryLanguage"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(3) "xml" ["description"]=> string(98) "The syntax of the messages to convert: XML (selected with XPath) or JSON (selected with JSONPath)." ["enum"]=> array(2) { [0]=> string(3) "xml" [1]=> string(4) "json" } } ["format"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(6) "turtle" ["description"]=> string(22) "The RDF serialization." ["enum"]=> array(4) { [0]=> string(6) "turtle" [1]=> string(8) "ntriples" [2]=> string(6) "rdfxml" [3]=> string(6) "jsonld" } } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_message_model_graph_pattern
Description: Generate a SPARQL graph pattern from a message model version: the triples that RDF data for the message consists of, with variables for the nodes and values. The result is the pattern as text.
Handler: App\Mcp\MessageModelTools::graphPattern()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the message model version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the message model version." } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_business_rules_schematron
Description: Generate the schematron that the validator uses to check messages of a syntax binding against the business rules of its elements. Fails if the syntax binding does not validate business rules. The result is the schematron XML as text.
Handler: App\Mcp\MessageModelTools::businessRulesSchematron()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
syntaxBindingId |
string | Yes | - | The id of the syntax binding, as found by list_syntax_bindings. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["syntaxBindingId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(63) "The id of the syntax binding, as found by list_syntax_bindings." } } ["required"]=> array(1) { [0]=> string(15) "syntaxBindingId" } } |
get_codelists_schematron
Description: Generate the schematron that the validator uses to check that values in messages of a syntax binding come from the codelists of their elements. Fails if the syntax binding does not validate codelists. The result is the schematron XML as text.
Handler: App\Mcp\MessageModelTools::codelistsSchematron()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
syntaxBindingId |
string | Yes | - | The id of the syntax binding, as found by list_syntax_bindings. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["syntaxBindingId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(63) "The id of the syntax binding, as found by list_syntax_bindings." } } ["required"]=> array(1) { [0]=> string(15) "syntaxBindingId" } } |
get_schematron_content
Description: Get the content of a schematron that was added to a syntax binding. The result is the schematron XML as text.
Handler: App\Mcp\MessageModelTools::schematronContent()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
syntaxBindingId |
string | Yes | - | The id of the syntax binding. |
schematronId |
string | Yes | - | The id of the schematron, as found in "schematrons" of get_syntax_binding or get_specification_metadata. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["syntaxBindingId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(29) "The id of the syntax binding." } ["schematronId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(104) "The id of the schematron, as found in "schematrons" of get_syntax_binding or get_specification_metadata." } } ["required"]=> array(2) { [0]=> string(15) "syntaxBindingId" [1]=> string(12) "schematronId" } } |
get_example_message_content
Description: Get the content of an example message of a syntax binding, or of an example of the root element of its message model version. The result is the message (for example XML) as text.
Handler: App\Mcp\MessageModelTools::exampleContent()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
syntaxBindingId |
string | Yes | - | The id of the syntax binding. |
exampleId |
string | Yes | - | The id of the example, as found in "examples" of get_syntax_binding or get_specification_metadata, or in "exampleObjects" of get_element. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["syntaxBindingId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(29) "The id of the syntax binding." } ["exampleId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(137) "The id of the example, as found in "examples" of get_syntax_binding or get_specification_metadata, or in "exampleObjects" of get_element." } } ["required"]=> array(2) { [0]=> string(15) "syntaxBindingId" [1]=> string(9) "exampleId" } } |
list_ontology_classes
Description: List the URIs of all OWL classes in an ontology version, in "owlClasses".
Handler: App\Mcp\OntologyTools::classes()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the ontology version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(31) "The id of the ontology version." } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_ontology_class
Description: Get one class of an ontology version: its "uri" and "label", its properties ("properties-out", each with the property, its target class or datatype and multiplicity), the properties that point to it ("properties-in") and its super classes ("subClassOf").
Handler: App\Mcp\OntologyTools::class()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the ontology version. |
classUri |
string | Yes | - | The URI of the class, as found by list_ontology_classes. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(31) "The id of the ontology version." } ["classUri"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(56) "The URI of the class, as found by list_ontology_classes." } } ["required"]=> array(2) { [0]=> string(9) "versionId" [1]=> string(8) "classUri" } } |
get_ontology_content
Description: Get the content of an ontology version: all its triples. The result is the RDF as text. Use get_spec_version for its metadata.
Handler: App\Mcp\OntologyTools::content()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the ontology version. |
format |
string | No |
turtle
|
The RDF serialization. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(31) "The id of the ontology version." } ["format"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(6) "turtle" ["description"]=> string(22) "The RDF serialization." ["enum"]=> array(4) { [0]=> string(6) "turtle" [1]=> string(8) "ntriples" [2]=> string(6) "rdfxml" [3]=> string(6) "jsonld" } } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_json_schema_content
Description: Get the content of a JSON schema version. The result is the JSON schema itself, as JSON or as YAML text. Use get_spec_version for its metadata.
Handler: App\Mcp\OntologyTools::jsonSchema()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the JSON schema version. |
format |
string | No |
json
|
- |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(34) "The id of the JSON schema version." } ["format"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(4) "json" ["enum"]=> array(2) { [0]=> string(4) "json" [1]=> string(4) "yaml" } } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
list_projects
Description: List the projects the user may see, in "data", each with its group and owner ("account"), without their specifications. Use list_specifications to also get the specifications.
Handler: App\Mcp\ProjectTools::projects()
Parameters
| Name | Type | Required | Default | Description |
|---|
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> object(stdClass)#1000 (0) { } } |
list_project_labels
Description: List all labels of a project, in "data". Labels are used to tag issues and elements.
Handler: App\Mcp\ProjectTools::labels()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
projectId |
string | Yes | - | The id of the project. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["projectId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(22) "The id of the project." } } ["required"]=> array(1) { [0]=> string(9) "projectId" } } |
search_labels
Description: Find labels whose text contains the search text, or with that id. The result holds at most 20 labels in "data". Searching without a project is only for administrators.
Handler: App\Mcp\ProjectTools::searchLabels()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
query |
string | Yes | - | Text to search for. |
projectId |
null|string | No |
|
Only find labels of this project. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["query"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(19) "Text to search for." } ["projectId"]=> array(3) { ["type"]=> array(2) { [0]=> string(4) "null" [1]=> string(6) "string" } ["default"]=> NULL ["description"]=> string(33) "Only find labels of this project." } } ["required"]=> array(1) { [0]=> string(5) "query" } } |
list_metadata_types
Description: List the metadata types of all projects the user may see, in "data". A metadata type is a custom field (with a "key" and "label") that a project defines for its artefacts, like elements and concepts.
Handler: App\Mcp\ProjectTools::metadataTypes()
Parameters
| Name | Type | Required | Default | Description |
|---|
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> object(stdClass)#1001 (0) { } } |
search_artefacts
Description: Find artefacts: the generic handle for anything that can be discussed or mapped, like a specification, specification version, element or SKOS concept. Matches the artefact id, a version number, or (part of) the name of a specification, element or concept. The result holds at most 20 artefacts in "data".
Handler: App\Mcp\ProjectTools::searchArtefacts()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
query |
string | Yes | - | Text to search for. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["query"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(19) "Text to search for." } } ["required"]=> array(1) { [0]=> string(5) "query" } } |
list_discussion_posts
Description: List the discussion posts about one artefact (such as an element or concept), one page of 48 at a time, each with its submitter and replies. The result holds the posts in "data", plus "page", "pageSize" and "numResults" for paging.
Handler: App\Mcp\ProjectTools::discussionPosts()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
artefactId |
string | Yes | - | The id of the artefact, e.g. "artefact.id" of an element from get_element, or as found by search_artefacts. |
query |
string | No |
|
Only posts whose content contains this text. |
orderDir |
string | No |
DESC
|
Sort by creation date. |
page |
integer | No |
0
|
Page number, starting at 0. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(4) { ["artefactId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(107) "The id of the artefact, e.g. "artefact.id" of an element from get_element, or as found by search_artefacts." } ["query"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(0) "" ["description"]=> string(44) "Only posts whose content contains this text." } ["orderDir"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(4) "DESC" ["description"]=> string(22) "Sort by creation date." ["enum"]=> array(2) { [0]=> string(3) "ASC" [1]=> string(4) "DESC" } } ["page"]=> array(4) { ["type"]=> string(7) "integer" ["default"]=> int(0) ["description"]=> string(27) "Page number, starting at 0." ["minimum"]=> int(0) } } ["required"]=> array(1) { [0]=> string(10) "artefactId" } } |
get_projects_dcat
Description: Export the projects the user may see as DCAT-AP catalogues, with their specifications as datasets. The result is the RDF as text.
Handler: App\Mcp\ProjectTools::dcat()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
projectId |
null|string | No |
|
Only export this project. Omit to export all projects. |
format |
string | No |
turtle
|
The RDF serialization. |
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["projectId"]=> array(3) { ["type"]=> array(2) { [0]=> string(4) "null" [1]=> string(6) "string" } ["default"]=> NULL ["description"]=> string(54) "Only export this project. Omit to export all projects." } ["format"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(6) "turtle" ["description"]=> string(22) "The RDF serialization." ["enum"]=> array(4) { [0]=> string(6) "turtle" [1]=> string(8) "ntriples" [2]=> string(6) "rdfxml" [3]=> string(6) "jsonld" } } } } |
get_requirements_tree
Description: Get all requirements of a requirements version as a flat list in "requirements", ordered by "seqNr", each with its human id, title, description and the id of its parent requirement ("parentId"). Also returns the project, the specification with its versions and the version itself. Use get_requirement for the mappings of one requirement.
Handler: App\Mcp\RequirementTools::tree()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the requirements version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(35) "The id of the requirements version." } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_requirement
Description: Get one requirement, in "data": human id, title, description, rationale, source, its path ("pathString"), and on its "artefact" the mappings from and to it.
Handler: App\Mcp\RequirementTools::requirement()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
id |
string | Yes | - | The id of the requirement, as found by get_requirements_tree. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(61) "The id of the requirement, as found by get_requirements_tree." } } ["required"]=> array(1) { [0]=> string(2) "id" } } |
list_business_rules
Description: List business rules: rules about the content of messages (e.g. "start date must be before end date") that elements of message models can refer to. One page of 48 at a time; the result holds the rules in "data", plus "page", "pageSize" and "numResults" for paging. Only for maintainers.
Handler: App\Mcp\RequirementTools::businessRules()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
query |
string | No |
|
Search text: a rule id, or (part of) its human id (e.g. "BR001"), text ("naturalLanguage"), category or flag. |
orderBy |
string | No |
humanId
|
- |
orderDir |
string | No |
ASC
|
- |
page |
integer | No |
0
|
Page number, starting at 0. |
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> array(4) { ["query"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(0) "" ["description"]=> string(109) "Search text: a rule id, or (part of) its human id (e.g. "BR001"), text ("naturalLanguage"), category or flag." } ["orderBy"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(7) "humanId" ["enum"]=> array(5) { [0]=> string(7) "humanId" [1]=> string(15) "naturalLanguage" [2]=> string(8) "category" [3]=> string(4) "flag" [4]=> string(6) "locked" } } ["orderDir"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(3) "ASC" ["enum"]=> array(2) { [0]=> string(3) "ASC" [1]=> string(4) "DESC" } } ["page"]=> array(4) { ["type"]=> string(7) "integer" ["default"]=> int(0) ["description"]=> string(27) "Page number, starting at 0." ["minimum"]=> int(0) } } } |
get_business_rule
Description: Get one business rule, in "data": human id, text ("naturalLanguage"), purpose, category, flag, its schematron rules with their asserts, and the elements that apply it (each with its path and message model version).
Handler: App\Mcp\RequirementTools::businessRule()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
id |
string | Yes | - | The id of the business rule (not its human id). |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(47) "The id of the business rule (not its human id)." } } ["required"]=> array(1) { [0]=> string(2) "id" } } |
list_specifications
Description: List the projects the authenticated user may see, with the specifications (message models, ontologies, taxonomies, codelists, mappings, ...) in each project and their versions.
Handler: App\Mcp\SpecificationTools::index()
Parameters
| Name | Type | Required | Default | Description |
|---|
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> object(stdClass)#1002 (0) { } } |
search_specifications
Description: Search specifications whose name, description or short description contains the search text. The result holds at most 5 matching specifications in "data", each with its versions.
Handler: App\Mcp\SpecificationTools::search()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
query |
string | Yes | - | Text to search for. |
type |
null|string | No |
|
Only find specifications of this type. Omit to find all types. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["query"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(19) "Text to search for." } ["type"]=> array(4) { ["type"]=> array(2) { [0]=> string(4) "null" [1]=> string(6) "string" } ["default"]=> NULL ["description"]=> string(62) "Only find specifications of this type. Omit to find all types." ["enum"]=> array(9) { [0]=> string(8) "external" [1]=> string(11) "json-schema" [2]=> string(13) "message-model" [3]=> string(8) "ontology" [4]=> string(8) "taxonomy" [5]=> string(18) "technical-standard" [6]=> string(7) "mapping" [7]=> string(12) "requirements" [8]=> string(8) "codelist" } } } ["required"]=> array(1) { [0]=> string(5) "query" } } |
get_specification
Description: Get one specification with its versions. "selectedVersion" holds the details of one version: the requested version, else the highlighted version, else the only version, else null. For a message model it includes the element tree in "elements", in which each element refers to its codelists and business rules by id.
Handler: App\Mcp\SpecificationTools::get()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
type |
string | Yes | - | The type of the specification, as found by search_specifications. |
id |
string | Yes | - | The id of the specification. |
versionId |
null|string | No |
|
The id of the version to select. Omit to select the default version. |
includeDependencies |
boolean | No |
|
For a message model: also include the codelists (with their entries) and business rules (with their rules) that its elements use, in "codelists" and "businessRules" of "selectedVersion". |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(4) { ["type"]=> array(3) { ["type"]=> string(6) "string" ["description"]=> string(65) "The type of the specification, as found by search_specifications." ["enum"]=> array(9) { [0]=> string(8) "external" [1]=> string(11) "json-schema" [2]=> string(13) "message-model" [3]=> string(8) "ontology" [4]=> string(8) "taxonomy" [5]=> string(18) "technical-standard" [6]=> string(7) "mapping" [7]=> string(12) "requirements" [8]=> string(8) "codelist" } } ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(28) "The id of the specification." } ["versionId"]=> array(3) { ["type"]=> array(2) { [0]=> string(4) "null" [1]=> string(6) "string" } ["default"]=> NULL ["description"]=> string(68) "The id of the version to select. Omit to select the default version." } ["includeDependencies"]=> array(3) { ["type"]=> string(7) "boolean" ["default"]=> bool(false) ["description"]=> string(186) "For a message model: also include the codelists (with their entries) and business rules (with their rules) that its elements use, in "codelists" and "businessRules" of "selectedVersion"." } } ["required"]=> array(2) { [0]=> string(4) "type" [1]=> string(2) "id" } } |
get_specification_metadata
Description: Get the metadata of one specification and all its versions, in "data": documentation, and per version its authors, contributors, documentation and related specification versions. Depending on the type, each version also has: for a message model its root element ("rootNode") and syntax bindings (XML/JSON/... schemas, schematrons and examples); for an ontology or JSON schema the message model versions that use its definitions; for a codelist its governing organisation ("govOrg"); for an external specification its links. "permissions" tells what the user may do with it. Use get_specification for the content of a version.
Handler: App\Mcp\SpecificationTools::getMetadata()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
type |
string | Yes | - | The type of the specification, as found by search_specifications. |
id |
string | Yes | - | The id of the specification. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["type"]=> array(3) { ["type"]=> string(6) "string" ["description"]=> string(65) "The type of the specification, as found by search_specifications." ["enum"]=> array(9) { [0]=> string(8) "external" [1]=> string(11) "json-schema" [2]=> string(13) "message-model" [3]=> string(8) "ontology" [4]=> string(8) "taxonomy" [5]=> string(18) "technical-standard" [6]=> string(7) "mapping" [7]=> string(12) "requirements" [8]=> string(8) "codelist" } } ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(28) "The id of the specification." } } ["required"]=> array(2) { [0]=> string(4) "type" [1]=> string(2) "id" } } |
search_spec_versions
Description: Find specification versions whose specification name contains the search text, sorted by name and version number. The result holds at most 100 versions in "data", each with its "id" and "version" (the version number).
Handler: App\Mcp\SpecificationTools::searchVersions()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
query |
string | No |
|
Text to search for in the specification name. Empty finds all. |
types |
array|null | No |
|
Only find versions of these types. Omit to find all types. |
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["query"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(0) "" ["description"]=> string(62) "Text to search for in the specification name. Empty finds all." } ["types"]=> array(4) { ["type"]=> array(2) { [0]=> string(5) "array" [1]=> string(4) "null" } ["default"]=> NULL ["description"]=> string(58) "Only find versions of these types. Omit to find all types." ["items"]=> array(2) { ["type"]=> string(6) "string" ["enum"]=> array(9) { [0]=> string(15) "externalVersion" [1]=> string(17) "jsonSchemaVersion" [2]=> string(19) "messageModelVersion" [3]=> string(15) "ontologyVersion" [4]=> string(15) "taxonomyVersion" [5]=> string(24) "technicalStandardVersion" [6]=> string(14) "mappingVersion" [7]=> string(19) "requirementsVersion" [8]=> string(15) "codelistVersion" } } } } } |
get_spec_version
Description: Get the metadata of one specification version of any type, in "data": its version number, status, publication date, license, release notes, the specification it is a version of ("versionOf"), its predecessor, authors, contributors, documentation, and the versions it is related to ("related") or that relate to it ("relatedOf"). Use the type specific tools (get_message_model_tree, get_codelist_version, get_mapping_version, get_taxonomy_tree, get_requirements_tree, ...) for the content of a version.
Handler: App\Mcp\SpecificationTools::getVersion()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
id |
string | Yes | - | The id of the specification version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the specification version." } } ["required"]=> array(1) { [0]=> string(2) "id" } } |
get_spec_version_mappings
Description: Get the specification that a version belongs to, with all its versions (in "spec"), and the mapping versions that map from or to this version (in "mappingVersions", each with its "source" and "target" version). For a mapping version, the mapping version itself is included too. Use get_mapping_version for the individual mappings.
Handler: App\Mcp\SpecificationTools::getVersionMappings()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
id |
string | Yes | - | The id of the specification version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(36) "The id of the specification version." } } ["required"]=> array(1) { [0]=> string(2) "id" } } |
get_environment_info
Description: Get the optional features that are enabled in this Semantic Treehouse environment, in "features".
Handler: App\Mcp\SystemTools::environment()
Parameters
| Name | Type | Required | Default | Description |
|---|
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> object(stdClass)#1003 (0) { } } |
get_validator_info
Description: Get what messages can be validated against: the projects the user may see (in "projects"), with their message model specifications, their versions and the syntax bindings of each version (with root schema, schematrons and examples). "maxUploadSize" is the largest message the validator accepts.
Handler: App\Mcp\SystemTools::validator()
Parameters
| Name | Type | Required | Default | Description |
|---|
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> object(stdClass)#1004 (0) { } } |
get_task
Description: Get the status of a background task (such as generating mapping suggestions or AI generated content), in "data": its "status", when it was created and invoked, and how long it took.
Handler: App\Mcp\SystemTools::task()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
id |
string | Yes | - | The id of the task. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(19) "The id of the task." } } ["required"]=> array(1) { [0]=> string(2) "id" } } |
list_file_objects
Description: List the metadata of uploaded files (documentation, schemas, schematrons, icons, meeting minutes, ...), one page of 48 at a time: file name, display name and when it was last changed. The result holds them in "data", plus "page", "pageSize" and "numResults" for paging. Only for administrators.
Handler: App\Mcp\SystemTools::fileObjects()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
query |
string | No |
|
Only files whose original file name contains this text. |
orderBy |
string | No |
updatedAt
|
- |
orderDir |
string | No |
DESC
|
- |
page |
integer | No |
0
|
Page number, starting at 0. |
Full Schema
| array(2) { ["type"]=> string(6) "object" ["properties"]=> array(4) { ["query"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(0) "" ["description"]=> string(55) "Only files whose original file name contains this text." } ["orderBy"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(9) "updatedAt" ["enum"]=> array(2) { [0]=> string(16) "originalFileName" [1]=> string(9) "updatedAt" } } ["orderDir"]=> array(3) { ["type"]=> string(6) "string" ["default"]=> string(4) "DESC" ["enum"]=> array(2) { [0]=> string(3) "ASC" [1]=> string(4) "DESC" } } ["page"]=> array(4) { ["type"]=> string(7) "integer" ["default"]=> int(0) ["description"]=> string(27) "Page number, starting at 0." ["minimum"]=> int(0) } } } |
get_taxonomy_tree
Description: Get a taxonomy version with all its SKOS concepts as a flat list in "containsConcepts", each with its preferred label ("prefLabel"), alternative labels, notation, definition and the ids of its broader concepts ("broaderIds"). The top concepts are in "topConcepts"; build the tree from the top concepts down through "broaderIds". Use get_skos_concept for all details of one concept.
Handler: App\Mcp\TaxonomyTools::tree()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the taxonomy version. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(31) "The id of the taxonomy version." } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
get_skos_concept
Description: Get one SKOS concept of a taxonomy, in "data": preferred label, notation, definition, alternative labels, notes, its broader and narrower concepts, the taxonomy version it is in ("containedInVersion"), and on its "artefact" the metadata and issues about it.
Handler: App\Mcp\TaxonomyTools::concept()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
id |
string | Yes | - | The id of the concept. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(1) { ["id"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(22) "The id of the concept." } } ["required"]=> array(1) { [0]=> string(2) "id" } } |
search_skos_concepts
Description: Find SKOS concepts whose preferred label contains the search text. The result holds at most 50 concepts in "data".
Handler: App\Mcp\TaxonomyTools::searchConcepts()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
query |
string | Yes | - | Text to search for. |
taxonomyVersionIds |
array|null | No |
|
Only find concepts in these taxonomy versions. Omit to search all. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["query"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(19) "Text to search for." } ["taxonomyVersionIds"]=> array(4) { ["type"]=> array(2) { [0]=> string(5) "array" [1]=> string(4) "null" } ["default"]=> NULL ["description"]=> string(66) "Only find concepts in these taxonomy versions. Omit to search all." ["items"]=> array(1) { ["type"]=> string(6) "string" } } } ["required"]=> array(1) { [0]=> string(5) "query" } } |
get_taxonomy_skos
Description: Export a taxonomy version as a SKOS concept scheme. The result is the RDF as text.
Handler: App\Mcp\TaxonomyTools::skos()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
versionId |
string | Yes | - | The id of the taxonomy version. |
format |
string | No |
turtle
|
The RDF serialization. |
Full Schema
| array(3) { ["type"]=> string(6) "object" ["properties"]=> array(2) { ["versionId"]=> array(2) { ["type"]=> string(6) "string" ["description"]=> string(31) "The id of the taxonomy version." } ["format"]=> array(4) { ["type"]=> string(6) "string" ["default"]=> string(6) "turtle" ["description"]=> string(22) "The RDF serialization." ["enum"]=> array(4) { [0]=> string(6) "turtle" [1]=> string(8) "ntriples" [2]=> string(6) "rdfxml" [3]=> string(6) "jsonld" } } } ["required"]=> array(1) { [0]=> string(9) "versionId" } } |
Prompts 0
No prompts were registered.
Resources 0
No resources were registered.
Resource Templates 0
No resource templates were registered.