MCP server
The AutomatedSEO MCP server lets Claude, ChatGPT and other assistants read your SEO data and, when you allow it, plan and publish content, all within your workspace's approval rules. Ask about your site's technical health, search performance, keyword gaps and content calendar in plain language, then turn the answer into work: a site check, a growth plan, an article plan or a scheduled post.
https://automatedseo.app/api/mcpEvery connection belongs to one workspace and can only see the websites in it. Pick your assistant to get set up:
- Claude: Add a custom connector on the web, desktop or mobile app.
- Claude Code: Add the server with one command and sign in from /mcp.
- ChatGPT: Find AutomatedSEO in the apps directory, or add it yourself.
- Cursor, VS Code and others: Connect over Streamable HTTP with OAuth or an access token.
Before you start
- An AutomatedSEO account with a workspace and at least one website. Create one if you don't have it yet.
- Search performance needs Google Search Console connected, and publishing needs a connected CMS. Every other tool works without them.
- What you can do through the assistant is limited by your role in the workspace, the same as in the app.
Connect Claude
Works in Claude on the web, the desktop app and mobile.
- 1In Claude, open Settings, then Connectors, and choose Add custom connector.
- 2Name it AutomatedSEO and paste the server URL
https://automatedseo.app/api/mcp. - 3Select Connect. Sign in to AutomatedSEO, choose the workspace the connector may use, and approve the permissions it asks for.
- 4Back in a chat, enable the connector from the tools menu and ask a question about your site.
Claude runs read tools straight away and asks you before it runs a tool that publishes or rolls back content.
Connect Claude Code
Add the server from your terminal:
claude mcp add --transport http automatedseo https://automatedseo.app/api/mcpThen run /mcp inside Claude Code, choose automatedseo and sign in. Your browser opens the AutomatedSEO sign-in and workspace picker, then returns you to the terminal.
Connect ChatGPT
- 1In ChatGPT, find AutomatedSEO in the apps directory. If your plan lets you add your own apps, you can instead create one with the server URL
https://automatedseo.app/api/mcpand OAuth authentication. - 2Select Connect, sign in to AutomatedSEO, choose a workspace and approve the permissions.
- 3In a chat, pick AutomatedSEO from the tools menu, or mention it in your message.
Other MCP clients
Cursor, VS Code, MCP Inspector and most other clients that support remote MCP servers over Streamable HTTP can connect with the same URL and sign in through OAuth.
If a client can't sign in, use a personal access token instead. In AutomatedSEO, open Settings, find Connect an AI assistant and select Use an access token. Choose Read only or Read and act and how long it lasts, then add it to your client's configuration:
{
"mcpServers": {
"automatedseo": {
"url": "https://automatedseo.app/api/mcp",
"headers": { "Authorization": "Bearer aseo_pat_..." }
}
}
}Example prompts
Ask in your own words. These show which tools the assistant reaches for and what comes back.
Give me a technical health summary of my website and list the five most urgent issues.
A summary of the latest crawl with counts of broken, noindex and incomplete pages, and the specific URLs to fix first.
list_websitesget_site_healthHow did organic search do over the last 28 days? Call out anything unusual.
Clicks, impressions, CTR and average position from Search Console, with the days or pages that moved and any open anomalies.
get_search_performanceWhich keywords should we write about next? Prefer ones competitors rank for and we don't.
A shortlist built from measured search volume and difficulty, with the competitor gaps marked.
get_keyword_opportunitiesCreate an article plan for “best project management software for agencies”.
A new plan in your content calendar with research queued. The assistant can check back on the research with get_job_status.
create_article_planget_job_statusIs my latest approved article ready to publish? If it is, schedule it on WordPress for Monday at 9am.
The assistant checks readiness and the connected CMS first, then asks you to confirm before it schedules the post.
list_articlespreview_article_publicationpublish_articleStop using the word “unlock” in our articles, and make the meta description of my latest draft shorter.
“unlock” joins the phrases every new article avoids, and the draft gets a tighter meta description. Nothing publishes until you approve it.
get_content_settingsupdate_content_settingslist_articlesget_articleupdate_articleI'm pitching acme-plumbing.com tomorrow. How strong is their site, do they rank for “emergency plumber chicago”, and what's broken on their homepage?
Their domain rating and backlink profile, where they rank and who outranks them, and the homepage's failing checks, ready for the call.
analyze_domaincheck_rankingsaudit_pageConnect this codebase's blog to AutomatedSEO so new articles publish here.
Your coding agent adds a publishing endpoint to the site, deploys it, and connects it. AutomatedSEO tests the endpoint before saving it.
list_websitesget_webhook_setupconnect_custom_webhook
Tools
Assistants pick these for you; you don't need to name them. Every tool works on one website in the connected workspace, except the ranking, domain and page checks, which work on any site and come from a weekly allowance.
Read tools (18)
These only read data and never change anything.
| Tool | What it does |
|---|---|
list_websites | Lists the workspace and websites you connected. Assistants call it first to find the IDs every other tool needs. |
get_site_overview | Plan, last crawl, page and article counts, and how many CMS destinations are connected for a website. |
get_site_health | The latest technical crawl: page inventory, error and noindex counts, and up to 100 pages with open issues. |
list_articles | Article plans and drafts, optionally filtered by editorial status. |
get_article | One article's plan, brief, research sources and publication history. |
get_content_calendar | Scheduled and recently updated articles for a date range (the next 90 days by default). |
get_keyword_opportunities | Measured keyword ideas, competitor gaps and keywords you already rank for. |
get_search_performance | Google Search Console clicks, impressions, CTR and position, day by day, plus open anomalies (the last 28 days by default). |
get_internal_link_opportunities | Pending internal-link suggestions with the source page, target page, anchor text and reasoning. |
get_backlinks | Backlink placements pointing at your site and whether each is verified. |
get_autopilot_settings | How much the autopilot may do on its own, its weekly and spend limits, and any publishing pause. |
get_content_settings | The voice, preferred terms, phrases to avoid, audiences, competitors, topics and writing style every new article follows. |
get_job_status | Progress, errors and result of background work started by an action tool. |
preview_article_publication | Whether an article is ready to publish, where it can go, and where it has gone before. Changes nothing. |
check_rankings | Where any domain ranks in Google's top 50 for a keyword, in one of 31 countries. Each website in your workspace adds 50 fresh checks a week. |
analyze_domain | Domain rating for any site, a prospect's or a competitor's, with its backlink profile if you ask. 100 ratings and 25 backlink profiles a week for each website. |
audit_page | A technical SEO audit of any public page, with Core Web Vitals if you ask. 100 audits and 50 speed tests a week for each website. |
get_webhook_setup | Everything a coding agent needs to publish your articles into a custom-built site: a setup brief, the exact payload, and any webhooks already connected. |
Action tools (11)
These start work or change your website, so they need a connection with write permission.
| Tool | What it does |
|---|---|
run_site_check | Starts a fresh technical crawl of the website. It reads your site and doesn't change it. |
generate_growth_plan | Starts an evidence-led growth plan for a period. It plans work and publishes nothing. |
create_article_plan | Adds an article plan for a target query and starts its research. It publishes nothing. |
update_article | Edits an article's title, meta description, slug, excerpt or body. Editing an approved or live article sends it back for your approval. |
set_article_instructions | Tells the writer what an upcoming article should cover or avoid, before it's written. |
reschedule_article | Moves a planned article to another day in the content calendar. |
remove_scheduled_article | Takes an unpublished article off the calendar and puts its keyword back in the queue. |
update_content_settings | Changes the voice, terms, phrases to avoid, audiences, competitors, topics or writing style new articles follow. Business facts and claims stay in the app. |
connect_custom_webhook | Connects the endpoint your coding agent built. AutomatedSEO sends it a test first and saves nothing unless it passes. |
publish_article | Publishes an approved article to a connected CMS, now or at a set time. It can't approve an article for you. |
rollback_cms_change | Reverts a change AutomatedSEO made in your CMS, after checking it's still the version that was applied. |
Permissions and safety
- When you connect, you pick one workspace. The connection can't see or change any other workspace, even ones you belong to.
- A new connection gets read permissions. Action tools also need write permissions, which you approve when your client asks for them; until then the tool says which permission is missing. A Read only token never gets them.
- Your role is checked on every call. If someone is removed from a workspace, their connections stop working immediately.
- Each publish needs a unique request key, so a retried request never publishes twice. Rolling back a CMS change checks it's still the version that was applied.
- Site checks, growth plans and article research run in the background. Ask the assistant to check on them later.
- Each person can make up to 120 calls a minute, and list results are capped at 100 rows.
- Every call is recorded in your workspace's activity log with the tool, website and outcome. We never store chat transcripts. See MCP connections in our privacy policy.
Disconnecting
- Remove the connector in Claude, ChatGPT or your client's settings to stop it calling AutomatedSEO.
- Revoke personal access tokens in Settings under Connect an AI assistant. A revoked token stops working on its next call.
- To switch workspaces, disconnect and connect again, then pick the other workspace.
Troubleshooting
| Error or symptom | What to do |
|---|---|
| Couldn't reach the MCP server | Check the URL is exactly https://automatedseo.app/api/mcp, with no trailing slash or extra path. |
| Bound to a different workspace | The assistant asked about a workspace you didn't connect. Ask it to call list_websites first, or reconnect and pick the other workspace. |
| The token does not grant a permission | You connected with read access. Approve the extra permission when your client asks, or create a Read and act token. |
| Rate limit exceeded | Wait a minute and try again. |
| No data in a result | The site may not have been crawled or connected to Search Console yet. Ask the assistant to run a site check, or connect Search Console in the app. |
Still stuck? Email hello@automatedseo.app with the assistant you used and the error you saw. Please don't send tokens or passwords.