MuseDirectory
All apps / Marketing & Ads
Marketing & Ads

MisarSEO

Research keywords, track rankings, audit sites, monitor backlinks and AI-search visibility

SEO platform connecting to search data providers for keyword research, rank tracking across markets, competitor monitoring, site audits, and organic traffic analysis. Muse can help marketers research keywords, track ranking positions, identify content gaps, and monitor competitor changes.

Try asking Muse: "Show me which keywords my competitors rank for that I don't, and what content I should create to compete in those areas."

Useful? Vote it up. One vote per person, tap again to undo.
See the most upvoted connectors
Working now?
Working
Worked last 7 days
n/a
How to get it
Extra setup
Account
Needs an access key
Price
Not stated
Works in

Source: Found in the official MCP Registry (io.github.Misar-AI/misarseo-mcp) · First listed October 29, 2026

Last 24 hours

Each bar is one check, every 15 minutes. Green means it answered. Last checked 3 h ago.

New to Muse?Muse is Meta's AI assistant. MisarSEO is an app you add to it, and once it is on, you can ask Muse to do this for you: research keywords, track rankings, audit sites, monitor backlinks and ai-search visibility. It takes about two minutes and you can turn it off any time.

Is it safe to connect?

What Muse can see: You sign in to your own account with it, so Muse can reach what that account allows. Read what it asks for before you agree.

Before it acts: Read what Muse plans to do before you approve it, and remove the app from Muse when you stop using it.

musedirectory.ai is not part of Meta. More about how Muse handles your information

How to add it to Muse

Not in Muse's Connectors list yet, but Muse can still use it. Copy the request below and paste it into Muse. Muse asks before it shares anything with the app's site. Meta does not review apps used this way, so only use ones you trust. We tested this in the Muse app on September 24, 2026: Muse used an app's link directly this way and returned a live answer.

Open Muse
https://api.misar.io/seo/mcp

Not in Muse's Connectors list yet. Muse can still use it: its page gives you a request to paste into Muse.

Also use it in ChatGPT or Claude

MisarSEO is a remote MCP server, so any assistant that can add a custom connector by link can use it. Same link, same tools.

Add it to ChatGPT
  1. 1

    Open ChatGPT settings

    In ChatGPT, open Settings, then Connectors (called Apps & Connectors on some accounts).

  2. 2

    Turn on developer mode

    Under Advanced settings, switch on Developer mode. That is what lets you add a connector by link.

  3. 3

    Create the connector

    Choose Create, give it a name, paste the link as the MCP server URL, and save. If it needs a sign-in, ChatGPT asks for it here.

  4. 4

    Use it in a chat

    Start a chat, open the tools menu, pick the connector, and ask. ChatGPT asks before it runs a tool the first time.

Custom connectors need a paid ChatGPT plan, and on Team, Enterprise and Edu accounts only an admin can add them. Our "Working" label means the server answered us; it cannot tell whether your plan lets you add it. All connectors that work in ChatGPT

Add it to Claude
  1. 1

    Open Claude settings

    In Claude, open Settings, then Connectors.

  2. 2

    Add a custom connector

    Choose Add custom connector, give it a name, and paste the link.

  3. 3

    Connect and use it

    If it needs a sign-in, Claude sends you to it. Then turn the connector on in a chat from the tools menu and ask.

Custom connectors are available on paid Claude plans; on Team and Enterprise accounts an admin may need to add them. Our "Working" label means the server answered us; it cannot tell whether your plan lets you add it. All connectors that work in Claude

https://api.misar.io/seo/mcp

What people ask Muse to do

Everything Muse can do

Technical details: safety screening, tools, response time and recent checks

Response time at the last check: 723ms. Worked in n/a of checks over 30 days.

Screening · October 29, 2026

Screened, no issues found

MCP handshake
Pass
Answered in 723ms
Domain against threat feeds (Cloudflare security DNS)
Pass
api.misar.io, www.misarseo.com not flagged
Published packages against the OSV malicious-package database
Pass
No malicious-package advisories
Hidden instructions or invisible characters in tool text
Pass
120 tools read, nothing found
Inputs asking for passwords, card numbers or seed phrases
Pass
None found
Domain and redirects
Pass
No redirects off the domain
AI review of purpose and tool behavior
Pass
No concerns

Screening looks for known threats and hidden instructions at the time of the check, and runs again weekly and whenever the tool list changes. It cannot see the server's code, so only connect what you need and review what Muse asks to do. How screening works.

Tools · 40

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 tool. Returns `{id, name, domain, url}` per project; pass the `id` value as `projectId`. `domain` is null for a project th
get_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 only. No SEO data provider is called and no credits are spent — GSC and backlinks are deliberately excluded from this view
research_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 entry per seed with `ok` — a single bad seed won't fail the batch. CHARGES CREDITS ON THE PAID DATA PROVIDER: per seed, ~30-
save_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 provided, missing tags may be created. Tags are appended to whatever tags a keyword already carries. Ask the user for conf
list_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 own database, runs no provider lookup and charges no credits. Filter by keyword text with `search`; page through with `page`
classify_keyword_intentClassify 1-200 keywords' search intent from their wording: informational, navigational, commercial, transactional, or unknown. Uses the SAME wording heuristic keyword research already applies as its free-tier fallback, made directly callable for a keyword list with no research/vo
get_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-URL reverse index, which this codebase's free stack does not have. Parent Topic is the related keyword whose SERP shares the
get_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 tracking — its historical position trend and SERP volatility, read straight from the SAME rank-tracking services (`get_rank_k
get_keyword_strategyKeyword Strategy Builder: a volume -> cluster -> page -> brief pipeline over 1-500 pasted keywords, composed entirely from existing pieces — the same bulk keyword lookup, the same shared-phrase clustering engine the saved-keyword Topic Clusters feature and get_topic_research both
get_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 ranking for it), PAA-style questions (real autocomplete completions reframed as questions), and autocomplete keyword sugg
get_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" in this codebase IS a saved-keyword tag — omit tagId/tagName to mean every saved keyword in the project). Reuses the EXACT
get_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 first for domain research. `backlinks` and `referringDomains` are ALWAYS null on this tool — no data provider feeds them here,
get_domain_batchDomain batch analysis: one authority row per domain, up to 100 at once. FREE — no paid provider call, unlike get_domain_overview. `organicTraffic`, `organicKeywords`, `backlinks` and `referringDomains` are ALWAYS null on every row — batch mode never attempts the per-domain paid r
get_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 captured, no provider call. Empty until at least one snapshot exists: get_domain_overview auto-captures one whenever `dom
capture_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_history has a trend to read back. FREE (no credits), but this is a MUTATION — idempotent per UTC day, so calling it twice in
find_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 inverse of get_keyword_gap, which asks what one competitor ranks for that we do not. CHARGES CREDITS ON THE PAID DATA PROVID
get_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 / unknown. The inverse of find_serp_competitors, which asks who competes for a keyword set. CHARGES CREDITS: one ranked-keyw
list_competitor_monitorsCompetitor page change detection: the specific competitor URLs monitored for a project, with `lastCheckedAt` (null until the first scheduled check reaches it). FREE — database only, no credits spent. Use get_competitor_monitor_changes for the actual detected-change timeline of on
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 similarity score), outbound links, and structured-data types. Checked once a day; the first snapshot is captured on the NEXT sche
remove_competitor_monitorStops monitoring one competitor URL. Its historical snapshots and detected changes are deleted along with it (cascading delete) — unlike rank tracking's competitor removal, there is no separate archive kept.
get_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 diff: line-level content added/removed/unchanged counts with a short sample (never a fabricated similarity score), plus ti
get_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, lists all trackers in the project. FREE — reads stored MisarSEO state only, runs no SERP query and charges no credits. To trig
add_rank_tracking_keywordsAdds keywords to an existing rank tracker config. Returns `{ added, addedIds }` — `added` counts only genuinely new keywords; anything already tracked for this config is silently skipped, so `added` can legitimately be lower than the number of keywords sent. FREE: database only,
get_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, per check run. Use it to answer 'is this domain's visibility trending up or down' without re-checking anything. FREE: databa
get_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, or an earlier position of null). `fastClimbers` is keywords that ranked at both ends of the window and gained at least `m
get_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 data provider is called and no credits are spent. A `position` of `null` means checked but not found within that check's `
get_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 SERP calls). FREE: database only, no SEO data provider is called and no credits are spent. Modeled on the one step AccuRanke
get_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, and how that has moved over time. FREE: database only, no SEO data provider is called and no credits are spent. Reuses `ra
list_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 called and no credits are spent. Config-level, not per-keyword or per-device: a deploy or algorithm change is a fact about the
add_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 or per-device. A config can hold at most 100 notes.
remove_rank_annotationRemoves a chart note from a rank tracker's own timeline. FREE: database only, no SEO data provider is called and no credits are spent. Succeeds whether or not `id` matched an existing note.
list_rank_cannibalisationTracked keywords whose latest ranking URL is not the target URL you declared for them (see set_rank_keyword_target_url). FREE: database only, no SEO data provider is called and no credits are spent. NOT the same detector as get_cannibalisation_report (Search Console-based), which
set_rank_keyword_target_urlSets or clears the URL you intend to rank for a tracked keyword. Feeds list_rank_cannibalisation — set this for the keywords you care about, then check for a mismatch after the next run. FREE: database only, no SEO data provider is called and no credits are spent.
list_rank_keyword_tagsLists the tags in use on one rank tracker, plus the project's whole tag vocabulary. Use it to find tag IDs before calling update_rank_keyword_tag, and to see how a tracker with hundreds of keywords is already organised. FREE: database only. No SEO data provider is called and no c
update_rank_keyword_tagAttaches or detaches ONE tag across a selection of tracked keywords (up to 500 keyword IDs per call). One tag per call — applying three tags takes three calls. FREE: database only. No SEO data provider is called and no credits are spent. The tag is the project's EXISTING saved-ke
get_brave_search_rank_checkChecks where a project's domain (or an explicit targetDomain) ranks in REAL Brave Search results for one keyword. Brave has run its own independent crawler and index since 2023 — a genuinely separate, separately-licensed data source, distinct from this server's free SearXNG/opens
create_rank_trackerCreates a rank tracker config (domain + market + devices + schedule) for a project and returns its configId. Next, add keywords with add_rank_tracking_keywords. Positions are collected by the SCHEDULED check ('daily' or 'weekly'; 'manual' means never on a schedule) and read with
list_rank_tracking_keywordsLists the keywords tracked by ONE rank tracker: `{ keywords, totalCount, page, pageSize }`, each row `{ id, configId, keyword, searchVolume, keywordDifficulty, cpc, metricsFetchedAt, createdAt }`. It returns NO positions and runs no check — read positions with get_rank_tracker. T
remove_rank_tracking_keywordsRemoves keywords from a rank tracker by their tracking-keyword IDs (from list_rank_tracking_keywords). The keywords stop being checked; their past position snapshots are deliberately kept, so history survives. FREE: database only.
start_site_auditStarts a MisarSEO site crawl/audit from startUrl. Returns `{ jobId, auditId }` (the same id twice) with HTTP 202; the crawl then runs in the background — poll it with get_site_audit_status. FREE of SEO credits, but it CONSUMES ONE of the organization's monthly audits from its pla

Link

https://api.misar.io/seo/mcp

Questions about MisarSEO in Muse

How do I connect MisarSEO to Muse?

Not in Muse's Connectors list yet, but Muse can still use it. Paste this into Muse: "Use MisarSEO to help me. It is a free service with an MCP server at https://api.misar.io/seo/mcp. It needs an API key from Misar AI; ask me to enter it through your secure credential prompt. Ask me before you share anything with it." Muse asks before it shares anything with the app's site. Meta does not review apps used this way, so only use ones you trust. We tested this in the Muse app on September 24, 2026: Muse used an app's link directly this way and returned a live answer.

Is MisarSEO working right now?

At the last check (October 29, 2026, 11:26 UTC) the endpoint was working, answering in 723ms. It is checked every 15 minutes.

Is MisarSEO safe to connect to Muse?

It was screened on October 29, 2026 with the result "screened, no issues found". Screening checks the domain against threat feeds and reads the tools for hidden instructions and requests for passwords or card numbers. It cannot see the server's code, so grant only the access you need.

What can MisarSEO do in Muse?

It exposes 40 tools, including list_projects, get_dashboard, research_keywords, save_keywords. For example, you could ask Muse: "Show me which keywords my competitors rank for that I don't, and what content I should create to compete in those areas."

Follow MisarSEO

Tell me if MisarSEO goes down, comes back, or changes its tools
One email per change. You confirm first, and every email has a link to stop.
Made this app? Claim it or get a status badge

Is this yours?

This listing was added from public sources (Found in the official MCP Registry (io.github.Misar-AI/misarseo-mcp)). If you build MisarSEO, claim it to correct the details and get your badge.

Claim this listing

MisarSEO status badge

Paste this on your site or README. It always shows the latest check.

<a href="https://musedirectory.ai/connector/misarseo"><img src="https://musedirectory.ai/badge/misarseo.svg" alt="MisarSEO on musedirectory.ai" width="236" height="40"></a>

More for app makers

More
List your app, free

Independent directory. Not affiliated with Meta.