io.github.Misar-AI/misarseo-mcp
up checked
Unclaimed · Unverified
Agent searches it appeared in, last 30 days: 0. Run this server? Claim the listing: verified label, uptime alerts and analytics.
Publisher-provided title
MisarSEO MCP Server
Publisher-provided description
Research keywords, track rankings, audit sites, monitor backlinks and AI-search visibility — from…
Summary by lookupd
Keyword research, rank tracking, domain authority checks, competitor page change monitoring, and SERP analysis for SEO projects.
Install
Claude Code, remote (streamable-http)
claude mcp add --transport http misarseo https://api.misar.io/seo/mcp
Claude Code, npm package (stdio)
claude mcp add misarseo -- npx -y @misarseo/mcp
Codex, remote (streamable-http)
codex mcp add misarseo --url https://api.misar.io/seo/mcp
Codex, npm package (stdio)
codex mcp add misarseo -- npx -y @misarseo/mcp
Cursor, remote (streamable-http) → .cursor/mcp.json
{
"mcpServers": {
"misarseo": {
"url": "https://api.misar.io/seo/mcp"
}
}
}Cursor, npm package (stdio) → .cursor/mcp.json
{
"mcpServers": {
"misarseo": {
"command": "npx",
"args": [
"-y",
"@misarseo/mcp"
]
}
}
}Other clients: docs. Or tell your agent: Set up lookupd for me: read https://lookupd.com/agent.md and follow it.
Tools (showing 30 of 180)
Publisher-provided text
list_projectsLists the active projects in the user's organization. FREE — database only, charges no credits. Use this whenever you need a `projectId` for another MisarSEO toget_dashboardOne card per active project in the caller's organization: latest audit health, rank-tracker status, and trailing-7-day web-analytics sessions. FREE: database onresearch_keywordsResearch keyword data (search volume, difficulty, CPC, related ideas) for 1-5 seed keywords in one call — one research run per seed. Returns `results`, one entrsave_keywordsSave keywords to a project's saved-keywords list. FREE — database only, charges no credits. Idempotent: re-saving an existing keyword is a no-op. If tags are prlist_saved_keywordsLists keywords saved to a project, with whatever metrics have been cached for them (search volume, difficulty, CPC) and their tags. FREE — reads MisarSEO's ownclassify_keyword_intentClassify 1-200 keywords' search intent from their wording: informational, navigational, commercial, transactional, or unknown. Uses the SAME wording heuristic kget_keyword_potentialParent Topic and Traffic Potential for one keyword, built from real SERP overlap across a BOUNDED set (up to 5) of related keywords — not a full keyword-to-URLget_keyword_serp_overviewPer-keyword SERP overview: a fresh live SERP snapshot for the keyword, PLUS — when this exact keyword happens to already be tracked in this project's rank trackget_keyword_strategyKeyword Strategy Builder: a volume -> cluster -> page -> brief pipeline over 1-500 pasted keywords, composed entirely from existing pieces — the same bulk keywoget_topic_researchContent ideas for a seed keyword, composed from three sources this codebase already fetches for other features: the SERP for the seed (titles of pages already rget_keyword_list_share_of_voiceShare of Voice across a saved keyword list: the project's own domain plus up to 3 competitor domains, scored over a saved-keyword tag ("a saved keyword list" inget_domain_overviewReturns a high-level view of a domain's organic footprint: estimated organic traffic, organic keyword count, and a 0-100 domain authority score. Use this firstget_domain_batchDomain batch analysis: one authority row per domain, up to 100 at once. FREE — no paid provider call, unlike get_domain_overview. `organicTraffic`, `organicKeywget_domain_authority_historyDomain-authority history: the stored trend of dated authority snapshots for one project+domain, oldest first. FREE (no credits) — reads back snapshots already ccapture_domain_authority_snapshotCapture a domain-authority snapshot now: calls the same free resolver get_domain_overview already uses and records today's reading, so get_domain_authority_histfind_serp_competitorsCompares domains competing in search results for a supplied keyword set. Useful for market and search-intelligence reports; not radius-based local SEO. The inveget_keyword_gapCompares the project's own domain against up to 3 competitor domains and classifies every keyword a competitor ranks for as missing / behind / tied / ahead / unlist_competitor_monitorsCompetitor page change detection: the specific competitor URLs monitored for a project, with `lastCheckedAt` (null until the first scheduled check reaches it).add_competitor_monitorStart monitoring one competitor page for changes: title/meta, a real line-level content diff (added/removed/unchanged line counts — never a fabricated similaritremove_competitor_monitorStops monitoring one competitor URL. Its historical snapshots and detected changes are deleted along with it (cascading delete) — unlike rank tracking's competiget_competitor_monitor_changesTimeline of DETECTED changes for one monitored competitor URL, newest first — a check that found nothing does not appear here. Each entry's summary is a real diget_rank_trackerRead-only access to rank tracker configs and their latest results. With `trackerId`, returns the config plus the latest snapshot per keyword. Without it, listsadd_rank_tracking_keywordsAdds keywords to an existing rank tracker config. Returns `{ added, addedIds }` — `added` counts only genuinely new keywords; anything already tracked for thisget_rank_config_trendPer-run keyword-position-distribution buckets for a tracker, oldest first — how many tracked keywords sit in the top 3, 4-10, 11-20, or outside the top 20, perget_rank_moversNewcomers and fast climbers for a tracker's OWN domain, over a window. `newlyRanking` is keywords that started ranking during the window (no earlier position, oget_rank_keyword_historyPer-keyword position series over time, oldest first — the same series the app's SERP-history chart draws for one tracked keyword. FREE: database only. No SEO daget_rank_volatility_indexSERP volatility index across recent runs — how much this tracker's own positions churned run over run, derived entirely from already-stored history (no new SERPget_rank_ai_overview_trendAI Overview presence trend across a tracker's keywords, oldest first — what share of tracked keywords showed Google's AI Overview in the SERP, per check run, anlist_rank_annotationsChart notes on a rank tracker's own timeline — 'deployed new title tags', 'algorithm update' — oldest first. FREE: database only, no SEO data provider is calledadd_rank_annotationAdds a chart note to a rank tracker's own timeline. FREE: database only, no SEO data provider is called and no credits are spent. Config-level, not per-keyword
Details
- Version: 1.0.0
- Transports: streamable-http, stdio
- Uptime (7 days): 100%
- Median latency: 1971 ms
- First indexed:
- Last seen in registry:
- Repository: https://github.com/Misar-AI/misarseo-mcp
- Website: https://www.misarseo.com
Badge for your README
Shows this live status and links here; updates hourly.
[](https://lookupd.com/servers/io.github.Misar-AI/misarseo-mcp)
- 62071 servers
- Last crawl: 2026-11-11T16:39:06.253Z
- API base:
https://api.lookupd.com - MCP URL:
https://api.lookupd.com/mcp