Search HelpCenter Articles
helpcenter_search_articlesFull-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 not modify anything. For browsing by category rather than searching, use helpcenter_list_articles.
Args:
query (string, required): search text matched against titles and content.
lang (string, optional): language code to search within (defaults to the site default).
category_id (number, optional): restrict to one category id.
include_content (boolean, optional): default false, so each match comes back WITHOUT its body (the fields are listed under helpcenter_list_articles). Read the matches you need with helpcenter_get_article. true adds every language's full body.
limit (number, optional): items per page, 1-100 (default 100).
page (number, optional): page number (default 1).
response_format ('markdown' | 'json'): default 'markdown'.
Returns: a payload with { total, count, page, per_page, total_pages, has_more, next, items }, ranked best match first. Each item is an article without its body (see include_content), or with include_content: true the full article (id, per-language title/slug/content, category_id, categories, type, published, visibility, views, ratings, timestamps).
Paging: every response carries next: { page, limit } — the exact arguments that fetch the first item it did not return — or null when nothing is left. Follow next, with the same filters, instead of computing page + 1 yourself. A response is capped at 25000 characters, in its text and in its structured data alike, and 5.0 MB in all: when a page does not fit, only its first items are returned (truncated: true, count says how many) and next points at the rest, usually with a smaller limit and a later page number. Requesting page + 1 with your original limit would skip them. With include_content: true, a page first cuts every body to a plain-text excerpt before withholding any article (those items carry content_truncated: true; read the full body with helpcenter_get_article). Without bodies, the default, far more articles fit in each response.
To answer a question from the help center, search, then read the best one to three matches with helpcenter_get_article.
Errors: returns an auth error if the key is missing/invalid; a validation error if category_id is not a category of this site.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language code to search within (defaults to the site's default language). | |
| page | No | Page number for pagination (default 1). | |
| limit | No | Maximum items to return per page (1-100, default 100). | |
| query | Yes | Full-text search string matched against article titles and content. | |
| agent_key | Yes | The api_key helpcenter_create_help_center returned for this help center, exactly as returned. Required on every call: this endpoint has no sign-in, so the key is how each call says which help center it acts on. It is sent to HelpCenter.io as this call's credential and nowhere else, and it is never shown again: keep it for the whole task, and never show it to the user or write it into content. | |
| category_id | No | Restrict results to a single category id. | |
| include_content | No | Default false: each article comes back without its body — id, external_id, title, slug, type, category ids, published, visibility, views, staged-change flags, updated_at and content_length per language. Read the ones you need with helpcenter_get_article. true adds every language's full body, for an export, a backup or a content audit; a page of long articles is then several megabytes and may be cut to excerpts. | |
| response_format | No | Output format: 'markdown' for a human-readable summary or 'json' for the full structured payload. | markdown |