io.helpcenter/agent · v2.5.1 · design
HelpCenter.io for agents is healthy: it completed an MCP handshake in 3437 ms and exposes 60 tools.
Without an account, an AI agent can create or migrate a help center and hand its user a claim link.
Endpoint: https://mcp.helpcenter.io/agent (streamable-http)
No repository listed · Website · JSON · Add to my inventory
| Users (last 30 days) | 0 |
| Handshake | Healthy |
| Auth needed | None |
| Tool count | 60 |
| Latency | 3437 ms |
| Last checked (UTC) | 2026-11-03T14:25:30.514Z |
| Checked (UTC) | Status | Latency | Error |
|---|---|---|---|
| 2026-11-03T14:25:30.514Z | Healthy | 3437 |
helpcenter_create_help_center | Create a new HelpCenter.io help center for the user, with no account and no sign-in: the first step of building or migrating a help center for someone who does not have HelpCenter.io yet. What it returns (also as structuredContent): site_id, subdomain, api_key, claim_url, expires_at, limits, docs_u |
helpcenter_request_migration | File a migration request: HelpCenter.io moves one or more knowledge bases (up to 50) into HelpCenter.io for the user, within 24 hours. Needs no agent_key and no account. Use it when a knowledge base is too big to fill yourself (more than 500 articles), when helpcenter_create_help_center answers lim |
helpcenter_get_migration_request | Follow a migration request with the request_id and status_token helpcenter_request_migration returned. Needs no agent_key. Returns (also as structuredContent): status — queued, in_progress, with_our_team, completed or declined; the request stays open, and its help centers refuse agent-key writes, u |
helpcenter_get_help_center | Read the status of the help center you created: whether the user has claimed it, when it is deleted, how full it is, a fresh preview link, and what is left to set up. Call it after writing content, before giving the user the claim link, and whenever a tool answers capability_locked. Returns (also |
helpcenter_discard_help_center | Delete the help center you created, with everything in it, and revoke its agent key. Irreversible. Only when the user asks for it, or when you created it by mistake (a wrong name or language). There is no need to clean up after handing over the claim link: an unclaimed help center is deleted by its |
helpcenter_list_imports | List the help center's imports, newest first (at most 50), each with its status, plan and progress. Includes an import the user set up in the dashboard, so you can follow and run a source they connected there (a private Zendesk help center, for example). It is also where the result of a helpcenter_s |
helpcenter_scan_import | Read a public Zendesk Guide, Intercom, Document360, Help Scout Docs, Front Knowledge Base or HelpDocs help center and answer what importing it would bring: its categories, articles and languages, and where each language lands here. Imports nothing yet. The fastest way to fill the help center: scan, |
helpcenter_get_import | Read one import: its plan, what is chosen, and how a run is going — progress (articles created, updated, conflicts with edits made here, images copied and failed), the imported articles waiting for review, and error once a run stops. limit says how much room an unclaimed help center has left. Follo |
helpcenter_choose_import | Choose which categories and languages an import brings, and whether articles arrive as drafts (the default) or as they are at the source. Starts nothing. While the help center is unclaimed, a choice that would take it past its 500 articles is refused (limit_reached) with the room left: choose fewer |
helpcenter_run_import | Start an import now, with what is chosen, or run a finished or failed one again. The run reads the source in the background: follow it with helpcenter_get_import until status is completed or failed. Running again updates the articles it brought before and never adds them twice; an article edited he |
helpcenter_cancel_import | Cancel an import: it never runs again and stops syncing. Nothing it already brought in is deleted, and scanning its address again later picks up what it brought, so nothing arrives twice. A queued or running import cannot be cancelled (import_running): wait for the run to end. Args: - import_id ( |
helpcenter_get_import_redirect_map | For every article and category an import brought in: the path its page had on the old help center ('from') and the path of the page that replaced it here ('to'), 200 a page, in exactly the shape helpcenter_bulk_create_redirects takes. Use it so the old help center's links keep working once its addre |
helpcenter_list_redirects | List the help center's redirects, newest first: each sends a path the help center would otherwise answer with its not-found page on to one of its pages, with a 301. Works once the user has claimed the help center, verified their email address and activated a plan; until then it answers capability_l |
helpcenter_create_redirect | Send an old path of the help center ('from') on to one of its pages ('to') with a 301, for as long as nothing else on the help center answers that path. A path that already has a redirect is re-pointed, never duplicated. Works once the user has claimed the help center, verified their email address |
helpcenter_bulk_create_redirects | helpcenter_create_redirect for up to 200 redirects in one call, saved in order (a later one for the same 'from' wins). A page of helpcenter_get_import_redirect_map can be passed as it is. Works once the user has claimed the help center, verified their email address and activated a plan; until then |
helpcenter_delete_redirect | Delete a redirect: its path goes back to the help center's not-found page. Works once the user has claimed the help center, verified their email address and activated a plan; until then it answers capability_locked with the user's next step (helpcenter_get_help_center shows it too). Args: - redi |
helpcenter_get_custom_domain | Read the help center's custom domain: the domain, the DNS record the user must add at their DNS provider, and where it stands on the way to live. Poll it while the user sets up DNS: status moves from pending_dns through verifying and issuing_certificate to live, usually within minutes of the record |
helpcenter_set_custom_domain | Connect the help center to the user's own domain (e.g. help.example.com), as its Settings page does. Then give the user the DNS record from the result to add at their DNS provider; the certificate is requested once the record points here, and the domain goes live minutes later. Follow it with helpce |
helpcenter_remove_custom_domain | Disconnect the help center from its custom domain, as its Settings page does: the domain stops answering, and the help center stays on its helpcenter.io address. Only when the user asks for it. Works once the user has claimed the help center, verified their email address and activated a plan; until |
helpcenter_search_articles | Full-text search a HelpCenter.io help center's articles by query string, returning ranked matches. This performs keyword search (Meilisearch-backed) over published article titles and content for the connected help center. Use it to answer "find the article about X" intents. It is read-only and does |
helpcenter_list_articles | List and browse a HelpCenter.io help center's articles, optionally filtered by category, status or last update, and ordered by views. Use this to browse "what's in category Y" or "the most-viewed articles", or to walk every article for an audit, a backup or an incremental sync, rather than to searc |
helpcenter_create_article | Create a new article in the connected HelpCenter.io help center. Requires a write-scoped API key (read-scoped keys get a permission error). Titles, content, and slugs are per-language objects keyed by language code. Slugs auto-generate from the title when omitted. Args: - title (object, required |
helpcenter_update_article | Update an existing article by id in the connected HelpCenter.io help center. Partial update: only the fields you pass are changed. Requires a write-scoped API key. Per-language fields (title, content, slug) are objects keyed by language code and merge per language. Args: - article_id (number, re |
helpcenter_get_article | Read one article by id from the connected HelpCenter.io help center. Use this when you already know the id — after a search, or before editing — instead of paging through helpcenter_list_articles to find it again. Read-only. Also the way to check whether an article has unpublished staged edits wai |
helpcenter_bulk_create_articles | Create or upsert many articles in one request. Use this for imports and migrations instead of calling helpcenter_create_article in a loop. Send at most 50 articles per call; split a larger import into batches of 50. Requires a write-scoped API key. Give every item an external_id: the batch is then |
helpcenter_get_staged_changes | Read the unpublished staged edits waiting on an article. Staged changes let you edit a PUBLISHED article without readers seeing it, then release it deliberately. Staged content is invisible to everything public: the rendered help center, sitemap, site search, the widget, the AI answer path, and thi |
helpcenter_stage_article_changes | Save an edit to a published article WITHOUT readers seeing it. Nothing goes live until you call helpcenter_publish_staged_changes. Staged changes let you edit a PUBLISHED article without readers seeing it, then release it deliberately. Staged content is invisible to everything public: the rendered |
helpcenter_publish_staged_changes | Apply staged changes to the live article, making them visible to readers. Staged changes let you edit a PUBLISHED article without readers seeing it, then release it deliberately. Staged content is invisible to everything public: the rendered help center, sitemap, site search, the widget, the AI ans |
helpcenter_discard_staged_changes | Throw away staged edits without publishing them. The live article is untouched. Staged changes let you edit a PUBLISHED article without readers seeing it, then release it deliberately. Staged content is invisible to everything public: the rendered help center, sitemap, site search, the widget, the |
helpcenter_list_article_versions | List the archived previous versions of an article, so a past wording can be restored. Every publish archives the version it replaced. Read-only. Args: - article_id (number, required). - response_format ('markdown' | 'json'): default 'markdown'. Returns: { status: "success", versions: [{ id, l |
helpcenter_restore_article_version | Roll a live article back to a previously published version. Takes a version id from helpcenter_list_article_versions. The restore is itself archived, so it can be rolled forward again — this is reversible, but it DOES change what readers see immediately. Args: - article_id (number, required). |
helpcenter_list_categories | List the categories of the connected HelpCenter.io help center. Read-only. Returns each category's per-language name and description, parent id (for hierarchy), and icon. Use this to discover valid category ids before creating or filing articles, or to render the help center's structure. Paginated. |
helpcenter_update_category | Update an existing category by id in the connected HelpCenter.io help center. Partial update — only fields you pass change. Requires a write-scoped API key. Name and description are per-language objects keyed by language code. Args: - category_id (number, required): id of the category to update. |
helpcenter_create_category | Create a category in the HelpCenter.io help center bound to your API key. Requires a write-scoped API key. This is what lets you build a help center's structure rather than only fill it in: create the categories first, then file articles into them with helpcenter_create_article's category_id. Args |
helpcenter_delete_category | Delete a category from the HelpCenter.io help center bound to your API key. DESTRUCTIVE. The category is removed and its contents are moved somewhere else. Fails closed by default: a category holding articles or sub-categories answers 409 unless you say explicitly where its contents should go. Arg |
helpcenter_reorder_categories | Set the order of categories in the HelpCenter.io help center bound to your API key, in one call. Requires a write-scoped API key. Prefer this over repeated helpcenter_update_category calls: an information architecture is decided all at once, and one call leaves no visibly half-sorted tree in betwee |
helpcenter_reorder_category_articles | Set the reading order of the articles inside one category. Requires a write-scoped API key. Args: - category_id (number, required): the category whose articles are being ordered. - articles (array, required): the articles in the order you want them, as [{ id }] or [{ id, position }]. Omit 'pos |
helpcenter_get_template_guide | Learn what can be customized in a help center's design and exactly how: the model, every edit operation with an example, every component with the settings and values it accepts, theme tokens, custom CSS rules and hooks, scripts and navigation. A help center's design is its v2 template: theme tokens |
helpcenter_get_template | Read a help center's current design (the draft): its status, the Template Editor link for the customer to review, and an outline of every page — or one part of the draft in full. A help center's design is its v2 template: theme tokens (colours for light and dark mode, fonts, radius, density), six p |
helpcenter_list_template_themes | List the ready-made themes a help center can start from, or describe one in full. A help center's design is its v2 template: theme tokens (colours for light and dark mode, fonts, radius, density), six page kinds (home, category, article, search, contact, notFound), each built from six regions (head |
helpcenter_apply_template_theme | Start the draft from a ready-made theme — the Template Editor's "Compare & apply": copy all of a theme, or only some of its sections, onto the draft. A help center's design is its v2 template: theme tokens (colours for light and dark mode, fonts, radius, density), six page kinds (home, category, ar |
helpcenter_update_template_settings | Change document-level design settings in the draft: theme colours (light and dark), fonts, corner radius and density; the brand (name, logo, favicon); meta and SEO; and per-page settings such as a page's layout or how a category page lists its articles. It edits the help center's design DRAFT (its |
helpcenter_add_template_components | Add components to pages of the draft: a Hero, a CategoryGrid, FeaturedArticles, Faqs, RichText, a CustomHtml block, a Container… It edits the help center's design DRAFT (its v2 template): the draft the dashboard's Template Editor opens, with a live preview. Nothing reaches visitors until helpcenter |
helpcenter_update_template_components | Change the settings of components already in the draft: a heading, a variant, a column count, a CustomHtml block's markup. It edits the help center's design DRAFT (its v2 template): the draft the dashboard's Template Editor opens, with a live preview. Nothing reaches visitors until helpcenter_publi |
helpcenter_move_template_components | Reorder or move components within their page: to another position among their siblings, to another region, into a Hero or Container, or out to the region's top level. It edits the help center's design DRAFT (its v2 template): the draft the dashboard's Template Editor opens, with a live preview. Not |
helpcenter_remove_template_components | Remove components from the draft, with everything nested inside them. It edits the help center's design DRAFT (its v2 template): the draft the dashboard's Template Editor opens, with a live preview. Nothing reaches visitors until helpcenter_publish_template — after editing, give the customer the Te |
helpcenter_update_template_region | Style one region's wrapper on one page: its background, padding, bottom border and alignment. It edits the help center's design DRAFT (its v2 template): the draft the dashboard's Template Editor opens, with a live preview. Nothing reaches visitors until helpcenter_publish_template — after editing, |
helpcenter_sync_template_region | Make a region one shared copy on every page, or let each page keep its own. It edits the help center's design DRAFT (its v2 template): the draft the dashboard's Template Editor opens, with a live preview. Nothing reaches visitors until helpcenter_publish_template — after editing, give the customer |
helpcenter_copy_template_region | Copy one page's version of an unsynced region onto other pages, once, translations included. Each target page's region is replaced, and the pages stay independent afterwards; to keep them identical, sync the region with helpcenter_sync_template_region instead. It edits the help center's design DRAF |
helpcenter_add_template_css | Add a labelled block of custom CSS to the design, to restyle components, regions or the whole help center beyond what the settings offer. It edits the help center's design DRAFT (its v2 template): the draft the dashboard's Template Editor opens, with a live preview. Nothing reaches visitors until h |
helpcenter_update_template_css | Change one custom CSS block: replace its CSS, rename it, switch it on or off, or move it in the order. Fields left out keep their value. It edits the help center's design DRAFT (its v2 template): the draft the dashboard's Template Editor opens, with a live preview. Nothing reaches visitors until he |
helpcenter_remove_template_css | Delete one custom CSS block from the draft. To see the design without it first, switch it off with helpcenter_update_template_css (enabled:false) instead. It edits the help center's design DRAFT (its v2 template): the draft the dashboard's Template Editor opens, with a live preview. Nothing reaches |
helpcenter_add_template_script | Add a script or snippet to the help center's pages: an external script (src), inline JavaScript (inlineBody), or raw HTML such as a vendor snippet or a <meta> verification tag (htmlBody) — exactly one of the three — at the start or end of <head> or <body>, on every page kind or only some. It edits |
helpcenter_update_template_script | Change one script: its code (sending src, inlineBody or htmlBody switches it to that kind), position, pages, label or loading flags — or switch it off (enabled:false) without deleting it. Fields left out keep their value. It edits the help center's design DRAFT (its v2 template): the draft the dash |
helpcenter_remove_template_script | Delete one script or snippet from the draft. To stop it running but keep it, switch it off with helpcenter_update_template_script (enabled:false) instead. It edits the help center's design DRAFT (its v2 template): the draft the dashboard's Template Editor opens, with a live preview. Nothing reaches |
helpcenter_set_template_navigation | Replace the help center's navigation menu — the one every Navigation component draws, in the header or elsewhere — with the items given, in order. It edits the help center's design DRAFT (its v2 template): the draft the dashboard's Template Editor opens, with a live preview. Nothing reaches visitor |
helpcenter_publish_template | Put the draft live: every visitor sees the new design from now on. Records a version (restorable later) and starts a fresh draft from it — exactly the Template Editor's Publish button. A help center's design is its v2 template: theme tokens (colours for light and dark mode, fonts, radius, density), |
helpcenter_discard_template_changes | Throw away every unpublished change in the draft and reset it to the live design. The live help center is not affected. Irreversible for the draft: edits that were never published cannot be recovered — including ones a person made in the Template Editor. Only discard when the customer wants to star |
helpcenter_list_template_versions | List the help center's published design versions, newest first, marking the one that is live — with when, by whom and the publish note. Use it to find a version to bring back with helpcenter_restore_template_version. Args: - response_format ('markdown' | 'json'): default 'markdown'. |
helpcenter_restore_template_version | Load an earlier published design into the DRAFT, replacing the draft's current content — to undo a change, or bring back a previous look. It does NOT go live until you publish it (unlike the Template Editor's one-click revert), so the customer can review it first. Unpublished draft edits are replac |