Give your agent live, actionable SEO data.
The SEOVally MCP server lets compatible clients run an audit, retrieve a report, compare domains, and turn findings into prioritized SEO work — without leaving the agent.
Endpoint
https://seovally.com/mcp
Transport
Streamable HTTP · JSON-RPC 2.0
Authentication
Bearer svk_...
Get an API key
Keys are issued per client, so a compromised key can be revoked without affecting others.
- Create or sign in to your account at seovally.com.
- MCP access is available on the Pro and Agency plans. Check availability on the Plans page.
- Contact SEOVally through seovally.com/contact with the email on your account and the name you want for the key — for example,
Cursor production. - Copy the
svk_...key when it’s issued. It’s shown only once, so save it in your agent client’s secret store or an environment variable.
Connect an MCP client
Use your client’s remote or Streamable HTTP connection flow with these settings.
| Setting | Value |
|---|---|
| Server URL | https://seovally.com/mcp |
| Authentication header | Authorization: Bearer ${SEOVALLY_API_KEY} |
| Protocol | Streamable HTTP |
Store the key outside the configuration file
export SEOVALLY_API_KEY='svk_replace_with_your_key'Most MCP clients use a configuration shaped like this. Check your client’s documentation for the exact settings screen or file location.
{
"mcpServers": {
"seovally": {
"url": "https://seovally.com/mcp",
"headers": {
"Authorization": "Bearer ${SEOVALLY_API_KEY}"
}
}
}
}Available tools
A key’s scopes are set when it’s issued. A tool outside those scopes simply isn’t listed to the client.
| Tool | What an agent can do with it | Scope |
|---|---|---|
| analyze_domain | Run a fresh audit and receive scores, category results, page facts, issue counts, and priority fixes. | analyses |
| get_priority_fixes | Get a short, ordered action list from an on-page and AI-search audit. | analyses |
| get_report | Retrieve the latest stored scorecard for a domain. | reports |
| compare_reports | Benchmark two to five domains using their stored reports, without starting new audits. | reports |
| list_recent_reports | Browse recently analyzed domains and their scores. | reports |
| list_crawl_history | View recent deep-crawl runs for the key owner. | crawls |
Good agent prompts
A few starting points once the server is connected.
- “Audit example.com, then make a three-item implementation plan from the priority fixes.”
- “Compare the stored SEO and AI visibility scores for example.com, competitor.com, and anothercompetitor.com.”
- “Run get_priority_fixes for example.com and turn each fix into an engineering ticket with acceptance criteria.”
- “List my recent reports and identify domains with an AI visibility score below 60.”
Test the connection
Replace svk_... with your own key. The response should identify the server and its available tools.
curl https://seovally.com/mcp \
-X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer svk_...' \
--data '{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2025-03-26",
"capabilities": {},
"clientInfo": {"name": "my-agent", "version": "1.0"}
}
}'Then list the tools allowed by your key:
curl https://seovally.com/mcp \
-X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer svk_...' \
--data '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'Example tool call
This starts a fresh audit. It can take longer than reading a stored report, since SEOVally fetches and evaluates the target site.
{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "get_priority_fixes",
"arguments": {
"domain": "example.com",
"max_items": 5
}
}
}Security and limits
- Keys are stored as hashes; the complete key is only displayed at issuance.
- Every call is recorded against the key for operational usage tracking.
- Follow the analysis allowance associated with your SEOVally plan.
- Do not grant a key more scopes than the agent needs.
- Revoke and replace a key immediately if it’s exposed.