Own a keyword cluster end to end
“Research managed WordPress hosting, build the cluster, then queue the pillar and the first five spokes.”
research_keywords → build_keyword_cluster → schedule_content → queue_blog_post ×6 → manage_interlink_rules
Model Context Protocol connector
Run your entire WordPress operation from the assistant you already use. One MCP connector exposes the whole platform — keyword clusters, content pipelines, campaigns, custom post types, the onsite chatbot, media, and distribution — so planning, writing, publishing, monetizing, and measuring all happen inside Claude, Cursor, or any Model Context Protocol client. Meet your WordPress AI agents →
MCP server URL
https://hifi-wp-mcp-jm6unwvw5q-uc.a.run.app/mcp Add this as a custom connector in Claude, or paste it into your client's MCP config. Setup per client is below.
It is a Model Context Protocol server that puts your WordPress agent workspace inside your own AI client. Your assistant discovers the tools your plan entitles, then calls them under your identity — the same agents, quotas, and publishing rules as the hosted app.
Most “AI for WordPress” tools give you a chat box on someone else’s website, scoped to writing a post. This inverts both. The brain is yours — Claude, Cursor, whatever you drive daily — and the connector supplies what a general assistant cannot have: your connected sites, your brand voice, your keyword clusters, your monetization campaigns, a RAG index of your own content, and a multi-stage publishing pipeline that keeps running long after the conversation ends.
The important consequence: your client never holds a WordPress credential and never sees another tenant’s data. It holds one identity, and the gateway decides what that identity may do — every single call.
41 tools across 9 groups. Everything the interactive agents do, callable
directly — plus call_tool, which reaches any entitled platform tool by name for the
long tail.
What am I connected to, and what may I do?
| Tool | Arguments | What it does |
|---|---|---|
whoami | — | Your resolved identity, plan, and the agents and tools it entitles. |
list_agents | — | The WordPress AI agents on your subscription, with each agent’s modes and the tools those modes grant. |
list_tools | agent_id?, mode? | Full JSON schemas for every tool you are entitled to, and which agent grants each. |
list_sites | — | Your connected WordPress and CMS sites as sanitized references — id, name, URL, platform mode. Never credentials. |
call_tool | tool_name, arguments, site_id? | The escape hatch: run any entitled tool directly. Entitlement is re-checked server-side on every call. |
Research demand, build the cluster, own the internal link graph, watch the ranks.
| Tool | Arguments | What it does |
|---|---|---|
research_keywords | seed, site_id, region? | What people actually search for, per site and region, stored as a durable keyword set you can build on. |
build_keyword_cluster | site_id, pillar, keywords[] | Group a keyword set into a pillar-and-spoke cluster with the page each term should own. |
list_keyword_clusters | site_id | Every cluster on the site, its pillar page, its spokes, and which terms are still unclaimed. |
track_rankings | site_id, keywords[], region? | Google organic positions by keyword, site, and region, tracked over time. |
analyze_site | site_id | What pages the site has and what it is about — the map every other decision is made against. |
manage_interlink_rules | site_id, rules[] | The keyword → canonical URL routing table. One term, one destination, applied across the library. |
find_interlink_candidates | site_id, topic? | Live published posts that should link to a target, drawn from the real catalog rather than guessed. |
audit_domain_trust | domain | Whether a domain is trusted by the internet’s plumbing — the check to run before a launch, not after. |
Brief it, run the multi-stage pipeline, publish, review.
| Tool | Arguments | What it does |
|---|---|---|
queue_blog_post | title, brief, site_id?, post_status?, format_name? | Queue a post to the pipeline — plan → monetize ∥ assets → write → publish. Returns a job id. |
blog_post_status | job_id | Per-stage progress of a queued post, plus the published URL. |
list_recent_posts | limit? | Recent pipeline posts with status and URLs. |
publish_post | site_id, title, content, post_status? | Publish directly when you already have the content and do not need the pipeline. |
schedule_content | site_id, plan[], cadence? | Editorial calendar: one-off or recurring, with the cluster each slot serves. |
get_brand_voice | site_id | The site’s stored brand voice profile, so anything written elsewhere still sounds like the site. |
Offers, affiliate links, CTAs — configured once and honoured by every publishing agent.
| Tool | Arguments | What it does |
|---|---|---|
manage_campaigns | site_id, campaign | Create and update monetization campaigns: the offer, the audience, the placement rules. |
list_campaigns | site_id | Active campaigns and which posts are carrying them. |
manage_affiliate_links | site_id, links[] | Search, register, and list affiliate links, with cloaked destinations and click attribution. |
discover_offers | niche, network? | Offers worth running in a niche, drawn from the affiliate networks you have connected. |
find_products | query, marketplace? | Product data for review and comparison content, with live pricing and availability. |
The structured-data contract: custom post types, fields, taxonomies.
| Tool | Arguments | What it does |
|---|---|---|
create_cpt | site_id, name, taxonomies[]? | Register a custom post type with its taxonomies and unique REST bases. |
create_acf_group | site_id, cpt, fields[] | Create an ACF field group on the site — schema without a single wp-admin click. |
update_acf_fields | site_id, post_id, fields | Write ACF values on a post, so structured data stays populated as content ships. |
fetch_cpt_data | site_id, cpt | Read back what is registered and what is populated. |
fetch_taxonomies | site_id | The site’s taxonomies and terms, for classification that matches what already exists. |
The RAG index behind your site’s assistant.
| Tool | Arguments | What it does |
|---|---|---|
list_rag_sources | site_id | What the chatbot has indexed, and when each source was last refreshed. |
search_site_knowledge | site_id, query | Query the site’s own index — what your chatbot would answer, before a visitor asks. |
reindex_site | site_id, scope? | Force a refresh so the assistant reflects what you just published. |
Images and video, styled to the site’s brand.
| Tool | Arguments | What it does |
|---|---|---|
generate_media | brief, site_id?, style? | Generate and publish images — heroes, thumbnails, infographics — sideloaded to the site. |
search_media | query | Find existing assets before generating a new one. |
assemble_video | script, assets[]?, voice? | Script, narrate, and assemble video from a brief. |
Ground the work in sources; put the result where people are.
| Tool | Arguments | What it does |
|---|---|---|
queue_research | topic, docs[]?, depth? | Commission a deep-research report that runs offline and lands in your workspace. |
search_web | query, depth? | Search and scrape sources for grounding, with the citations kept. |
social_intelligence | platform, query | What Reddit, YouTube, and X are saying on a topic, as material for coverage. |
publish_social | platform, content, account_id | Post to a connected account. Write actions are confirm-gated and per-account authorized. |
Stop calling tools blindly — work the way the agent works.
| Tool | Arguments | What it does |
|---|---|---|
list_skills | — | The installable agent skills your subscription includes — one per entitled agent mode. |
get_skill | name | One skill as a ready-to-install package: purpose, tools, and workflow. |
The connector does not hard-code a menu. list_tools asks the gateway what your plan
entitles and returns real JSON schemas, so a new agent or tool on your subscription appears in
your client without a reinstall.
“Research managed WordPress hosting, build the cluster, then queue the pillar and the first five spokes.”
research_keywords → build_keyword_cluster → schedule_content → queue_blog_post ×6 → manage_interlink_rules
“Find posts with buying intent and no CTA, attach the hosting campaign, and rewrite the weakest three.”
analyze_site → list_campaigns → manage_campaigns → manage_affiliate_links → queue_blog_post
“Design a Recipe CPT with ACF fields for prep time, yield and nutrition, and register it.”
create_cpt → create_acf_group → fetch_cpt_data
“Which live posts should be linking to the pillar and aren’t?”
find_interlink_candidates → manage_interlink_rules
“Ask my chatbot about our refund policy and tell me if the answer is stale.”
search_site_knowledge → reindex_site
“How did last month’s cluster move, by keyword and region?”
list_keyword_clusters → track_rankings
“Commission a report on AI citation patterns in home services, then brief a post from it.”
queue_research → queue_blog_post
“Install the Quick Poster skill and work the way that agent works.”
list_skills → get_skill
A tool is a button. A skill is the operating manual. list_skills and get_skill serve each entitled agent mode as an installable package — its purpose,
its tools, and the workflow it follows — so your client stops guessing how to sequence a dozen
calls and starts working the way that agent works.
This is the difference between “an API your assistant can call” and “your agent team, running on your brain.” Skills are served on demand and gated server-side, so you only ever receive the modes your plan includes. Each mode also carries its own export setting: serve the workflow without the prompt, with it, or not at all.
The rule the design turns on: a tool list is a courtesy, the check at call time is the law. A client can advertise any tool it likes; the gateway resolves your plan, your agents, and their modes again on every single call, and answers 402 for an inactive plan or 403 for a tool you are not entitled to. Nothing about what your client claims can widen that.
Point any MCP client at:
https://hifi-wp-mcp-jm6unwvw5q-uc.a.run.app/mcp Add it as a custom connector and sign in. OAuth 2.1 mints a platform key on your own profile and the connector proxies calls with it — you never handle a key, and revoking the grant ends access.
Add the URL with a bearer key from your dashboard:
{
"mcpServers": {
"hifibots": {
"url": "https://hifi-wp-mcp-jm6unwvw5q-uc.a.run.app/mcp",
"headers": { "Authorization": "Bearer hifi_YOUR_KEY" }
}
}
} Start with whoami — it returns your resolved identity, plan, and how many agents
and tools you are entitled to, which makes any connection or permission problem obvious in
one call.
It is a Model Context Protocol server that exposes your HiFiBots WordPress workspace to any MCP client. Your assistant discovers the tools your plan entitles, then calls them under your identity to research, plan, write, publish, monetize, and measure.
Yes. Research demand per site and region, group terms into a pillar-and-spoke cluster, schedule the pages that own them, maintain the keyword-to-URL routing table, and track ranks over time — all as tool calls.
Yes. Create and update campaigns, register and cloak affiliate links, discover offers in a niche, and pull live product data. Publishing agents read the active campaigns automatically, so new posts carry the right CTA.
Yes. Register a CPT with its taxonomies and unique REST bases, create ACF field groups, and write field values on posts — the structured-data contract, without a single wp-admin click.
Any client that speaks MCP. Claude Desktop and claude.ai connect over OAuth 2.1; Claude Code, Cursor, Cline, Windsurf, and Zed connect with a bearer key in their MCP config.
The plugin connects your WordPress site to the platform. The MCP connector connects your AI client to the platform. Most workflows use both: the connector drives the agents, the plugin is how their output lands on your live site.
No. Site credentials stay in the platform. The connector sees sanitized site references — a site id, name, URL, and platform mode — and never handles WordPress passwords or application passwords.
A skill is the agent’s operating instructions served as an installable package. Instead of your client guessing how to sequence a dozen tool calls, it installs the skill and works the way the agent works.
No. Entitlement is re-checked server-side on every call, and daily and period post quotas, publish idempotency guards, and tenancy fencing apply exactly as they do in the app.
Add https://hifi-wp-mcp-jm6unwvw5q-uc.a.run.app/mcp as a custom connector and sign in. OAuth 2.1 mints a platform key on your own profile and the connector proxies calls with it — you never paste a key.
Pair it with the connector plugin: the MCP connector drives the agents, and the WordPress plugin is how their output lands on your live site — chatbot, Riverstep inline editing, CPT and ACF registration, and instant RAG sync. Get the WordPress plugin →