Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 34 additions & 15 deletions docs/ai/mcp/mcp_config.md
Original file line number Diff line number Diff line change
Expand Up @@ -119,25 +119,44 @@
MCP Servers LTS Update comes with the following **experimental** built-in tools:

- `Ibexa\Mcp\Tool\ContentType\ContentTypeTools`
- `get_content_type` - gets a content type by its ID.
- `get_content_type_by_identifier` - gets a content type by its identifier.
- `get_content_type_list` - gets content types by their IDs.
- `create_content_type` - creates a draft for a new content type.
- `create_content_type_draft` - creates a draft for an existing content type.
- `get_content_type_draft` - gets a content type draft by content type ID.
- `publish_content_type_draft` - publishes a content type draft by content type ID.
- `get_content_type` - gets a content type by its ID
- `get_content_type_by_identifier` - gets a content type by its identifier
- `get_content_type_list` - gets content types by their IDs
- `create_content_type` - creates a draft for a new content type
- `create_content_type_draft` - creates a draft for an existing content type
- `get_content_type_draft` - gets a content type draft by content type ID
- `publish_content_type_draft` - publishes a content type draft by content type ID
- `Ibexa\Mcp\Tool\Content\ContentTools`
- `ibexa/mcp:update_content` - sets field values on a draft, in the draft's initial language (unless `initialLanguageCode` is given)

Check notice on line 130 in docs/ai/mcp/mcp_config.md

View workflow job for this annotation

GitHub Actions / vale

[vale] docs/ai/mcp/mcp_config.md#L130 <Ibexa.Passive>

Try to avoid passive tense, when possible.
Raw output
{"message":"Try to avoid passive tense, when possible.","location":{"path":"docs/ai/mcp/mcp_config.md","range":{"start":{"line":130,"column":128},"end":{"line":130,"column":136}}},"severity":"INFO","code":{"value":"Ibexa.Passive"}}
- `ibexa/mcp:create_content` - creates an unpublished draft
- `ibexa/mcp:convert_to_richtext_xml` - converts plain text, HTML fragments or complete DocBook / XHTML5 edit documents into the DocBook XML stored in RichText fields
- `ibexa/mcp:create_content_draft` - creates a new draft from the published or archived version
- `ibexa/mcp:list_locations` - lists direct children of a parent Location, and/or Locations that match a pattern, paginated

Check warning on line 134 in docs/ai/mcp/mcp_config.md

View workflow job for this annotation

GitHub Actions / vale

[vale] docs/ai/mcp/mcp_config.md#L134 <Ibexa.DontCapitalize>

Don't capitalize 'Locations' if inside the sentence.
Raw output
{"message":"Don't capitalize 'Locations' if inside the sentence.","location":{"path":"docs/ai/mcp/mcp_config.md","range":{"start":{"line":134,"column":87},"end":{"line":134,"column":96}}},"severity":"WARNING","code":{"value":"Ibexa.DontCapitalize"}}
- `ibexa/mcp:get_content_info` - gets version-independent metadata of a content item
- `ibexa/mcp:get_content_version_info` - gets metadata of a specific version of a content item (current by default)
- `ibexa/mcp:get_default_language_code` - gets the first configured language of the current SiteAccess
- `ibexa/mcp:get_root_location` - gets the root Location of the content tree of a SiteAccess (current if no SiteAccess name is given)

Check notice on line 138 in docs/ai/mcp/mcp_config.md

View workflow job for this annotation

GitHub Actions / vale

[vale] docs/ai/mcp/mcp_config.md#L138 <Ibexa.Passive>

Try to avoid passive tense, when possible.
Raw output
{"message":"Try to avoid passive tense, when possible.","location":{"path":"docs/ai/mcp/mcp_config.md","range":{"start":{"line":138,"column":129},"end":{"line":138,"column":137}}},"severity":"INFO","code":{"value":"Ibexa.Passive"}}
- `ibexa/mcp:get_content` - gets a content item with its metadata, a version and the field values of that version
- `ibexa/mcp:get_language` - gets a language by its language code, together with information whether it is enabled

Check notice on line 140 in docs/ai/mcp/mcp_config.md

View workflow job for this annotation

GitHub Actions / vale

[vale] docs/ai/mcp/mcp_config.md#L140 <Ibexa.Passive>

Try to avoid passive tense, when possible.
Raw output
{"message":"Try to avoid passive tense, when possible.","location":{"path":"docs/ai/mcp/mcp_config.md","range":{"start":{"line":140,"column":109},"end":{"line":140,"column":119}}},"severity":"INFO","code":{"value":"Ibexa.Passive"}}
-`publish_version` - publishes a draft
- `Ibexa\Mcp\Tool\ContentType\FieldDefinitionTools`
- `add_field_definition` - adds a field definition to a content type draft.
- `update_field_definition` - updates a field definition in a content type draft.
- `remove_field_definition` - removes a field definition from a content type draft.
- `add_field_definition` - adds a field definition to a content type draft
- `update_field_definition` - updates a field definition in a content type draft
- `remove_field_definition` - removes a field definition from a content type draft
- `Ibexa\Mcp\Tool\ContentType\ContentTypeGroupTools`
- `get_content_type_groups` - gets all content type groups.
- `get_content_type_groups` - gets all content type groups
- `Ibexa\Mcp\Tool\TranslationTools`
- `list_languages` - lists all languages in the current SiteAccess.
- `list_content_languages` - lists languages which have translations for a given content item.
- `list_non_translated_content_ids` - lists IDs of content which have missing translations for a given language code.
- `list_languages` - lists all languages in the current SiteAccess
- `list_content_languages` - lists languages which have translations for a given content item
- `list_non_translated_content_ids` - lists IDs of content which have missing translations for a given language code
- `Ibexa\Mcp\Tool\SeoTools`
- `get_non_seo_content_ids` - returns IDs of content items that are missing SEO optimization (no meta title tag). Useful for identifying content that needs SEO attention.
- `get_non_seo_content_ids` - returns IDs of content items that are missing SEO optimization (no meta title tag). Useful for identifying content that needs SEO attention

Check warning on line 153 in docs/ai/mcp/mcp_config.md

View workflow job for this annotation

GitHub Actions / vale

[vale] docs/ai/mcp/mcp_config.md#L153 <Ibexa.VerySimply>

Avoid using 'Useful'.
Raw output
{"message":"Avoid using 'Useful'.","location":{"path":"docs/ai/mcp/mcp_config.md","range":{"start":{"line":153,"column":119},"end":{"line":153,"column":125}}},"severity":"WARNING","code":{"value":"Ibexa.VerySimply"}}
- `Ibexa\Taxonomy\Mcp\Tool\TaxonomyTools`
- `list_taxonomies` - Lists the taxonomies
- `Ibexa\Workflow\Mcp\Tool\WorkflowTools`
- `list_workflows` - Lists the editorial workflows
- `get_content_workflow_status` - Gets the workflow status of a content version
- `apply_workflow_transition` - Applies a workflow transition to a content version

``` yaml hl_lines="5-7"
[[= include_code('code_samples/mcp/mcp.matrix.yaml', 4, 7) =]]
Expand Down
6 changes: 3 additions & 3 deletions docs/ai/mcp/mcp_usage.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,8 +93,8 @@
Filesystem storage is convenient for the sake of this example and for testing.
For production, it is recommended that you use Redis or Valkey to share cache among the cluster and improve performance.

For development, you can set `discovery_cache: ~` to avoid clearing the cache after each change.
This example uses the filesystem storage to illustrate that you have to clear the cache pool to refresh the available capabilities, exactly as when deploying into production.
For development, you can set `discovery_cache: ~` to avoid clearing the cache after each change.
This example uses the filesystem storage to illustrate that you have to clear the cache pool to refresh the available capabilities, exactly as when deploying into production.

In a new `config/packages/mcp.yaml` file, define a new MCP server for the `default` repository and assign it to all SiteAccesses:

Expand Down Expand Up @@ -294,7 +294,7 @@

### Perform Copilot or Claude Code test

You can test your MCP server with [Copilot CLI](https://docs.github.com/en/copilot/concepts/agents/copilot-cli/about-copilot-cli) or [Claude Code CLI](https://code.claude.com/docs/en/overview), as illustrated here, or with any other agent or interface.
You can test your MCP server with [GitHub Copilot CLI](https://docs.github.com/en/copilot/concepts/copilot-surfaces/copilot-cli) or [Claude Code CLI](https://code.claude.com/docs/en/overview), as illustrated here, or with any other agent or interface.

Check warning on line 297 in docs/ai/mcp/mcp_usage.md

View workflow job for this annotation

GitHub Actions / vale

[vale] docs/ai/mcp/mcp_usage.md#L297 <Ibexa.OxfordComma>

Use a comma before the last 'and' or 'or' in a list of four or more items.
Raw output
{"message":"Use a comma before the last 'and' or 'or' in a list of four or more items.","location":{"path":"docs/ai/mcp/mcp_usage.md","range":{"start":{"line":297,"column":1},"end":{"line":297,"column":242}}},"severity":"WARNING","code":{"value":"Ibexa.OxfordComma"}}

#### Add MCP server to agent CLI

Expand Down
Loading