Tool reference
All 39 tools Pink Editor's MCP server offers, grouped by what they do.
API v1
Pink Editor's MCP server offers 39 tools. Your AI client lists them when it connects (tools/list); the pages in this section show each tool's description and input schema as the client receives them.
Costs are on Credits and pricing. Tools not listed there are free.
Sites, session and memory
| Tool | What it does |
|---|---|
list_sites | List the user's Pink Editor sites so the operator can pick one. |
select_site | Bind the chosen site to this MCP session AND get the foundation back in the same response. |
add_site | Create a brand-new Pink Editor site and immediately switch this MCP session to it (same effect as select_site). |
get_site | Return the currently-selected site_id (or null if none chosen). |
get_foundation | Re-fetch the foundation (brand essence only) for the bound site: site, audiences, goals, ctas, writable_cols, skills_registry, memory_registry, today, current_selection, access. |
get_selection | Returns the page(s) and/or topic the user has currently selected/clicked in the Pink Editor UI, with details (keywords, pains, questions, notes) pre-joined so you can act without … |
get_skill | Load a named playbook for a workflow. |
set_memory | Append a bullet to the site's memory document, or overwrite the whole document. |
undo | Undo/redo recent mutations. |
Content plan
| Tool | What it does |
|---|---|
graph | Read-only typed query over the site's content graph. |
recall | Semantic search over the site's memory. |
db_select | Read rows from any cm_* table, site-scoped automatically (cm_keywords and cm_research are shared pools, not per-site). |
db_insert | Insert rows into a writable cm_* table. |
db_update | Update rows matching WHERE with patch. |
db_delete | Delete PLANNING rows matching WHERE. |
set_page | Update a cm_pages row. |
set_links | Author internal-link creates/deletes (single or bulk). |
set_keyword_roles | Atomic primary/secondary/candidate role swap on cm_page_keywords. |
merge_topics | Merge source topics INTO target topic: re-parents pages, moves keyword attachments, soft-deletes sources. |
Research, keywords and SERP
| Tool | What it does |
|---|---|
research | Four modes: keywords (seed is 3–5 short seeds, each 1–3 words, comma-separated; returns volume/CPC in USD (cpc_usd)/intent), web (web search + scrape + synthesis of … |
get_keywords | Pull fresh keyword metrics (volume/CPC/competition) for seeds[], topic_id, or keyword_id. |
serp_landscape | The keyword + competitor intelligence tool. |
serp_backlinks | Backlink profiles — ONE tool, the scope arg picks the shape (like serp_landscape's depth). |
serp_keyword_refresh | Force a fresh single-keyword SERP pull (capped at 20/day/site) — the current top-20 organic results plus any untracked competitors that show up there. |
add_competitor | Track a competitor domain so it appears in the keyword-landscape and backlinks views with its share-of-voice and backlink profile populated. |
Search Console
| Tool | What it does |
|---|---|
gsc_query_stats | Get Search Console performance for a specific page: clicks, impressions, avg position, top queries over a recent window. |
gsc_striking_distance | Page+query pairs in positions 8–20 with real impressions — small edits typically push them into the top 5. |
gsc_content_decay | Pages whose clicks/day dropped >40% comparing last 28d vs prior 62d. |
gsc_cannibalization | Queries where 2+ of our URLs compete in the 15–25 band and none wins. |
gsc_hidden_winners | Pages where Google has hidden most of the query data (anonymized impressions ≥40%). |
gsc_forecast | 90-day click forecast per page with confidence intervals. |
Writing and publishing
| Tool | What it does |
|---|---|
get_article_brief | Return everything the LLM needs to understand one cm_pages row before publishing: foundation (brand/audiences/goals/CTAs — the brand voice is not included, it is applied … |
add_article | Publish a page (Article, FAQ, Landing, Pillar, or Utility). |
get_pipeline_status | Check the current article-pipeline status for a page. |
get_article | Read a published article before changing it. |
set_article | Replace a published article's prose, its status, or both. |
get_answer | Read a Q&A page before changing it. |
set_answer | Replace a Q&A answer, its status, or both. |
add_answer | Generate and publish the answer for ONE researched question, without running the whole add_article pipeline. |