Anydocs Documents
Advanced

MCP Tools Reference

An Anydocs MCP guide organized by actual authoring workflow instead of a flat tool list.

Treat this page as a workflow cheat sheet for Anydocs MCP: open the project first, read current content, then choose the right write path for pages, batches, or navigation.

Best starting point

Most agents should begin with `project_open`. It returns more than config and paths: you also get allowed block types, inline marks, authoring guidance, built-in templates, and available resources / resource templates. Use `project_validate` only when you need an explicit workflow compatibility check.

  • `project_open`: reads config, paths, enabledLanguages, and authoring metadata
  • `project_validate`: confirms contract validity and agent-safe workflow compatibility
  • `project_set_languages`: updates the enabled language set and can switch the default language

Page reads and direct page writes

Read before writing whenever possible. For standard page maintenance, use `page_create`, `page_update`, `page_delete`, and `page_set_status`. `page_update` accepts only a whitelist of mutable fields: `slug`, `title`, `description`, `tags`, `content`, `render`, and `review`. In normal flows, treat canonical `content` as the source of truth and use `regenerateRender` when markdown and plain text should be rebuilt. `page_delete` also removes matching navigation references in that language.

  • `page_list` / `page_get` / `page_find`: establish context before editing
  • `page_create`: create a canonical page directly
  • `page_update`: shallow-merge only supported mutable fields
  • `page_delete`: remove the page and same-language navigation references
  • `page_set_status`: switch one page between `draft`, `in_review`, and `published`

Template-based page tools

When you want the agent to produce a better structured first draft, prefer template tools over hand-authoring raw canonical content. The built-in templates are only `concept`, `how_to`, and `reference`. `how_to` requires at least one step, or the call fails. Use `page_create_from_template` for new pages and `page_update_from_template` when you want to reshape an existing page into a template structure and regenerate both content and render output.

  • `page_create_from_template`: create a new page from a built-in template
  • `page_update_from_template`: rewrite an existing page using a built-in template
  • `concept`: explain ideas, boundaries, and when something applies
  • `how_to`: task-oriented content with at least one step
  • `reference`: stable facts, constraints, and scan-friendly details

Batch page tools

For multi-page maintenance, batch tools are usually better than one tool call per page. They write through one validated batch, which is useful for creating many pages, backfilling render output, or changing statuses at scale.

  • `page_batch_create`: create multiple pages in one call
  • `page_batch_update`: apply multiple patches, each with optional `regenerateRender`
  • `page_batch_set_status`: change statuses for multiple pages at once

Navigation changes usually start with `nav_get`. Prefer incremental tools for normal editing: `nav_insert`, `nav_move`, and `nav_delete`. Use `nav_replace_items` or `nav_set` only when you truly want a broad replacement. The difference is simple: `nav_replace_items` replaces only `navigation.items` while preserving the current document version, whereas `nav_set` replaces the entire navigation document.

  • `nav_get`: load the current language navigation
  • `nav_insert`: insert a node at the root or under a section / folder
  • `nav_move`: move a node using slash-separated paths
  • `nav_delete`: remove a navigation node
  • `nav_replace_items`: replace only `items`
  • `nav_set`: replace the full navigation document

Beyond tools

If this is your first Anydocs MCP integration, resource discovery can still be useful, but for most agents `project_open.authoring.resources` and `project_open.authoring.resourceTemplates` are enough. The current static resources are `anydocs://authoring/guidance`, `anydocs://templates/index`, and `anydocs://content/allowed-types`. A legacy alias such as `anydocs://yoopta/allowed-types` may still appear in older material, but new integrations should follow the canonical resource name. The resource templates are `anydocs://templates/{templateId}` and `anydocs://blocks/{blockType}/example`. Use the static resources for rules and indexes, and the templates when you need exact template details or minimal block examples.