MCP App Store
by KeenEthics

Overview

Frase helps users research search results, create and optimize content, monitor visibility in AI search, and manage publishing workflows through ChatGPT.

Tools

analyze_competitors

ChatGPT
Analyze the top-ranking pages for a search keyword. Pass your own page as the first urls entry to also get its ranking vs. those competitors.

analyze_serp

ChatGPT
Analyze search engine results for a keyword. Returns top results, featured snippets, and related searches.

apply_optimization

ChatGPT
Apply an optimization suggestion. Starts a background job and returns immediately; poll get_optimization until the suggestion shows as Applied.

apply_template

ChatGPT
Resolve a template's outline, defaults, and boilerplate without modifying data. Use list_templates for IDs.

assign_to_cluster

ChatGPT
Assign content or a brief to a topic cluster.

audit_page

ChatGPT
Audit a single page URL; returns E-E-A-T, GEO, and SEO scores with issues. Auto-routes: audit_page_id re-audits in-place; no existing site audit starts one async (poll audit_id); else synchronous.

batch_atomize

ChatGPT
Generate 1–4 formats for one article, replacing prior results; returns IDs to poll and can send completion webhooks.

brand

ChatGPT
Brand reads. action=context: brand voice, terminology, reference + approved-brand sections (author on-brand before writing). action=terminology: check raw text against brand terms.

bulk_cms_posts

ChatGPT
Publish, unpublish, or delete one or more CMS posts (1-25) by id. Use a single-element post_ids for one post. Returns per-id succeeded/failed; one bad id never aborts the batch. Delete needs delete scope. Publish is rules-gated: force overrides warning-only refusals.

bulk_set_comment_status

ChatGPT
Resolve or reopen up to 100 comments in a single call. Comments that are missing or hidden by the visibility gate are returned in skipped.

claim_continuation

ChatGPT
Claim a prepared handoff using its intentId; verify identity first.

cms_post

ChatGPT
Read one CMS post. action=get → full body + SEO + taxonomy by post_id (optional include_research / include_blocks). action=get_by_slug → same by site_id + slug. action=performance → GSC metrics, quality scores, health, visitor demand.

create_atomization

ChatGPT
Generate one derived format for an article, replacing prior results of that type; completion can notify configured webhooks.

create_brief

ChatGPT
Create a content brief (topic, keywords, outline) from a completed research session (run start_research first).

create_cluster

ChatGPT
Create a topic cluster from a name, optional description, and seed keywords. Content and briefs can be assigned afterwards.

create_from_opportunity

ChatGPT
Generate a content brief directly from an opportunity — pre-fills topic, keywords, and competitive context.

create_prompt

ChatGPT
Track a search query to monitor how AI search results respond for your brand.

create_rule

ChatGPT
Create a content rule. Config omitted → smart defaults. config by condition_type: - score_threshold: {"scoreType":"seo","operator":">=","threshold":70} - word_count: {"operator":">=","min":300} - meta_required: {"requireTitle":true,"requireDescription":true} - verify_chips: {"maxAllowed":0} - term_compliance: {"checkNever":true,"checkAvoid":true} - link_count: {"linkType":"internal","operator":">=","min":2} - section_required: {"headingPattern":"FAQ","isRegex":false} - regex_pattern: {"pattern":"\\bTODO\\b","flags":"gi","mustMatch":false} - competitor_filter: {"competitors":["Acme"]} (=config required)

create_rule_set

ChatGPT
Create a new rule set. Rule sets group related rules together for batch evaluation. Optionally include existing rule IDs to populate the set.

create_site

ChatGPT
Create a new site to track. A site represents a domain you want to manage content and SEO for.

create_template

ChatGPT
Create a custom content template (outline sections with headings, word counts, key points). Plan limits apply.

delete_competitive_analysis

ChatGPT
Delete a competitive analysis.

delete_content

ChatGPT
Delete a content item (soft delete - moves to trash).

delete_research

ChatGPT
Delete a research session (soft delete - moves to trash).

delete_rule

ChatGPT
Delete a content rule permanently. Use get_rule_set to find rule IDs.

delete_webhook

ChatGPT
Delete a webhook.

dismiss_optimization

ChatGPT
Dismiss an ENTIRE optimization session with ALL its suggestions. This marks the whole session (not individual suggestions) as dismissed. Use this when you want to skip all suggestions for a piece of content.

evaluate_rules

ChatGPT
Evaluate content rules against ONE of: content_id, post_id (CMS post), or text. rule_set_id optional (omitted = every enabled set). Returns per-rule pass/fail + overall status without saving results; fail means publishing would refuse.

export_atomization

ChatGPT
Export atomization results in JSON, plain text, or Markdown format.

export_audit

ChatGPT
Export audit data. Returns detailed page-level data for analysis. This export is for a single site — do not compare with exports from other domains.

export_brief

ChatGPT
Export a brief in JSON or Markdown format.

export_content

ChatGPT
Export a content item in JSON, HTML, or Markdown format.

export_research

ChatGPT
Export research findings in JSON or Markdown format.

extract_template

ChatGPT
Extract a template from a brief or article. Saves it when outline sections exist; otherwise returns it unsaved.

generate_brief_from_analysis

ChatGPT
Generate an optimization brief from a completed competitive analysis. The brief includes missing topics, keyword targets, and structural recommendations.

generate_content

ChatGPT
Generate a NEW article from a brief with a complete outline. Always creates a new article and never overwrites the brief's existing content (use regenerate_content to rewrite one). Returns a content ID for get_job_status.

generate_hero_image

ChatGPT
AI hero image for an EXISTING article, attached as its featured image; the body is untouched (for a new article use generate_content with generate_images). Async (~20-60s): poll get_content until Hero Image Job reads completed and Featured Image shows a new URL; stop on failed. Costs one image credit and one AI-image unit of the site budget. Refuses if a hero exists unless replace is true, which overwrites it.

get_ai_visibility

ChatGPT
Get an overview of your AI visibility metrics - how your content appears in AI search results like ChatGPT, Perplexity, etc. Use site_id to filter to a specific site (recommended), or omit for aggregated data across all sites.

get_alerts

ChatGPT
Get AI visibility alerts - notifications about changes in your AI search presence.

get_atomization

ChatGPT
Get a derived format’s status, content and assets.

get_audit

ChatGPT
Get details of a specific audit, including summary statistics and optionally page-level data. IMPORTANT: Each audit is scoped to a single site. Never compare metrics between audits from different domains.

get_auto_optimization_status

ChatGPT
Get auto-optimization (watchdog) status for a site. Shows decay detection settings, pending auto-applies, and content health trends.

get_brief

ChatGPT
Get a brief: outline, research data, evidence budget. facts returns its claim ledger.

get_brief_status

ChatGPT
Check the generation status of a brief. Useful for tracking briefs that are being researched or generated.

get_cannibalization

ChatGPT
Detect pages competing for the same keywords. Shows keyword groups with conflicting pages and their positions. Requires an audit_id — get it from list_audits or get_audit.

get_citation_formula

ChatGPT
Get the top content moves linked to higher AI search citation rates in your industry. Returns a plain-language recommendation (or use flavor=full for the ranked list of all moves). Some industries may have no recommendation yet if the data is still maturing.

get_cms_import_status

ChatGPT
Check the status of a CMS bulk import job. Shows posts queued, succeeded, failed, and skipped counts.

get_competitive_analysis

ChatGPT
Get details of a competitive analysis, including rankings, competitor data, gap analysis, and opportunity score.

get_competitors

ChatGPT
Get AI visibility competitors - domains that appear alongside your content in AI search results.

get_content

ChatGPT
Get details of a specific content item, including its full body text.

get_content_gaps

ChatGPT
Get content gap opportunities - topics your competitors rank for that you don't.

get_content_status

ChatGPT
Check the generation status and progress of a content item. Useful for tracking content that is currently being generated.

get_content_summary

ChatGPT
Content counts grouped by status (draft, generating, review, published, archived). Prefer over list_content for a per-status overview.

get_continuation_context

ChatGPT
Start from a Frase run link: pass runId and follow returned agentGuidance. Summary explains remaining work; draft/source return exact paged bodies.

get_crawler_logs

ChatGPT
View AI bot crawl activity on your sites - see which AI platforms are crawling your content.

get_delivery_token

ChatGPT
Reveal the current live CMS credential without rotating it; only on explicit user request. If revoked, use rotate_delivery_token.

get_gsc_overview

ChatGPT
Google Search Console overview for a site (clicks, impressions, CTR, avg position) vs the previous equivalent period.

get_gsc_pages

ChatGPT
Get top performing pages from Google Search Console for a site.

get_gsc_queries

ChatGPT
Get top search queries from Google Search Console for a site.

get_industry_benchmark

ChatGPT
Compare your site/org to industry benchmarks (citation rates, Geo score, share-of-voice) across AI search platforms.

get_insights

ChatGPT
Get AI visibility insights - actionable recommendations based on your AI search data.

get_job_status

ChatGPT
Check the status of an async job (audit, research, content generation, brief outline, optimization). Specify the type for faster lookup, or omit to search all types.

get_monitoring_status

ChatGPT
Get the current Content Guard monitoring status for an article — includes quota, CMS/GSC connection health, pending review state. Use after toggle or before advising a user on whether to enable Guard.

get_next_actions

ChatGPT
What to do now on a site, ranked across opportunities, site health, analytics, optimizations and AI visibility; each item names the next tool.

get_opportunity

ChatGPT
Get opportunity details with a full scoring breakdown (impact, effort, speed, strategic value), the detection methodology, and any competitor gaps.

get_optimization

ChatGPT
Get details of an optimization session, including all suggestions.

get_optimization_insights

ChatGPT
Learning data from optimization outcomes showing which optimization types work best.

get_playbook

ChatGPT
Get details of a specific playbook, including all step definitions. Use list_playbooks first to find available playbook IDs.

get_playbook_run_status

ChatGPT
Get the current status and step results of a playbook run. Requires both playbook_id and run_id because the API uses nested routing (/playbooks/:id/runs/:runId).

get_prompt

ChatGPT
Get details of a specific AI visibility prompt, including the latest search results.

get_research

ChatGPT
Get details of a specific research session, including findings, sources, and type-specific structured data.

get_rule_set

ChatGPT
Get details of a specific rule set, including all its individual rules. Use list_rule_sets first to find available rule set IDs.

get_search_intent

ChatGPT
Analyze the search intent behind a keyword. Returns intent classification and content recommendations.

get_site_health

ChatGPT
Get overall site health score, issue counts by severity, and page statistics. Use this before diving into specific issues.

get_template

ChatGPT
Get full details of a specific content template, including all section definitions, boilerplate blocks, and field defaults. Use list_templates first to find available template IDs.

get_usage

ChatGPT
Check remaining quota: what each pool has used, its limit, when it refills, and what has recently been refused. Call before large batches to pace work, or after a 429 to see why.

get_webhook

ChatGPT
Get details of a specific webhook.

get_workspace_context

ChatGPT
Verify the signed-in user and workspace before continuing work.

import_cms_posts

ChatGPT
Async bulk import of CMS posts (max 100). Returns a job ID; poll get_cms_import_status for completion.

import_content

ChatGPT
Import an article written outside Frase as an ARTICLE IN THE APP, scored and optimizable — not a CMS post (for that use write_cms_post). Frase does not generate it. Supply body (markdown or HTML) or source_url, not both. Costs one article credit. Returns the content id and editor URL; set target_keywords or the SEO score is capped.

list_audits

ChatGPT
List site audits (SEO, content-quality, and technical issues). Each audit is scoped to one site — evaluate independently, don't compare across domains.

list_briefs

ChatGPT
List content briefs in your account. Briefs contain research, outlines, and settings for generating content.

list_clusters

ChatGPT
List topic clusters. Each cluster has a pillar topic and supporting content pieces organized around it.

list_cms_connections

ChatGPT
List each CMS platform's connection status for a site (Frase CMS, WordPress, Webflow, Sanity, Wix).

list_cms_posts

ChatGPT
List/search a site's CMS posts (paginated). Filter by status, type, category/tag/author slug, updated_since; q = ranked full-text search; sort=demand = visitor-question demand.

list_commitments

ChatGPT
List workspace commitments and remaining criteria.

list_competitive_analyses

ChatGPT
List competitive page analyses. Each analysis compares your page against competitors to find content gaps and optimization opportunities.

list_content

ChatGPT
List content items, filtered by status or site. For only Content Guard guarded content, use list_guarded_content. status 'archived' lists trashed items.

list_content_comments

ChatGPT
List comments on a content article (human + AI suggestions). Default returns only open comments; pass status=all to include resolved. Non-admin users only see AI comments they requested or were @-mentioned in.

list_guarded_content

ChatGPT
List content under Content Guard monitoring (guarded / monitored / watched articles). Same as list_content with is_monitored=true.

list_opportunities

ChatGPT
Get unified content opportunities scored by Impact (35%), Effort (25%), Speed (20%), and Strategic value (20%). Views: quick-wins (low effort, proven demand), growth (medium effort, validated gaps), strategic (high effort, high reward).

list_optimizations

ChatGPT
List content optimization sessions; each holds suggestions to improve content.

list_performance_alerts

ChatGPT
List performance alerts such as traffic drops, ranking changes, and other significant events.

list_playbooks

ChatGPT
List all available content playbooks. Playbooks are multi-step automated workflows for content creation (research, brief, generate, review, quality check).

list_prompts

ChatGPT
List AI visibility prompts you're tracking. Prompts are search queries that AI tools might use.

list_research

ChatGPT
List research sessions in your account. Research provides AI-powered insights on topics.

list_rule_sets

ChatGPT
List all available content rule sets. Rule sets define quality, style, and compliance rules that content can be evaluated against.

list_runs

ChatGPT
List workspace citation runs, including standalone work.

list_sites

ChatGPT
List all sites in your Frase account. Sites are domains you've connected for SEO tracking and content optimization.

list_templates

ChatGPT
List content templates (outline headings, word counts, boilerplate, field defaults). Optionally filter by content type.

list_trash

ChatGPT
List trashed/deleted content items. Returns content that has been soft-deleted (moved to trash).

list_webhooks

ChatGPT
List all webhooks configured for your account. Webhooks send HTTP notifications when events occur.

provide_playbook_input

ChatGPT
Resume a paused private Frase workflow with human input. Later steps may create records or auto-apply content changes.

publish_content

ChatGPT
Publish or unschedule content on a connected CMS. Check connections first with list_cms_connections.

regenerate_content

ChatGPT
Async regenerate/improve content. No instructions: full regen from brief (~2-5 min; poll get_content_status). With instructions: AI rewrite (~30-60s; check improvingStatus via get_content). Rewrites may change length - say 'maintain word count' to keep it.

rehost_cms_media

ChatGPT
Rehost an external https image onto Frase-hosted storage for FraseCMS content (SSRF-guarded), returning a stable hosted URL so published content never hotlinks a third-party image that may move or rate-limit.

release_continuation

ChatGPT
Release the run claim, retaining saved work and workspace access. Does not restart paid work.

republish_content

ChatGPT
Accept a suggestion application and re-publish to its CMS in place (no duplicates). Content-editor role. Failure returns a typed code (UNAUTHORIZED, RATE_LIMITED, TIMEOUT, NO_EXTERNAL_POST_ID, UPDATE_FAILED, REMOTE_POST_MISSING, REMOTE_CONTENT_CHANGED, CONCURRENT_EDIT, COMMIT_FAILED, RULES_BLOCKED, UNKNOWN). REMOTE_CONTENT_CHANGED means the CMS copy is newer - do NOT retry; the user can review and overwrite from the Guard tab.

rescore_content

ChatGPT
Recalculate SEO, GEO, and EEAT scores for a content item. Costs one API request, plus a scoring model pass if the body changed (cached otherwise). Much cheaper than a full optimization, but not free: do not loop it.

resolve_alert

ChatGPT
Mark a performance alert as resolved, optionally with a resolution note.

restore_content

ChatGPT
Restore a trashed (soft-deleted) content item. Content can be restored within 30 days of deletion. Use list_content with status 'archived' to find trashed items.

rotate_delivery_token

ChatGPT
Rotate a site's FraseCMS delivery token: invalidates every previously-issued token for the site and returns the new one.

run_playbook

ChatGPT
Start a private Frase workflow that may create research, briefs, articles, images, or optimizations and auto-apply content changes. Returns a run ID.

save_continuation_result

ChatGPT
Save the full draft, leaving live content unchanged. expectedVersion is decisionVersion. New requestId per change; identical inputs for retries. bodyHash pins reads; requestHash identifies retries.

search_locations

ChatGPT
Search for valid location names for use with start_competitive_analysis. Type a city or region name to find the exact location_name value. Tip: append a 2-letter country code after a comma to narrow results (e.g., 'Birm, US').

set_cluster_pillar

ChatGPT
Make a content item (not a brief; already assigned via assign_to_cluster) the pillar of a topic cluster. Replaces any sitting pillar, which stays as a supporting piece.

set_comment_status

ChatGPT
Resolve or reopen a single comment by ID. Hidden AI comments (visibility gate) return not-found.

set_source_decision

ChatGPT
Vouch for a source, or take one out. Use after get_brief reports a source needing attention. A decision is about a (claim, source) PAIR, not a URL: the same page can hold up one claim and not another, so claim must be the claim text exactly as the brief carries it. human_verified says the page supports the claim and survives re-running the research; removed drops the link and keeps the claim. To swap one page for another, pass the URL the brief already carries as source_url and the new one as replacement_url — the decision is always recorded against the URL the brief has. Only say human_verified if you have actually read the page — it outranks every automated check, so a guess here is worse than leaving the source unverified.

start_audit

ChatGPT
Start a site audit (crawls for SEO, content-quality, and technical issues). Async: poll get_job_status with the returned id.

start_competitive_analysis

ChatGPT
Start a competitive page analysis (content gaps, missing topics, optimization opportunities). Async: poll get_competitive_analysis with the returned id for results.

start_optimization

ChatGPT
Start an optimization analysis for a piece of content. Provide EXACTLY ONE of content_id (UUID) or content_name. If multiple docs share the name, the response lists candidates — retry with a content_id.

start_research

ChatGPT
Start a research session (keywords, SERP, gaps, and evidence run in parallel). Async: returns immediately — poll get_job_status (type: research), then get_research for results.

submit_continuation_for_review

ChatGPT
Submit verified draft for checks and staff review; may incur review usage. Never approves/publishes. Follow agentGuidance, then release.

suggest_clusters

ChatGPT
Get AI-powered cluster suggestions based on your existing content and keyword data. Suggests pillar topics and supporting articles.

toggle_auto_optimization

ChatGPT
Enable or disable auto-optimization for a site. When enabled, the watchdog monitors content for decay (age, traffic trend, ranking trend, competitor activity) and auto-applies safe optimization suggestions.

toggle_content_monitoring

ChatGPT
Enable or disable Content Guard monitoring for an article. Enabling needs a live page: the stored URL, or one the server recovers (CMS inventory; FraseCMS re-derivation when a published post + domain exist). Quota-checked per plan. Needs write:content scope.

update_brief

ChatGPT
Update a brief's metadata/outline; or ONE section: section_number + expected_updated_at (get_brief's; null if null); 409 = re-read, retry.

update_content

ChatGPT
Update a content item's title, body, status, or meta tags. To archive/trash, use delete_content instead.

update_continuation

ChatGPT
Renew a claim and record progress or blockers in Frase.

update_prompt

ChatGPT
Update an AI visibility prompt's status, frequency, platforms, or brand variants.

update_rule

ChatGPT
Update a rule's name, severity, config, description, or fix_hint (rule IDs via get_rule_set).

write_cms_post

ChatGPT
Create or update a CMS post. action=create requires site_id, title, content (HTML). action=update requires post_id; omitted fields stay unchanged, [] clears array fields. Writes default to agent_authored=true (pass false for human-authored). Publishing is rules-gated; force overrides warning-only refusals.

write_webhook

ChatGPT
Create or update a webhook sending Frase events to an external URL. create → requires url, events, name; returns a one-time signing secret. update → requires id.

analyze_competitors

Claude

analyze_serp

Claude

apply_ai_comment

Claude

apply_optimization

Claude

apply_template

Claude

assign_to_cluster

Claude

audit_page

Claude

batch_atomize

Claude

bulk_cms_posts

Claude

bulk_set_comment_status

Claude

cms_post

Claude

create_atomization

Claude

create_brief

Claude

create_cluster

Claude

create_from_opportunity

Claude

create_prompt

Claude

create_rule

Claude

create_rule_set

Claude

create_site

Claude

create_template

Claude

create_webhook

Claude

delete_competitive_analysis

Claude

delete_content

Claude

delete_research

Claude

delete_rule

Claude

delete_webhook

Claude

dismiss_optimization

Claude

evaluate_rules

Claude

export_atomization

Claude

export_audit

Claude

export_brief

Claude

export_content

Claude

export_research

Claude

extract_template

Claude

generate_brief_from_analysis

Claude

generate_content

Claude

get_ai_visibility

Claude

get_alerts

Claude

get_atomization

Claude

get_audit

Claude

get_auto_optimization_status

Claude

get_brief

Claude

get_brief_status

Claude

get_cannibalization

Claude

get_citation_formula

Claude

get_cms_import_status

Claude

get_competitive_analysis

Claude

get_competitors

Claude

get_content

Claude

get_content_gaps

Claude

get_content_status

Claude

get_content_summary

Claude

get_crawler_logs

Claude

get_delivery_token

Claude

get_gsc_overview

Claude

get_gsc_pages

Claude

get_gsc_queries

Claude

get_industry_benchmark

Claude

get_insights

Claude

get_job_status

Claude

get_monitoring_status

Claude

get_opportunity

Claude

get_optimization

Claude

get_optimization_insights

Claude

get_playbook

Claude

get_playbook_run_status

Claude

get_prompt

Claude

get_research

Claude

get_rule_set

Claude

get_search_intent

Claude

get_site_health

Claude

get_template

Claude

get_webhook

Claude

import_cms_posts

Claude

list_audits

Claude

list_briefs

Claude

list_clusters

Claude

list_cms_connections

Claude

list_cms_posts

Claude

list_competitive_analyses

Claude

list_content

Claude

list_content_comments

Claude

list_guarded_content

Claude

list_opportunities

Claude

list_optimizations

Claude

list_performance_alerts

Claude

list_playbooks

Claude

list_prompts

Claude

list_research

Claude

list_rule_sets

Claude

list_sites

Claude

list_templates

Claude

list_trash

Claude

list_webhooks

Claude

provide_playbook_input

Claude

publish_content

Claude

regenerate_content

Claude

rehost_cms_media

Claude

republish_content

Claude

request_ai_comments

Claude

rescore_content

Claude

resolve_alert

Claude

restore_content

Claude

rotate_delivery_token

Claude

run_playbook

Claude

search_locations

Claude

set_comment_status

Claude

start_audit

Claude

start_competitive_analysis

Claude

start_optimization

Claude

start_research

Claude

suggest_clusters

Claude

toggle_auto_optimization

Claude

toggle_content_monitoring

Claude

update_brief

Claude

update_content

Claude

update_prompt

Claude

update_rule

Claude

update_webhook

Claude

write_cms_post

Claude

Capabilities

Writes

Example Prompts

Click any prompt to copy it.

App Stats

255

Tools

3

Prompts

ChatGPT, Claude

Platforms

Works with

ChatGPT
Claude

Data refreshed daily