Skip to main content
Glama
geogridapi

GeoGridAPI MCP server

Official
by geogridapi

Run a local rank grid

run_grid

Measure Google Maps rankings for a keyword at every point of a grid around a Google Business Profile to map local SEO visibility.

Instructions

Measure where a Google Business Profile ranks on Google Maps for a keyword, on every point of a grid around it. Shapes: square (size 3, 5, 7 or 9) or circle, diamond, hexagon, cross, ellipse, rectangle (density low, medium or high, up to 49 points). Costs one credit per point (square 3×3 = 9, 7×7 = 49, 9×9 = 81; medium circle = 29; points at sea are skipped and not charged), refunded if the grid fails. Test keys (gga_test_) return free mock grids. Waits up to wait_seconds, then returns the grid id if it is still running.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sizeNo
queryNo
shapeNo
countryNo
densityNo
keywordYes
languageNo
place_idNo
radius_kmNo
wait_secondsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With annotations only declaring the generic write/open-world/non-idempotent profile, the description carries real behavioral weight: one credit per point with worked cost examples, sea points skipped and uncharged, refund on failure, free mock grids for gga_test_ keys, and the wait_seconds-then-return-id timing contract. This is exactly the context an agent needs before spending credits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose leads, then cost, then timing/refund, then test-key behavior. Dense but every clause is actionable; the enumerated cost examples (9/49/81, medium circle 29) are verbose yet genuinely useful for predicting spend.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 10-parameter tool with no output schema and no field descriptions, the description covers the hardest parts: billing, partial-failure refunds, mock mode, and what is returned when the run outlives wait_seconds. The remaining gap is location resolution (place_id vs keyword vs radius_km), which an agent cannot resolve from either schema or description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 10 parameters, so the description must compensate. It clarifies size (3/5/7/9), shape and density vocabularies, and wait_seconds semantics, but leaves keyword, query, place_id, radius_km, country and language entirely unexplained, including how the grid center is anchored.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb and resource: measuring Google Business Profile rank on Google Maps across every point of a grid around a location. It is far more concrete than a restated title, but it never names the closest siblings (estimate_grid for cost-only, run_grids for batch), so an agent must infer the distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied (this is the tool that actually consumes credits and produces a grid id), and the credit/test-key/refund notes give some decision context. However, there is no explicit 'use this instead of estimate_grid when...' routing, and no stated prerequisites for the required keyword.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.