
Total CMS MCP server
Which servers in the official MCP registry are Total CMS's own, whether they answer, and what they offer. A program checked each of these, nobody copied them from a product page.
read 2026-10-24
- Registry nameco.totalcms/docsverified in the MCP registry
The registry name sits under totalcms.co. The registry only lets a publisher use that namespace after proving control of the domain through DNS or HTTP.
- Stateanswerschecked 2026-10-24
- Tools20
- Server calls itselfTotal CMS
- Server version3.6.3
- Protocol version2025-06-18
On 2026-10-24 the server answered initialize and tools/list without a sign-in. First answer in 200 ms.
- Whether its tools do the product's job has not been judged yet.
- Checked on 1 of the 7 days it takes to judge reliability.
Said by rules from the measurements above. The likely first call is a model's pick from the tool list; read its description before relying on it.
- INITE MCP scoreafter a weeka score needs 7 daily checks: 1 so far
- Answeredmeasuring1 of the 7 daily checks it takes to print a share
- Median first answer374 ms
- Space in an agent's context≈ 5,097 tokensthe definitions of all its tools (20), which an agent carries on every turn
- Tool definitionsA · 98 of 100
- Typed results20 of 20 toolsdeclared outputSchema: results come typed, read once
- Parameters without a description: in 2 of 20
Worth a look
None of the five warning signs in these definitions.
A program checks the server once a day: initialize and tools/list, no model. Tokens are the definitions' length at about four characters a token. The grade averages six checks of every tool's name, description, schema and annotations; it says how well the tools are described, not whether they work. The score weighs what was measured and nothing else: answering (30%), doing the product's job (25%), definitions (20%), context (10%) and use (15%). A part that was not measured is left out, and a hidden instruction caps the score at 40. The state of vendors' MCP servers: method and numbers →
describe_collectionDescribe one collection in detail. Returns the collection metadata plus a properties array — each entry is a property with its type, description, and indexed/filterable/sortable flags. Call list_collections first to find a collection id…
describe_viewDescribe one data view in detail. Returns metadata (id, name, description, last_built, access, total_items) plus output_shape — the list of keys present on the first cached item, sampled so agents can compose effective query_view /…
docs_getFetch a full Total CMS documentation page as markdown by its path (as returned by docs_search), e.g. "twig/data" or "site-builder/overview".
docs_lookupLook up a specific Total CMS reference entry: Twig functions/filters, field types, REST API endpoints, schema configuration keys, CLI commands, extension API, or builder API. Omit `name` to list all entries of a kind.
docs_searchSearch the Total CMS documentation. Returns matching pages with their path, title, group, and section headings. Use docs_get with a returned path to read the full page.
fetchFetch the full document for a search result id. Returns {id, title, text, url, metadata}; `text` is the readable body for citation. Pass an id returned by the `search` tool.
find_comparisonFind the head-to-head comparison page for a competitor by name (case-insensitive partial match). Returns the full page content including the feature table. Parameters: - competitor (string, required): Competitor name, e.g. "Kirby" or…
get_objectFetch a single object by its id from a collection. Returns the full object as a flat map of fields, decorated with a `url` field where the collection has a public URL pattern configured. This tool does not search or filter — use…
get_resourceResolve a tcms:// resource URI to its underlying object. Format: tcms://{collection}/{id} — e.g. tcms://blog/hello-world. Equivalent to calling get_object with the parsed collection and id; returns the same shape. Use this when a URI has…
get_viewFetch a data view's full cached result by id. Output is freeform — each item's field set depends on the view's Twig definition. Call describe_view first to learn the expected shape. Capped at 50 items; larger views return the first 50…
latest_releaseThe most recent Total CMS release: version, title, date and the release summary. Returns: paginated releases objects with url per item.
list_collectionsDiscover the collections visible to you. Lean overview — one entry per collection. Returns id, name (display label), schema (the schema id this collection uses), description, url_pattern, access level, and total_objects (so you can decide…
list_guidesThe site's Guides: evergreen buying-guide pages served at /guides/{id}, stored in the roundups collection. Returns every guide in display order with its id, heading, lede, reviewed date and draft flag. A guide's full content (contenders…
list_viewsDiscover the pre-computed data views visible to you. Lean overview — one entry per view. Data views are Twig-defined queries that aggregate across collections; their result is cached and accessible by id. Returns id, name, description…
needs_reviewComparison pages ordered by how long ago their competitor facts were last verified, oldest first. Pass `before` (ISO date) to return only pages last verified before that date. Each page shows its verification date publicly, so keeping…
query_collectionQuery a collection for paginated content. Returns the matching items plus pagination metadata (total, limit, offset, has_more); each item is decorated with a public `url` field where one is configured. Use REST-style `include` / `exclude`…
query_viewPaginated query against a data view's cached result. REST-syntax include/exclude/sort, same vocabulary as query_collection. View data is freeform — call describe_view first to learn the field set before composing filters. `limit` is…
searchSearch site content across all collections you can see. Returns matching results as {id, title, url}; pass a result id to `fetch` to read the full document. Drafts are hidden from anonymous callers.
search_collectionFree-text search within a single collection. Returns matching items decorated with a public `url`; total reflects what was found. Supports AND (default), OR, and "quoted phrases". Searches across the properties listed in the catalog below…
search_collectionsFull-text search across every collection you can see, in one call. Returns matching items each decorated with `collection` (which collection the hit came from) and `url`. Pair `collection` + `id` to fetch the full record via get_object…
How to connect
Add the server to your MCP client config. Claude Desktop, Cursor and most other clients read this shape:
{
"mcpServers": {
"docs": {
"type": "http",
"url": "https://totalcms.co/mcp"
}
}
}Add it
Claude Code, in a terminal
claude mcp add --transport http totalcms https://totalcms.co/mcpclaude.ai, ChatGPT and other clients: add https://totalcms.co/mcp as a custom connector in the settings.
- io.github.totalcms/total-cmsnot asked yetpublished by totalcms on GitHub
Each line is something a program found when it went looking: the registry entry, the server's own answer, a spec that parses. A missing line means we did not find it, not that it does not exist.
Cookies
Before we count this visit
Analytics and ad measurement tell us which pages and which of our ads do their job: Google Analytics and Google Ads, the Meta pixel, Yandex Metrica, and one first-party id of our own. Nothing is stored until you answer, and declining changes nothing about the site.