Mentionry
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Find who links to your competitors but not you, judge each opening, and draft the pitch.
| Author | com.mentionry |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 2030 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"Mentionry": {
"url": "https://mentionry.com/api/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (43)
review_answer_evidenceMark one recorded answer run reviewed, not published or improved. Requires its saved stateVersion and idempotencyKey. New runs remain separate. No provider work.
Parameters:
runId(required) — stringexpectedVersion(required) — integeridempotencyKey(required) — stringworkspace— string
Hints: read-only no · destructive no · idempotent yes · open-world no
restore_answer_evidenceRestore a reviewed recorded run to the review queue using stateVersion and idempotencyKey. No provider work, content publication or outcome claim.
Parameters:
runId(required) — stringexpectedVersion(required) — integeridempotencyKey(required) — stringworkspace— string
Hints: read-only no · destructive no · idempotent yes · open-world no
read_preparation_actionread-onlyRead one owned mapped action, its current stateVersion and cursor-paginated audit history. Saved data only; no provider work.
Parameters:
actionId(required) — stringlimit— integerbefore— stringworkspace— string
Hints: read-only yes · destructive no · idempotent yes · open-world no
review_preparation_actionMark a suggestion reviewed using expectedVersion and idempotencyKey. Task triage only, not copy approval, generation, publication or outcome verification.
Parameters:
actionId(required) — stringexpectedVersion(required) — stringidempotencyKey(required) — stringreason— stringworkspace— string
Hints: read-only no · destructive no · idempotent yes · open-world no
dismiss_preparation_actionDismiss suggested/reviewed/prepared work without deleting artifacts. Requires expectedVersion and idempotencyKey. Prevents future automatic preparation; does not undo already running work or applied evidence.
Parameters:
actionId(required) — stringexpectedVersion(required) — stringidempotencyKey(required) — stringreason— stringworkspace— string
Hints: read-only no · destructive no · idempotent yes · open-world no
restore_preparation_actionRestore dismissed/archived work with expectedVersion and idempotencyKey. Preserve existing applied/prepared evidence or return to suggested. No immediate provider work/job submission. Fresh suggestions can resume scheduled preparation; failed drafts remain explicit retries.
Parameters:
actionId(required) — stringexpectedVersion(required) — stringidempotencyKey(required) — stringreason— stringworkspace— string
Hints: read-only no · destructive no · idempotent yes · open-world no
qualify_domainJudge whether a domain is worth running link building for at all, from live search data. Returns a verdict, the measured signals behind it, and the honest case against. This is the same free diagnostic the dashboard runs, and for a large share of sites the answer is that the niche has nothing to mine.
Parameters:
domain(required) — string — The domain to judge, for example mentionry.com
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
read_siteRead a domain and return what we think it is about: a description, its audience, and the keywords it should be found for. This is the brief every other tool takes as input, so call it first when you do not already have one.
Parameters:
domain(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
discover_competitorsFind the domains competing with this one, from both search results and link profile overlap. Returns each candidate with the evidence for it, so a wrong suggestion can be recognised rather than trusted.
Parameters:
domain(required) — stringkeywords— array — Optional. Sharpens the search half.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
backlink_gapFind pages that link to the named competitors but not to you, classified by whether a link is realistically winnable and why. Competitors are excluded from their own results: a competitor is never a prospect.
Parameters:
domain(required) — stringcompetitors— array — Up to five competitor domains.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
find_prospectsSearch the open web for pages that would plausibly link to this site: resource pages, roundups, listicles and directories in its subject. Returns each with the reason it was kept.
Parameters:
domain(required) — stringtopic— string — Optional. Narrows the search to one theme.audience— stringkeywords— arraydescription— string — What the site does. Use read_site if you do not have one.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
verify_linksCheck a list of domains against your live backlink profile and report which of them now link to you, when the link first appeared, and whether it is still there. A link that was removed shows as a change rather than staying on the scoreboard.
Parameters:
domain(required) — string — Your domain.pitched(required) — array — The domains or URLs you pitched.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
draft_pitchWrite one outreach email for one prospect, in your own words, using the reason that prospect would link to you. It returns the subject and body and sends nothing: sending happens from your own mailbox, after you have read it. Requires a paid Mentionry plan.
Parameters:
prospect_url(required) — string — The page you want the link on.hook(required) — string — Why this page would link to you.sender_site(required) — string — Your domain.page_title— stringdescription— string — What your site does.sender_name— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
list_agentsThe agents on this account: what each is called, how many steps it has, whether it would run as it stands, and when it last changed. Call describe_agent next to learn what one needs before running it.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
describe_agentWhat one agent does, step by step, and what it needs: the values you must pass to run_agent, what it hands back, how many of its steps reach a vendor that charges, and anything currently stopping it from running.
Parameters:
agent_id(required) — string — From list_agents.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
run_agentRun one of your agents once and return what every step did, in order, with what it returned and how long it took. Pass its declared inputs as an object keyed by their `key` from describe_agent. Uses one included agent run. Provider calls remain subject to the shared collection allowance. Requires a paid Mentionry plan.
Parameters:
agent_id(required) — string — From list_agents.inputs— object — The agent's declared inputs, keyed by `key`. Values are strings.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
list_documentsThe documents your agents have produced: what each is called, which agent wrote it, how long it is and how many versions it has. Pass an id to read_document for the text.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
read_documentThe text of one document your agent wrote, with the agent, the step and the values that run was given. Returns the newest version unless an older one is asked for.
Parameters:
document_id(required) — string — From list_documents.version— number — 1 is the newest. Omit for the newest.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
read_visibilityThe account's own answer-engine measurements over a window: how often each tracked brand appears in recorded answers (visibility), its share of all mentions (share of voice), its mean position, and the ranking against named competitors. Group by day for a trend, or by model, region, persona, prompt or topic to find where a brand is weak. This is the data behind the dashboard's Answer Engine Insights.
Parameters:
dimension(required) — string — How to group. `day` for a trend over time; the others compare buckets.days— number — Window length in days. Default 30.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
list_connectionsWhich outside tools this account has connected, and what each one is allowed to do here. Call it before offering to file, post or draft anything, so you can say what is actually available instead of guessing.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
list_mediaThe pictures and clips already generated on this account, newest first, with their addresses. Free.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
write_landing_pageWrite a complete, responsive landing page as HTML from a brief and file it in Documents, where the customer previews it. Grounded in the brand kit when one exists. Pass the addresses of pictures you generated so the page uses them. It is private until publish_page. Spends one draft allowance.
Parameters:
title(required) — string — The page's name in Documents and its <title>.goal(required) — string — What the page must make the reader do, in one sentence.tone— stringnotes— string — Anything else to honour: colours, length, what to avoid.offer— stringimages— array — /m/... addresses from generate_image, in the order to use them.cta_url— stringaudience— stringcta_text— stringsections— array — The sections wanted, in order, each in a few words.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
write_email_templateWrite a complete HTML marketing email (tables and inline styles, so it renders in Outlook and Gmail) from a brief and file it in Documents for preview. Grounded in the brand kit when one exists. The result can go into the customer's Gmail drafts with create_email_draft or be sent through an app action, both of which ask first. Spends one draft allowance.
Parameters:
title(required) — string — The template's name in Documents and the subject line.goal(required) — stringtone— stringnotes— stringoffer— stringimages— array — /m/... addresses from generate_image.cta_url— stringaudience— stringcta_text— stringsections— arraypreheader— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
read_latest_answer_reviewsread-onlyLatest saved answer executions needing an owned-brand attribution review, with engine, recorded region/date, actual competing brands, excerpt, citations and a source-grounded review task. Last seven days; at most 200 question/engine/region/persona groups scanned per brand. Up to 30 pending and 30 reviewed/unchanged runs with triage state/version. triage.unchangedSinceReview references a prior explicit review of complete identical evidence; the current run remains reviewed=false. Use triage.needsReview for fresh tasks; changed or unverified earlier reviews need rechecking; state changes use dedicated review/restore tools. No comparison, provider calls or publication.
Parameters:
days— integerlimit— integeroffset— integerworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
read_search_console_performanceread-onlySaved finalized query/page/country/device rows and matching prior28day samples. Plan-limited mapped pages; no refresh, provider call or causal lift claim.
Parameters:
url— string — Exact URL in the saved map; required for page/keywords/connections.area— stringdays— integerlimit— integeroffset— integerdirection— stringworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
read_live_search_campaignread-onlySaved live Google desktop rank observations, full-text database suggestions and complete-link SERP-overlap groups. Includes dated compatible rank movement, explicit unknown gaps, leading-page changes and historical mapped-page associations (14 checks/90 days). URL switching is not proven cannibalization. Includes same-context sampled site overlap, not business-rival or complete-gap inference. No refresh or provider calls.
Parameters:
url— string — Exact URL in the saved map; required for page/keywords/connections.area— stringdays— integerlimit— integeroffset— integerdirection— stringworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
read_preparation_actionsread-onlySaved owned-page action IDs, source evidence and preparation states. Use an action ID with prepare_page_changes; no provider work is triggered by this read.
Parameters:
url— string — Exact URL in the saved map; required for page/keywords/connections.area— stringdays— integerlimit— integeroffset— integerdirection— stringworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
read_search_rank_historyread-onlySaved keyword positions by snapshot, URL and market. Indexed database samples, not a live rank campaign; absent observations are unknown.
Parameters:
url— string — Exact URL in the saved map; required for page/keywords/connections.area— stringdays— integerlimit— integeroffset— integerdirection— stringworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
read_prepared_page_changesread-onlySaved source-grounded copy changes and current eligibility. Add a mapped URL for an eligible full artifact. Review-only historical proposals are withheld and replaced with an intent-review task. No generation, publishing or provider requests.
Parameters:
url— string — Exact URL in the saved map; required for page/keywords/connections.area— stringdays— integerlimit— integeroffset— integerdirection— stringworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
read_agent_capabilitiesread-onlyDiscover saved resources, plan coverage, shared collection ceilings, protocol links and sample workflow without provider spending.
Parameters:
url— string — Exact URL in the saved map; required for page/keywords/connections.area— stringdays— integerlimit— integeroffset— integerdirection— stringworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
read_brand_overviewread-onlySaved brand coverage and next SEO/GEO actions; no paid collection.
Parameters:
url— string — Exact URL in the saved map; required for page/keywords/connections.area— stringdays— integerlimit— integeroffset— integerdirection— stringworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
read_actionable_insightsread-onlyPrioritized page actions with evidence, implementation steps, confidence, limits and outcome verification.
Parameters:
url— string — Exact URL in the saved map; required for page/keywords/connections.area— stringdays— integerlimit— integeroffset— integerdirection— stringworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
read_website_pagesread-onlyPages and readiness in the entitled saved website map.
Parameters:
url— string — Exact URL in the saved map; required for page/keywords/connections.area— stringdays— integerlimit— integeroffset— integerdirection— stringworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
read_page_insightsread-onlyOne mapped page, keyword topics, SEO/GEO action plan and internal connections.
Parameters:
url(required) — string — Exact URL in the saved map; required for page/keywords/connections.area— stringdays— integerlimit— integeroffset— integerdirection— stringworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
read_page_keywordsread-onlyAll collected keyword rows for a mapped page, with lexical topic labels; paginated, not complete keyword discovery.
Parameters:
url(required) — string — Exact URL in the saved map; required for page/keywords/connections.area— stringdays— integerlimit— integeroffset— integerdirection— stringworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
read_page_connectionsread-onlyActual sampled incoming/outgoing links with anchor text and nofollow evidence.
Parameters:
url(required) — string — Exact URL in the saved map; required for page/keywords/connections.area— stringdays— integerlimit— integeroffset— integerdirection— stringworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
read_brand_resultsread-onlySaved 30-day answer-engine visibility and competitors, with explicit denominator and sample limits.
Parameters:
url— string — Exact URL in the saved map; required for page/keywords/connections.area— stringdays— integerlimit— integeroffset— integerdirection— stringworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
list_brand_workspacesread-onlyList your owned active brand workspaces for subsequent reads.
Parameters:
url— string — Exact URL in the saved map; required for page/keywords/connections.area— stringdays— integerlimit— integeroffset— integerdirection— stringworkspace— string — Owned active workspace ID within this key’s scope; omit for its selected brand.
Hints: read-only yes · destructive no · idempotent yes · open-world no
record_page_deploymentDeclare that reviewed saved changes were applied to their original mapped page. Queues one bounded public HTML check, not CMS publishing, paid research or proof of ranking lift.
Parameters:
documentId(required) — stringdeployedAt(required) — string — Actual applied ISO8601 timestamp with timezone, within the last 90 days. Server validates calendar and time window.idempotencyKey(required) — string — Reuse the same key and original declaration after an uncertain response.reviewed(required) — boolean — Confirm editorial review and that changes have actually been applied.workspace— string
Hints: read-only no · destructive no · idempotent yes · open-world yes
read_page_deploymentsread-onlyRead saved deployment declarations and public HTML observations. Never fetches a page or starts work.
Parameters:
workspace— stringdocumentId— stringdeploymentId— string
Hints: read-only yes · destructive no · idempotent yes · open-world no
prepare_page_changesQueue a source-grounded draft for one saved mapped action. May consume one draft and up to $0.02 planned provider spend inside the existing subscription budget. Requires an idempotency key. Does not publish or send.
Parameters:
actionId(required) — stringidempotencyKey(required) — string — Reuse the same key and original arguments after an uncertain response.workspace— string
Hints: read-only no · destructive no · idempotent yes · open-world yes
read_preparation_jobread-onlyRead a saved preparation job status; never schedules work or calls paid providers.
Parameters:
jobId(required) — stringworkspace— string
Hints: read-only yes · destructive no · idempotent yes · open-world no
cancel_preparation_jobCancel a queued job. Running work can already have provider cost or a completed artifact; cancellation cannot guarantee a refund or rollback.
Parameters:
jobId(required) — stringworkspace— string
Hints: read-only no · destructive no · idempotent yes · open-world no
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.