Run local SEO from your terminal via the SEOG MCP server — Google Business Profile management, map-pack rank tracking and geo-grid scans, review sync and replies published to Google, competitor…

Apache-2.0Auto-check passedMarketing & SEO

Install Seog

skills CLI
$ npx skills add TerminalSkills/skills --skill seog -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install TerminalSkills/skills seog --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/TerminalSkills/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/seog .claude/skills/seog && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
seog
GitHub stars
163
Token cost
~3.4k tokens
SKILL.md length
986 words
Files
3 (incl. references)
Skills in repo
10
Repo updated
First seen
Licence
Apache-2.0

At a glance

Run local SEO from your terminal via the SEOG MCP server — Google Business Profile management, map-pack rank tracking and geo-grid scans, review sync and replies published to Google, competitor…

  • : connecting an agent to seog.ai
  • SKILL.md covers Overview, Instructions, Examples and Guidelines
  • Calls claude and npx; reaches api.seog.ai; needs SEOG_MCP_TOKEN
  • Tracking map-pack rankings

What it does

Seog is an agent skill from TerminalSkills/skills. Run local SEO from your terminal via the SEOG MCP server — Google Business Profile management, map-pack rank tracking and geo-grid scans, review sync and replies published to Google, competitor intelligence, AI-visibility and citation checks, website + Search Console audits, GBP posts, and PDF reports. Use when: connecting an agent to seog.ai, tracking map-pack rankings, automating local SEO reports, monitoring competitors near a business, replying to Google reviews, publishing Google posts, or when the user…

Its SKILL.md is about 3.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `_scores.json` and `references/mcp-tools.md`). Compatibility notes: Any MCP client (Claude Code, Codex, Gemini CLI, Cursor); seog.ai account with an active plan — paid tools spend credits

It sits in Marketing & SEO, covering Local SEO. It works with Model Context Protocol and Google Search Console. The repository describes itself as: Open-source library of AI agent skills — SKILL.md files for Claude Code, Codex, Gemini CLI, Cursor. The licence is Apache-2.0.

When your agent uses it

  • : connecting an agent to seog.ai
  • Tracking map-pack rankings
  • Automating local SEO reports
  • Monitoring competitors near a business

Example prompts

  • “local SEO”
  • “map pack”
  • “Google Business Profile”
  • “/seog”

Requirements

  • Node.js
  • A credential in SEOG_MCP_TOKEN
  • Compatibility (from SKILL.md): Any MCP client (Claude Code, Codex, Gemini CLI, Cursor); seog.ai account with an active plan — paid tools spend credits

What it can do on your machine

Read from SKILL.md and the folder at commit a021875. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • claude
    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • api.seog.ai

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • SEOG_MCP_TOKEN

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Any MCP client (Claude Code, Codex, Gemini CLI, Cursor); seog.ai account with an active plan — paid tools spend credits

    From compatibility in the SKILL.md frontmatter.

Context cost

Seog loads about 3.4k tokens when it runs, and up to ~6.7k if it reads all its reference files. Until then it costs about 159 tokens; SKILL.md has 986 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~159
When it runs · the whole SKILL.md, loaded when a task matches
~3.4k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~6.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from TerminalSkills/skills at commit a021875, republished under its Apache-2.0 licence (© TerminalSkills). 986 words, ~3,389 tokens.

Download SKILL.mdSave it as .claude/skills/seog/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
seog
description
Run local SEO from your terminal via the SEOG MCP server — Google Business Profile management, map-pack rank tracking and geo-grid scans, review sync and replies published to Google, competitor intelligence, AI-visibility and citation checks, website + Search Console audits, GBP posts, and PDF reports. Use when: connecting an agent to seog.ai, tracking map-pack rankings, automating local SEO reports, monitoring competitors near a business, replying to Google reviews, publishing Google posts, or when the user mentions "SEOG", "local SEO", "map pack", "Google Business Profile", or "keyword positions" for a physical business.
compatibility
Any MCP client (Claude Code, Codex, Gemini CLI, Cursor); seog.ai account with an active plan — paid tools spend credits
license
Apache-2.0
metadata.author
terminal-skills
metadata.version
2.0.0
metadata.category
business
metadata.tags
local-seo, google-business-profile, mcp, rank-tracking, reviews

SEOG — Local SEO via MCP

Overview

SEOG (seog.ai) is an AI local-SEO platform for businesses that live on Google Maps. Its remote MCP server exposes the whole product as 90 tools — the same domain services the web app's buttons call — so an agent can run a complete local-SEO practice without opening a browser: import a business, track and rank-check keywords, scan map visibility on a geo grid, sync and answer Google reviews, watch competitors, audit the website and Search Console, publish Google posts, and generate PDF reports.

Endpoint: https://api.seog.ai/mcp (streamable HTTP), authenticated with a personal token. Every call runs as that SEOG account — there is no anonymous mode.

Instructions

Setup

Sign up at https://app.seog.ai, then Settings → MCP access to issue a personal token (shown once). Install either way:

As a Claude Code plugin (recommended — bundles this skill and the server config):

/plugin marketplace add TerminalSkills/skills
/plugin install seog@terminal-skills

Claude Code asks for the token during install and stores it in the credential store. Non-interactively (scripts, CI):

bash
claude plugin marketplace add TerminalSkills/skills
claude plugin install seog@terminal-skills --config mcp_token="$SEOG_MCP_TOKEN"

Verify with /plugin list (seog → enabled) and /mcp (seog → connected).

As a skill + manually registered MCP server (any client):

bash
npx terminal-skills install seog
claude mcp add --transport http seog https://api.seog.ai/mcp \
  --header "Authorization: Bearer $SEOG_MCP_TOKEN"

For Codex / Gemini CLI / Cursor, register an HTTP MCP server with the same URL and Authorization: Bearer header. Verify with tools/list — 90 tools from server seog-platform (fewer on white-label accounts; see Guidelines).

Account, plan and credits — read before running paid tools
  • The token identifies a SEOG account; tools act only on that account's data.
  • SEOG bills in credits (CR) on one rule: anything that calls an external API is paid, at the same price as the equivalent click in the app. Reads of already-stored data are free. That includes undo and delete — each replays a call against Google.
  • get_credit_balance returns balance + plan; list_feature_prices prices every paid tool. Check both before a multi-business sweep.
  • A paid tool that fails is not charged (deliver-or-refund), so a failed run never silently costs money. create_report is the one asynchronous case: it returns a QUEUED report immediately and the charge lands when the PDF generates (refunded if it fails), so poll get_report rather than assuming the credits moved at enqueue.
Tool map

Full parameter schemas and pricing notes: references/mcp-tools.md. 💳 = spends credits.

DomainTools
Businesseslist_businesses, get_business, search_places💳, import_business💳, update_business, delete_business
Profile healthget_business_audit, get_action_plan, list_recommendations, analyze_business_profile, set_recommendation_status
Profile editing (writes to Google)apply_profile_fix💳, undo_profile_fix💳, draft_business_description💳, apply_business_description💳, undo_business_description💳, list_profile_photos, delete_profile_photo💳, get_profile_fix_options, list_recent_profile_edits
Rankingslist_keywords, add_keyword💳, check_keyword💳, refresh_rankings💳, keyword_history, keyword_recommendations💳, keyword_recommendations_cache, toggle_keyword, remove_keyword
Map grid + AI answersrun_grid_scan💳, get_latest_grid_scan, get_keyword_grid_scan, get_grid_history, get_grid_snapshot, check_ai_overview💳, get_ai_overview
Reviewslist_reviews, review_stats, sync_reviews💳, draft_review_response, generate_review_reply💳, publish_review_reply💳, verify_review_reply💳
Competitorsdiscover_competitors💳, get_discovered_competitors, list_competitors, add_competitor💳, remove_competitor, set_competitor_watchlist, snapshot_competitor💳, refresh_competitors💳, compare_competitors, list_competitor_alerts, mark_competitor_alerts_read, scan_competitor_spam
AI visibilityget_ai_visibility, get_ai_visibility_pillars, get_ai_presence_matrix, check_ai_visibility💳, list_citations, check_citations💳
Website + Search Consoleget_website_analysis, refresh_website_analysis💳, refresh_website_all💳, get_search_performance, get_search_console_status, load_search_performance💳
Google postslist_posts, get_post_templates, validate_post, draft_post_content💳, publish_post💳, refresh_posts💳, delete_post💳
Google connectionget_google_connection_status, get_gbp_performance, load_gbp_performance💳, load_gbp_keyword_history💳, list_gbp_import_locations, import_gbp_business💳
Account + reportsget_dashboard, get_credit_balance, list_feature_prices, get_metrics_history, list_reports, create_report💳, get_report, delete_report, refresh_business_profile💳, refresh_business_overview💳
Core workflows

Onboard — search_places → import_business with the chosen placeId. If the user's Google account is already connected, prefer list_gbp_import_locations → import_gbp_business: it binds the owner connection, which is what unlocks review replies and posts.

Track rankings — read keyword_recommendations_cache (free) before paying for keyword_recommendations; add_keyword (optional locationLabel to rank from a neighborhood); check_keyword for one live check or refresh_rankings for every active keyword in a single charge; keyword_history for the trend; run_grid_scan for map coverage across a grid (price scales with gridSize).

Work reviews — sync_reviews → list_reviews(filter="needs-response") → generate_review_reply for a draft → ask the user → publish_review_reply (publicly visible on Google) → verify_review_reply to confirm it landed. draft_review_response saves a local draft and publishes nothing.

Fix the profile — get_action_plan / get_business_audit to find gaps, then apply_profile_fix (phone, website, hours, name, status) or draft_business_description → apply_business_description. Both write to the live listing; undo_profile_fix / undo_business_description revert.

Diagnose beyond the profile — get_website_analysis + get_search_performance (free reads of the last runs), refresh_website_all to re-run both in one charge; get_ai_visibility_pillars and list_citations for AI-answer readiness and NAP consistency.

Show full SKILL.md (350 more words)Show less

Examples

Example 1: Weekly digest, credit-aware

"How are my clients doing this week?"

text
1. get_credit_balance → 180 CR (Growth plan) — enough for the sweep
2. list_businesses → 15 businesses
3. per business: refresh_rankings        # one charge for all active keywords
                 sync_reviews → list_reviews(filter="needs-response")
                 compare_competitors + list_competitor_alerts   # both free
4. generate_review_reply for each negative unanswered review → present the drafts
5. get_action_plan(businessId) → prioritized fixes for the digest

Publishing (publish_review_reply) waits for the owner's explicit yes.

Example 2: Credits run out mid-sweep
text
> run_grid_scan(businessId, keywordId, gridSize=7)
✗ Not enough credits: this action costs 45 CR and the account balance is 12 CR.
  Nothing was run and nothing was charged. Top up or upgrade at
  https://app.seog.ai/billing, then retry.

Correct behaviour: relay the numbers and the link, stop the paid sweep (do not retry in a loop), and finish the digest from free reads — list_keywords, get_latest_grid_scan, review_stats, get_action_plan all still work.

Guidelines

  • Money is real. Never run a paid tool the user did not ask for. Price a batch with list_feature_prices and check get_credit_balance first. Prefer bundled charges (refresh_rankings, refresh_website_all, refresh_business_overview) over per-item loops — they cost less for the same work.
  • Publishing is public and hard to undo. publish_review_reply, publish_post, apply_profile_fix and apply_business_description write to the live Google listing. Quote the exact text and get approval first. Changing the business NAME can put the listing into Google re-verification — say so before doing it.
  • Irreversible tools require confirm: true — delete_business, delete_profile_photo, delete_post, remove_keyword, remove_competitor, delete_report. Without the flag they refuse to run, by design: quote exactly what will be deleted, get a yes, then pass it. delete_business cascades reviews, keywords, rankings and competitors; deleted photos and posts cannot be restored. Prefer toggle_keyword when the user only wants to pause tracking.
  • Read the error instead of retrying. Tool errors are self-describing: INSUFFICIENT_CREDITS gives price, balance and the top-up URL; PLAN_REQUIRED means the trial ended or no plan exists; FEATURE_NOT_IN_PLAN names the feature and plan. Relay them — a retry loop just fails again.
  • Some tools are absent by design. White-label/agency accounts do not get the tools that return raw Google content (search_places, check_keyword, sync_reviews, discover_competitors, run_grid_scan, import_gbp_business, …). If a tool is "not found", say the account is not cleared for it rather than guessing.
  • Photo upload and Google / Search Console OAuth stay in the web app (file bytes and a browser). Everything else is available here.
  • IDs are UUIDs scoped to the token's account — a 404 on a valid-looking UUID usually means it belongs to another account.
  • The token is a credential: never commit it, and scrub it from logs and transcripts. A 401 means it was revoked in Settings — ask the user to reissue.

© TerminalSkills, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (references) in skills/seog of TerminalSkills/skills.

  • SKILL.md
  • _scores.json
  • references/mcp-tools.md

Open the folder on GitHubat commit a021875

Compare with similar skills

Seog next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Seog compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Seog this skillTerminalSkills/skills163—~3.4kAutomated safety check: PassApache-2.0
SEO Project Setuppetera2c/simple-table2292 repos~1.5kAutomated safety check: PassMIT
SEONexus-JPF/note-companion870—~2.2kAutomated safety check: PassMIT
Google Mapscablate/mcp-google-map469—~909Automated safety check: PassMIT
Google Maps Local SEOcablate/mcp-google-map469—~633Automated safety check: PassMIT
Google Maps Travel Planningcablate/mcp-google-map469—~710Automated safety check: PassMIT

Similar skills

  • SEO Project Setup

    petera2c/simple-table

    Set up a durable local SEO workspace with project context, notes, goals, positioning, preferences, MCP checks, and Search Console data intake.

    229 GitHub starsUsed in 2 repos~1.5k tokens
    Marketing & SEOAuto-check passed
  • SEO

    Nexus-JPF/note-companion

    Use and read this skill immediately if the user request is in any way related to SEO or a site's organic search or AI search presence.

    870 GitHub stars~2.2k tokensUpdated 2 days ago
    Marketing & SEOAuto-check passed
  • Google Maps

    cablate/mcp-google-map

    Search places, resolve addresses, compare routes, inspect neighborhoods, and retrieve geographic or environmental facts through the standalone @cablate/mcp-google-map CLI.

    469 GitHub stars~909 tokensUpdated 12 days ago
    Marketing & SEOAuto-check passed
  • Google Maps Local SEO

    cablate/mcp-google-map

    Analyze Google Business Profile visibility, geographic grid rankings, local search keywords, and nearby competitors through the standalone Google Maps CLI.

    469 GitHub stars~633 tokensUpdated 12 days ago
    Marketing & SEOAuto-check passed
  • Google Maps Travel Planning

    cablate/mcp-google-map

    Build evidence-backed day trips, multi-day itineraries, and efficient stop sequences with Google Maps data through the standalone CLI.

    469 GitHub stars~710 tokensUpdated 12 days ago
    Marketing & SEOAuto-check passed
  • Rank Tracking

    Ryze-AI-Adgent/open-seo-mcp-skills

    Rank tracking without a tracker subscription — position movers between any two periods from real Search Console data.

    4.6k GitHub stars~573 tokensUpdated 15 days ago
    Marketing & SEOAuto-check passed

More from TerminalSkills/skills

All 10 skills in this repo
  • Blender Addon Dev

    TerminalSkills/skills

    Build custom Blender add-ons with Python. An agent skill from TerminalSkills/skills.

    163 GitHub stars~2k tokensUpdated 5 days ago
    Auto-check passed
  • Stripe Connect

    TerminalSkills/skills

    Build marketplace and platform payment flows with Stripe Connect.

    163 GitHub stars~2.9k tokensUpdated 5 days ago
    Auto-check passed
  • 3dsmax Rendering

    TerminalSkills/skills

    Scripts and configures production rendering in Autodesk 3ds Max with the V-Ray and Corona renderers: output size and files, render elements, denoising, light mix, batch and command-line rendering…

    163 GitHub stars~3.8k tokensUpdated 5 days ago
    Auto-check passed
  • 3dsmax Scripting

    TerminalSkills/skills

    Covers scripting Autodesk 3ds Max, the 3D modeling and rendering application, with MAXScript and Python (pymxs): scene manipulation, object creation, material assignment, camera and light setup…

    163 GitHub stars~3.2k tokensUpdated 5 days ago
    Auto-check passed
  • 3proxy

    TerminalSkills/skills

    3proxy is a small open-source proxy server that runs HTTP/HTTPS, SOCKS4/5, SNI and TCP/UDP port-mapping proxies from one config file.

    163 GitHub stars~3.5k tokensUpdated 5 days ago
    Auto-check: notes
  • A2a Protocol

    TerminalSkills/skills

    Builds Agent2Agent (A2A) servers and clients, the open protocol (originally from Google, now under the Linux Foundation) that lets AI agents from different frameworks call each other.

    163 GitHub stars~2.8k tokensUpdated 5 days ago
    Auto-check passed

Categories

Questions about Seog

What does Seog do?

Run local SEO from your terminal via the SEOG MCP server — Google Business Profile management, map-pack rank tracking and geo-grid scans, review sync and replies published to Google, competitor…. Seog is an agent skill from TerminalSkills/skills. Run local SEO from your terminal via the SEOG MCP server — Google Business Profile management, map-pack rank tracking and geo-grid scans, review sync and replies published to Google, competitor intelligence, AI-visibility and citation checks, website + Search Console audits, GBP posts, and PDF reports.

When should I use Seog?

Seog fits situations like: : connecting an agent to seog.ai; tracking map-pack rankings; automating local SEO reports; monitoring competitors near a business.

How do I install Seog in Claude Code?

Run `npx skills add TerminalSkills/skills --skill seog -a claude-code`. Or copy the skill folder (skills/seog in TerminalSkills/skills) into .claude/skills/seog in your project. Claude Code loads it when a task matches its description.

How do I install Seog in Codex?

Run `npx skills add TerminalSkills/skills --skill seog -a codex`. Or copy the skill folder (skills/seog in TerminalSkills/skills) into .agents/skills/seog in your project. Codex loads it when a task matches its description.

Can I use Seog in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add TerminalSkills/skills --skill seog -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/seog, .gemini/skills/seog, .github/skills/seog and .opencode/skills/seog in your project.

What does Seog need to run?

Going by SKILL.md and its folder, Seog needs the command-line tools its instructions call (claude and npx) and credentials named SEOG_MCP_TOKEN. Our summary lists: Node.js; A credential in SEOG_MCP_TOKEN. Compatibility (from SKILL.md): Any MCP client (Claude Code, Codex, Gemini CLI, Cursor); seog.ai account with an active plan — paid tools spend credits.

Does Seog access the network?

SKILL.md names 1 domain. In commands or code: api.seog.ai; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Seog safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Seog use?

Seog is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Seog use?

About 3.4k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 3.3k tokens, read only when the agent opens those files.

What are the alternatives to Seog?

Skills that share tags, products or a category with Seog: SEO Project Setup (petera2c/simple-table, 229 stars), SEO (Nexus-JPF/note-companion, 870 stars), Google Maps (cablate/mcp-google-map, 469 stars) and Google Maps Local SEO (cablate/mcp-google-map, 469 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Seog?

TerminalSkills (a GitHub organization) maintains it in TerminalSkills/skills, which has 163 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 3, 2026.

Source: TerminalSkills/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.