> ## Documentation Index
> Fetch the complete documentation index at: https://docs.protodesk.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Tool reference

> The Help Center authoring tools exposed by the current stdio adapter.

Call `authoring_context` first. Treat its permissions, limits, enabled locales, collections, and capabilities as authoritative for the connection.

## Read tools

| Tool | Inputs | Result |
| - | - | - |
| `authoring_context` | No arguments | Authorized workspace and connection context |
| `help_articles_list` | Optional `query`, `limit`, `after` | Article summaries and the next cursor |
| `help_article_get` | `articleId` | Article content and current revision |
| `help_proposal_get` | `proposalId` | A proposal created by this connection |
| `help_article_set_get` | `setId` | A generated article set from this connection, when supported |

Article search works on summaries and excerpts. Fetch the full article before proposing an update.

## Propose an article update

`help_article_update_propose` requires `help:drafts:write` and these inputs:

| Input | Meaning |
| - | - |
| `expectedWorkspaceId` | Confirmed workspace ID from `authoring_context` |
| `articleId` | Existing article ID |
| `expectedRevision` | Current revision from `help_article_get` |
| `idempotencyKey` | Unique 8–128-character printable, non-space ASCII key for this proposal |
| `content` | Object containing `title`, `excerpt`, and `bodyMarkdown` |

The tool creates an immutable content proposal and returns a review link. It does not change the article or its publication state.

## Propose new articles

`help_article_set_propose` requires write permission and the article-set capability. Supply `expectedWorkspaceId`, `idempotencyKey`, `name`, and `articles`.

Each article includes `slug`, `locale`, `collectionId`, `tags`, `featured`, and `content` with `title`, `excerpt`, and `bodyMarkdown`. Use an actual collection ID from context, or an empty value only when Uncategorized is intentional. Use `reviewNote` to flag uncertainty.

Submit 1–20 candidates within the 64 KiB request limit. Read existing articles first to avoid duplicate topics and URLs. Human approval creates unpublished drafts.

## Handle tool results

Return the `reviewUrl` to the person who requested the change. If it is relative, resolve it against `https://app.protodesk.io`.

Retry an uncertain write only with identical arguments and the same idempotency key. Do not automatically retry revision conflicts. Tools are filtered by connection permissions; a read-only connection does not expose proposal tools.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.