geoaeo for Cursor
Connect the geoaeo MCP server to Cursor. Audit a site and generate GEO and AEO artifacts from Cursor Chat and Agent.
What you get
- CLI bins:
geoaeoandgeoaeo-mcp - CLI commands:
audit,init,gen,humanize,mcp. No other commands exist. - MCP server command:
npx -y geoaeo mcpover stdio - MCP tools:
audit,gen,humanize
Prerequisites
- Node.js 20 or later
- Cursor (latest)
- A site directory or URL to audit
Install the plugin
Run these two commands in Cursor:
/plugin marketplace add pooriaarab/usegeoaeo
/plugin install geoaeo@geoaeoThe plugin starts npx geoaeo mcp over stdio. MCP tools are audit, gen, and humanize.
JSON paste below is the fallback if you want to wire the server by hand.
Install geoaeo
# one-off
npx geoaeo audit ./ --json
# or add to the project
npm install -D geoaeo
npx geoaeo --help
# verify the MCP server starts (it waits on stdin; Ctrl+C to stop)
npx -y geoaeo mcpCursor starts geoaeo mcp for you. You do not run it by hand.
Configure the MCP server
Cursor reads MCP servers from .cursor/mcp.json (project scope) or ~/.cursor/mcp.json (global scope). Use mcpServers with command and args.
Create .cursor/mcp.json in the repo root:
{
"mcpServers": {
"geoaeo": {
"command": "npx",
"args": ["-y", "geoaeo", "mcp"]
}
}
}Steps:
- Create the file at
.cursor/mcp.json. - Paste the block above. Validate JSON.
- Reload Cursor (Developer: Reload Window) or restart Cursor.
- Open Cursor Settings > Features > MCP. Confirm
geoaeoshows as connected with 3 tools.
For global install, use the same block in ~/.cursor/mcp.json.
Verify the connection
- Open Cursor Chat (Cmd+L / Ctrl+L).
- Ask: "List MCP tools for geoaeo."
- Confirm
audit,gen,humanizeappear.
If the server shows as error, see Troubleshooting.
Walkthrough 1 — audit a site
Prompt Cursor:
Audit the local site at ./ with geoaeo. Return the score and the top 3 fixes.
What the agent does:
- Calls
auditwith{"target": "./"}. For a live site, use{"target": "https://example.com"}. - Receives JSON:
score,checks[],topFixes[],pages[]. - Summarizes the result in chat.
Equivalent CLI:
npx geoaeo audit ./ --json
npx geoaeo audit https://example.com --jsonRead topFixes to decide which artifact to generate next.
Walkthrough 2 — generate an artifact with gen
This uses gen, which reads geoaeo.config.ts from the current directory.
- Scaffold config if missing:
npx geoaeo init ./ cat geoaeo.config.ts - Prompt Cursor:
Use geoaeo gen to create robots.txt for this site. Show the content and write it to public/robots.txt.
What the agent does:
- Calls
genwith{"artifact": "robots"}. - Returns the file text.
- Writes it to
public/robots.txton confirmation.
Other artifacts:
{"artifact": "llms"}{"artifact": "llms-full"}{"artifact": "sitemap"}{"artifact": "webmcp"}{"artifact": "jsonld", "type": "software"}— type may besoftware,product,faq, orbreadcrumb
Equivalent CLI:
npx geoaeo gen llms
npx geoaeo gen robots -o ./public/robots.txt
npx geoaeo gen jsonld --type productThe humanize tool is also available: {"glob": "content/**/*.md", "write": false}.
Troubleshooting
MCP shows Failed to connect or ENOENT npx. Check Node is on PATH inside Cursor. Run node --version in Cursor's terminal. On macOS, ensure Cursor was launched after Node was installed. Try absolute command: "/opt/homebrew/bin/npx" or where which npx points.
Config not picked up. Confirm the file is .cursor/mcp.json (note the dot). Run cat .cursor/mcp.json | jq . to validate JSON. Reload the window.
audit returns low score or empty pages. Audit the repo root that contains geoaeo.config.ts. Cursor's working directory is the workspace root, so use {"target": "./"}.
gen returns config error. Run npx geoaeo init ./ to create geoaeo.config.ts. Then retry.
Server starts then exits. Run npx -y geoaeo mcp in a terminal. It should wait on stdin. If it exits, update to Node 20+ and reinstall geoaeo.
Reference
- Package:
geoaeo. Bins:geoaeo,geoaeo-mcp. - Transport: stdio only.
- Tools:
audittakestarget(string).gentakesartifactenum and optionaltype.humanizetakesgloband optionalwrite(boolean).