MCP Server
Drive MisarSEO from an AI assistant — the stdio server and the hosted streamable-HTTP endpoint, with setup for both.
MisarSEO exposes its capabilities to MCP clients through two independent servers. They are separate implementations with different tool catalogues — pick one.
Hosted (streamable HTTP)
Runs inside MisarSEO. Nothing to install. 18 tools.
Local (stdio)
A local process reading an API key from the environment. 16 tools.
The two catalogues are not the same
Tool names differ between the two servers — the hosted server uses bare verbs (list_projects), the stdio server uses a seo_ prefix (seo_list_projects). Prompts written for one will not run against the other. See Tools for both catalogues side by side.
Hosted server
The recommended path. The server runs inside MisarSEO, so there is nothing to install and nothing to keep up to date.
claude mcp add --transport http --scope user misarseo https://seo.misar.io/mcpcodex mcp add misarseo --url https://seo.misar.io/mcpThe transport is stateless streamable HTTP with JSON responses enabled. Authentication reuses the deployment's configured auth mode — for a browser-adjacent client that means the session; for a headless client, a bearer key.
CORS is allowlisted
The hosted endpoint accepts cross-origin requests only from allowlisted origins. A client on an unrecognised origin will be blocked by the browser rather than rejected with an explicit error.
Local stdio server
Use this when your client cannot speak streamable HTTP, or when you want the server pinned to a specific version.
Private registry
@misar/seo-mcp is published to the Misar package registry, not public npm. Configure the @misar scope in your .npmrc before your MCP client tries to fetch it.
@misar:registry=https://git.misar.io/api/packages/misaradmin/npm/
//git.misar.io/api/packages/misaradmin/npm/:_authToken=${NPM_TOKEN}{
"mcpServers": {
"misarseo": {
"command": "npx",
"args": ["@misar/seo-mcp"],
"env": {
"MISARSEO_API_KEY": "mseo_your_key_here"
}
}
}
}Environment
Prop
Type
Create a key from your MisarSEO account — see Authentication.
Start with a project
Every project-scoped tool needs a projectId
Both servers expect a projectId on almost every call, and neither invents one. Have your assistant call the project-listing tool first — list_projects on the hosted server, seo_list_projects on the stdio server — and reuse the id it returns.
Credits
MCP tools call the same REST endpoints documented in this section and are billed identically. Read-only tools — listing projects, reading saved keywords, reading a tracker — cost nothing. Tools that fetch live provider data — keyword research, crawls, rank checks, AI radar — consume credits and are subject to the same rate limits.