CrakSEO Local SEO MCP
Google Maps rankings, Google Business Profile ratings and review counts. Hosted Streamable HTTP with OAuth or a scoped API key. Check availability and pricing before paid calls.
Gehosteter MCP-Server
npx add-mcp 'https://crakseo.com/mcp/local-seo'Installiert in Claude Code, Codex, Cursor und mehr
Dokumentation
Agent Instructions
For SEO data and indexing, start with /seo-mcp/overview.md and /seo-mcp/connect.md, then read the focused server reference. The documentation search MCP at https://docs.crakseo.com/mcp searches documentation only. Product tools use https://crakseo.com/mcp/. Check tool availability and API credit balance before paid calls. Request owner approval for paid indexing. Never invent prices, indexing guarantees or directory approval.
Local SEO MCP: Google Maps Rankings and Reviews
Local SEO MCP: Google Maps rankings, Google Business Profile ratings and review counts.
Google Maps positions for a keyword in a city with rating, review count, category and address, and a business's Google Business Profile with rating distribution and claimed status.
| Endpoint | https://crakseo.com/mcp/local-seo |
| Transport | Streamable HTTP |
| Sign-in | OAuth, or an API key as a bearer token |
| Scopes | seo-data:read |
| Billing | Pay as you go (API credits) |
When to use
Use for local businesses and agencies tracking map pack visibility city by city.
Connect
claude mcp add --transport http crakseo-local-seo https://crakseo.com/mcp/local-seo
Use crakseo-local-seo as the server name and https://crakseo.com/mcp/local-seo as the URL. Run /mcp in Claude Code to authenticate. For OAuth, scoped API keys and a free test, follow Connect and test.
Other clients: ChatGPT, Cursor, Codex, VS Code, Cline, Gemini CLI, Grok and Muse.
Connect using the URL above; no registry ID or marketplace listing is required.
Verify without spending
Use CrakSEO get_api_credit_balance to report my balance and dataCallsEnabled. Do not buy credits or make a paid call.
Tools
| Tool | What it does | Price per call |
|---|---|---|
check_google_maps_rankings | Google Maps rankings | TBD (placeholder) |
get_google_business_profile | Google Business Profile and reviews summary | TBD (placeholder) |
get_api_credit_balance | API credit balance | Free |
[!NOTE]
Tool names, titles and parameters on this page match the server's
tools/listresponse, which stays authoritative. Example values are placeholders, not real measurements. Prices marked TBD are set at launch on API credits.
check_google_maps_rankings
Google Maps rankings. Google Maps rankings: the local results for a keyword in a city, with rank, rating, review count, category and address, and the position of a given business. Costs API credits per call.
- Price per call: TBD (placeholder)
- Annotations: read-only, idempotent
- Limits: Results are cached for 24 hours. Failed calls are free.
| Parameter | Type | Required | Description |
|---|---|---|---|
keyword | string | Yes | Search query exactly as a user would type it. |
country | string | No | Two-letter country code of the search market, for example US, GB, DE or IN. Default US. |
language | string | No | Language code of the search market, for example en, de or pt-BR. Default en. |
location | string | Yes | Exact DataForSEO location name of the city, for example "Austin,Texas,United States". |
business | string | No | Optional business name or domain to find in the results. |
depth | integer | No | How many map results to fetch, 10 to 100. Default 20. |
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "check_google_maps_rankings",
"arguments": {
"keyword": "plumber",
"location": "Austin,Texas,United States",
"business": "Example Plumbing"
}
}
}
{
"result": {
"keyword": "plumber",
"location": "Austin,Texas,United States",
"businessPosition": 4,
"results": [
{
"position": 1,
"title": "Competitor listing",
"domain": "competitor.example",
"rating": 4.8,
"reviews": 0,
"category": "Plumber",
"address": "Example address"
}
]
},
"billing": {
"channel": "credits",
"chargedMicros": 0,
"chargedUsd": 0,
"cacheHit": false,
"balanceMicros": 0
}
}
get_google_business_profile
Google Business Profile and reviews summary. Google Business Profile lookup: a business's Google profile with rating, review count, rating distribution, category, address, phone, website and whether it is claimed. Costs API credits per call.
- Price per call: TBD (placeholder)
- Annotations: read-only, idempotent
- Limits: Results are cached for 24 hours. Failed calls are free.
| Parameter | Type | Required | Description |
|---|---|---|---|
business | string | Yes | Business name as it appears on Google, optionally with the city, for example "Joe's Pizza Brooklyn". |
country | string | No | Two-letter country code of the search market, for example US, GB, DE or IN. Default US. |
language | string | No | Language code of the search market, for example en, de or pt-BR. Default en. |
location | string | No | Optional exact DataForSEO location name for city-level results, for example "Austin,Texas,United States". Overrides country. |
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_google_business_profile",
"arguments": {
"business": "Example Plumbing Austin"
}
}
}
{
"result": {
"found": true,
"business": {
"title": "Example Plumbing",
"category": "Plumber",
"address": "Example address",
"phone": null,
"website": "https://example.com/",
"rating": 4.7,
"reviews": 0,
"ratingDistribution": {
"1": 0,
"2": 0,
"3": 0,
"4": 0,
"5": 0
},
"claimed": true
}
},
"billing": {
"channel": "credits",
"chargedMicros": 0,
"chargedUsd": 0,
"cacheHit": false,
"balanceMicros": 0
}
}
get_api_credit_balance
API credit balance. API credit balance: prepaid credits left for SEO data calls, amount spent, whether spending is suspended, and the per-call pricing rule. Free; no supplier call.
- Price per call: Free
- Annotations: read-only, idempotent
- Limits: Free; reads the wallet only.
| Parameter | Type | Required | Description |
|---|
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_api_credit_balance",
"arguments": {}
}
}
{
"availableMicros": 0,
"availableUsd": 0,
"spentMicros": 0,
"frozen": false,
"dataCallsEnabled": true,
"pricing": {
"creditMarkup": 0,
"minimumPerCallUsd": 0
}
}
Errors
| Code | Meaning | What to do |
|---|---|---|
insufficient_credits | The API credits wallet can't cover the call's maximum price. | Add credits at https://crakseo.com/app/indexing/credits, then retry the same call. The failed call isn't charged. |
forbidden | The connection doesn't have the scope this tool needs, for example seo-data:read or console:write. | Reconnect and grant the scope named in the message, or use an API key that has it. |
not_connected | Google Search Console or Bing Webmaster Tools isn't connected, or no connected property covers the URL. | Open the connect link in the message and sign in with the account that owns the property. |
invalid_input | A parameter is missing or out of range. | Read the message, which names the field, fix the argument and retry. |
confirmation_required | A paid indexing submission doesn't have the account owner's approval for this exact quote. | submit_indexing_urls returns status: "needs_confirmation" with a confirmationUrl. Send the owner there to approve, then retry with the same quoteId and idempotencyKey. The agent can't approve spend. |
wallet_frozen | API credit spending is suspended on this account after a refund or dispute. | Contact support@crakseo.com. |
budget_exceeded | The account's daily API credit spending limit, or the service's daily data budget, is used up. | Retry tomorrow. |
disabled | SEO data calls aren't switched on for this deployment yet. | Use the free Search Console and URL indexing tools meanwhile. get_api_credit_balance reports dataCallsEnabled. |
supplier_unavailable | The data supplier couldn't be reached or is rate limiting. | Retry later. Failed data calls are free. |
supplier_unknown | The data supplier didn't answer in time or sent an unreadable response. | Retry later. Failed data calls are free. |
supplier_error | The data supplier refused the request or returned no data. | Check the arguments (for example the location name) and retry. Failed data calls are free. |
Technical registry details
Intended MCP Registry ID:
com.crakseo/local-seo.The namespace
com.crakseois the reverse-domain form ofcrakseo.com, used to identify the publisher. It is not a website address, product name or connection URL. You do not need it to connect.This identifier is recorded in our publishing drafts, not a claim of registry acceptance or directory approval.
This documentation is built and hosted on Mintlify, a developer documentation platform.