# MCP reference for agents

Discover schemas, choose the right tools and verify outcomes without guessing commands.

## Discover before editing [#discover-before-editing]

Use `get_capabilities` to inspect the deployed capabilities and `get_command_schema` to obtain the structural schema for a command. The resource `tryslides://reference/command-schema` exposes the command reference too. Core validation remains authoritative for combinations, bounds and references: structural validity alone is not enough.

Inspect `get_usage`, then read the current document and operation sequence. Tool availability is filtered by permissions; an omitted tool is not an invitation to bypass consent.

## Tool families [#tool-families]

| Task | Tools |
| --- | --- |
| Discover and identify | `get_capabilities`, `get_command_schema`, `new_identifier` |
| Inspect synchronized documents | `list_presentations`, `get_presentation` |
| Create or edit | `create_presentation`, `estimate_commands`, `execute_commands` |
| Find and control a live editor | `list_editor_sessions`, `editor_action` |
| Import public images | `import_image_from_url` |
| Upload bytes | `prepare_image_upload`, `complete_image_upload` |
| Export | `export_text`, `export_presentation` |
| Share | `list_share_links`, `create_share_link`, `revoke_share_link` |
| Check outcomes and allowance | `get_request_status`, `get_usage` |
| Delete a whole document | `delete_presentation` |

## Safe mutation sequence [#safe-mutation-sequence]

Read the current version, inspect the exact command schema, estimate a bounded batch, then execute with the required version fence and request identity. If another client changed the document, reread before adapting the request. Do not remove concurrency fields to force acceptance.

After a timeout, query status using the original identity. Retrying the same accepted request with identical inputs avoids duplicate mutations; a new identifier represents new work. Report completion only after the result confirms it.

## Images and exports [#images-and-exports]

A URL image import inserts the image and returns its identities; do not insert a second copy. Byte upload is two-phase: prepare, upload the exact bytes to the returned upload-only URL, then complete. Upload alone does not insert an element.

Remote export returns a five-minute private download capability. A changed document can invalidate that ticket. Do not expose the temporary URL as a permanent share link. Connected downloads happen in the owner's browser, while connected PNG previews arrive through request status.

## Document scope and consent [#document-scope-and-consent]

Request only required actions and documents. Read permission does not imply edit, export, share or delete. Hosted sharing still requires Pro. Account and subscription changes are outside presentation grants.

For the file-only alternative, read [the portable format](/en/docs/ai/tryslides-format). For efficient work, read [usage](/en/docs/ai/usage).
