Find who links to your competitors but not you, judge each opening, and draft the pitch.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Bearer <your Mentionry API key>. Create one free at https://mentionry.com/dashboard/account
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Find 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.
Up to five competitor domains.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Find 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.
| Argument | Type | Description |
|---|---|---|
| domain* | string | |
| competitors | array | Up to five competitor domains. |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string"
},
"competitors": {
"type": "array",
"items": {
"type": "string"
},
"description": "Up to five competitor domains."
}
},
"additionalProperties": false
}Cancel a queued job. Running work can already have provider cost or a completed artifact; cancellation cannot guarantee a refund or rollback.
| Argument | Type | Description |
|---|---|---|
| jobId* | string | |
| workspace | string |
{
"type": "object",
"required": [
"jobId"
],
"properties": {
"jobId": {
"type": "string",
"pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
},
"workspace": {
"type": "string",
"maxLength": 100,
"minLength": 1
}
},
"additionalProperties": false
}What 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.
| Argument | Type | Description |
|---|---|---|
| agent_id* | string | From list_agents. |
{
"type": "object",
"required": [
"agent_id"
],
"properties": {
"agent_id": {
"type": "string",
"description": "From list_agents."
}
},
"additionalProperties": false
}Find 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.
| Argument | Type | Description |
|---|---|---|
| domain* | string | |
| keywords | array | Optional. Sharpens the search half. |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string"
},
"keywords": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional. Sharpens the search half."
}
},
"additionalProperties": false
}Dismiss suggested/reviewed/prepared work without deleting artifacts. Requires expectedVersion and idempotencyKey. Prevents future automatic preparation; does not undo already running work or applied evidence.
| Argument | Type | Description |
|---|---|---|
| reason | string | |
| actionId* | string | |
| workspace | string | |
| idempotencyKey* | string | |
| expectedVersion* | string |
{
"type": "object",
"required": [
"actionId",
"expectedVersion",
"idempotencyKey"
],
"properties": {
"reason": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"actionId": {
"type": "string",
"maxLength": 100,
"minLength": 1
},
"workspace": {
"type": "string",
"maxLength": 100
},
"idempotencyKey": {
"type": "string",
"pattern": "^[A-Za-z0-9._:-]{12,128}$"
},
"expectedVersion": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
}
},
"additionalProperties": false
}Write 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.
| Argument | Type | Description |
|---|---|---|
| hook* | string | Why this page would link to you. |
| page_title | string | |
| description | string | What your site does. |
| sender_name | string | |
| sender_site* | string | Your domain. |
| prospect_url* | string | The page you want the link on. |
{
"type": "object",
"required": [
"prospect_url",
"hook",
"sender_site"
],
"properties": {
"hook": {
"type": "string",
"description": "Why this page would link to you."
},
"page_title": {
"type": "string"
},
"description": {
"type": "string",
"description": "What your site does."
},
"sender_name": {
"type": "string"
},
"sender_site": {
"type": "string",
"description": "Your domain."
},
"prospect_url": {
"type": "string",
"description": "The page you want the link on."
}
},
"additionalProperties": false
}Search 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.
| Argument | Type | Description |
|---|---|---|
| topic | string | Optional. Narrows the search to one theme. |
| domain* | string | |
| audience | string | |
| keywords | array | |
| description | string | What the site does. Use read_site if you do not have one. |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"topic": {
"type": "string",
"description": "Optional. Narrows the search to one theme."
},
"domain": {
"type": "string"
},
"audience": {
"type": "string"
},
"keywords": {
"type": "array",
"items": {
"type": "string"
}
},
"description": {
"type": "string",
"description": "What the site does. Use read_site if you do not have one."
}
},
"additionalProperties": false
}The 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.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}List your owned active brand workspaces for subsequent reads.
| Argument | Type | Description |
|---|---|---|
| url | string | Exact URL in the saved map; required for page/keywords/connections. |
| area | string | |
| days | integer | |
| limit | integer | |
| offset | integer | |
| direction | string | |
| workspace | string | Owned active workspace ID; omit for main brand. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Exact URL in the saved map; required for page/keywords/connections."
},
"area": {
"enum": [
"SEO",
"GEO",
"both"
],
"type": "string"
},
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
},
"direction": {
"enum": [
"in",
"out",
"both"
],
"type": "string"
},
"workspace": {
"type": "string",
"description": "Owned active workspace ID; omit for main brand."
}
},
"additionalProperties": false
}Which 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.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}The 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.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}The pictures and clips already generated on this account, newest first, with their addresses. Free.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Queue 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.
| Argument | Type | Description |
|---|---|---|
| actionId* | string | |
| workspace | string | |
| idempotencyKey* | string | Reuse the same key and original arguments after an uncertain response. |
{
"type": "object",
"required": [
"actionId",
"idempotencyKey"
],
"properties": {
"actionId": {
"type": "string",
"maxLength": 100,
"minLength": 1
},
"workspace": {
"type": "string",
"maxLength": 100,
"minLength": 1
},
"idempotencyKey": {
"type": "string",
"pattern": "^[A-Za-z0-9._:-]{12,128}$",
"description": "Reuse the same key and original arguments after an uncertain response."
}
},
"additionalProperties": false
}Judge 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.
| Argument | Type | Description |
|---|---|---|
| domain* | string | The domain to judge, for example mentionry.com |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "The domain to judge, for example mentionry.com"
}
},
"additionalProperties": false
}Prioritized page actions with evidence, implementation steps, confidence, limits and outcome verification.
| Argument | Type | Description |
|---|---|---|
| url | string | Exact URL in the saved map; required for page/keywords/connections. |
| area | string | |
| days | integer | |
| limit | integer | |
| offset | integer | |
| direction | string | |
| workspace | string | Owned active workspace ID; omit for main brand. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Exact URL in the saved map; required for page/keywords/connections."
},
"area": {
"enum": [
"SEO",
"GEO",
"both"
],
"type": "string"
},
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
},
"direction": {
"enum": [
"in",
"out",
"both"
],
"type": "string"
},
"workspace": {
"type": "string",
"description": "Owned active workspace ID; omit for main brand."
}
},
"additionalProperties": false
}Discover saved resources, plan coverage, shared collection ceilings, protocol links and sample workflow without provider spending.
| Argument | Type | Description |
|---|---|---|
| url | string | Exact URL in the saved map; required for page/keywords/connections. |
| area | string | |
| days | integer | |
| limit | integer | |
| offset | integer | |
| direction | string | |
| workspace | string | Owned active workspace ID; omit for main brand. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Exact URL in the saved map; required for page/keywords/connections."
},
"area": {
"enum": [
"SEO",
"GEO",
"both"
],
"type": "string"
},
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
},
"direction": {
"enum": [
"in",
"out",
"both"
],
"type": "string"
},
"workspace": {
"type": "string",
"description": "Owned active workspace ID; omit for main brand."
}
},
"additionalProperties": false
}Saved brand coverage and next SEO/GEO actions; no paid collection.
| Argument | Type | Description |
|---|---|---|
| url | string | Exact URL in the saved map; required for page/keywords/connections. |
| area | string | |
| days | integer | |
| limit | integer | |
| offset | integer | |
| direction | string | |
| workspace | string | Owned active workspace ID; omit for main brand. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Exact URL in the saved map; required for page/keywords/connections."
},
"area": {
"enum": [
"SEO",
"GEO",
"both"
],
"type": "string"
},
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
},
"direction": {
"enum": [
"in",
"out",
"both"
],
"type": "string"
},
"workspace": {
"type": "string",
"description": "Owned active workspace ID; omit for main brand."
}
},
"additionalProperties": false
}Saved 30-day answer-engine visibility and competitors, with explicit denominator and sample limits.
| Argument | Type | Description |
|---|---|---|
| url | string | Exact URL in the saved map; required for page/keywords/connections. |
| area | string | |
| days | integer | |
| limit | integer | |
| offset | integer | |
| direction | string | |
| workspace | string | Owned active workspace ID; omit for main brand. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Exact URL in the saved map; required for page/keywords/connections."
},
"area": {
"enum": [
"SEO",
"GEO",
"both"
],
"type": "string"
},
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
},
"direction": {
"enum": [
"in",
"out",
"both"
],
"type": "string"
},
"workspace": {
"type": "string",
"description": "Owned active workspace ID; omit for main brand."
}
},
"additionalProperties": false
}The 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.
| Argument | Type | Description |
|---|---|---|
| version | number | 1 is the newest. Omit for the newest. |
| document_id* | string | From list_documents. |
{
"type": "object",
"required": [
"document_id"
],
"properties": {
"version": {
"type": "number",
"description": "1 is the newest. Omit for the newest."
},
"document_id": {
"type": "string",
"description": "From list_documents."
}
},
"additionalProperties": false
}Saved 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.
| Argument | Type | Description |
|---|---|---|
| url | string | Exact URL in the saved map; required for page/keywords/connections. |
| area | string | |
| days | integer | |
| limit | integer | |
| offset | integer | |
| direction | string | |
| workspace | string | Owned active workspace ID; omit for main brand. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Exact URL in the saved map; required for page/keywords/connections."
},
"area": {
"enum": [
"SEO",
"GEO",
"both"
],
"type": "string"
},
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
},
"direction": {
"enum": [
"in",
"out",
"both"
],
"type": "string"
},
"workspace": {
"type": "string",
"description": "Owned active workspace ID; omit for main brand."
}
},
"additionalProperties": false
}Actual sampled incoming/outgoing links with anchor text and nofollow evidence.
| Argument | Type | Description |
|---|---|---|
| url* | string | Exact URL in the saved map; required for page/keywords/connections. |
| area | string | |
| days | integer | |
| limit | integer | |
| offset | integer | |
| direction | string | |
| workspace | string | Owned active workspace ID; omit for main brand. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Exact URL in the saved map; required for page/keywords/connections."
},
"area": {
"enum": [
"SEO",
"GEO",
"both"
],
"type": "string"
},
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
},
"direction": {
"enum": [
"in",
"out",
"both"
],
"type": "string"
},
"workspace": {
"type": "string",
"description": "Owned active workspace ID; omit for main brand."
}
},
"additionalProperties": false
}Read saved deployment declarations and public HTML observations. Never fetches a page or starts work.
| Argument | Type | Description |
|---|---|---|
| workspace | string | |
| documentId | string | |
| deploymentId | string |
{
"type": "object",
"properties": {
"workspace": {
"type": "string",
"maxLength": 100,
"minLength": 1
},
"documentId": {
"type": "string",
"maxLength": 100,
"minLength": 1
},
"deploymentId": {
"type": "string",
"pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
}
},
"additionalProperties": false
}One mapped page, keyword topics, SEO/GEO action plan and internal connections.
| Argument | Type | Description |
|---|---|---|
| url* | string | Exact URL in the saved map; required for page/keywords/connections. |
| area | string | |
| days | integer | |
| limit | integer | |
| offset | integer | |
| direction | string | |
| workspace | string | Owned active workspace ID; omit for main brand. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Exact URL in the saved map; required for page/keywords/connections."
},
"area": {
"enum": [
"SEO",
"GEO",
"both"
],
"type": "string"
},
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
},
"direction": {
"enum": [
"in",
"out",
"both"
],
"type": "string"
},
"workspace": {
"type": "string",
"description": "Owned active workspace ID; omit for main brand."
}
},
"additionalProperties": false
}All collected keyword rows for a mapped page, with lexical topic labels; paginated, not complete keyword discovery.
| Argument | Type | Description |
|---|---|---|
| url* | string | Exact URL in the saved map; required for page/keywords/connections. |
| area | string | |
| days | integer | |
| limit | integer | |
| offset | integer | |
| direction | string | |
| workspace | string | Owned active workspace ID; omit for main brand. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Exact URL in the saved map; required for page/keywords/connections."
},
"area": {
"enum": [
"SEO",
"GEO",
"both"
],
"type": "string"
},
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
},
"direction": {
"enum": [
"in",
"out",
"both"
],
"type": "string"
},
"workspace": {
"type": "string",
"description": "Owned active workspace ID; omit for main brand."
}
},
"additionalProperties": false
}Read one owned mapped action, its current stateVersion and cursor-paginated audit history. Saved data only; no provider work.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| before | string | |
| actionId* | string | |
| workspace | string |
{
"type": "object",
"required": [
"actionId"
],
"properties": {
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"before": {
"type": "string",
"pattern": "^[1-9][0-9]{0,18}$"
},
"actionId": {
"type": "string",
"maxLength": 100,
"minLength": 1
},
"workspace": {
"type": "string",
"maxLength": 100
}
},
"additionalProperties": false
}Saved 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.
| Argument | Type | Description |
|---|---|---|
| url | string | Exact URL in the saved map; required for page/keywords/connections. |
| area | string | |
| days | integer | |
| limit | integer | |
| offset | integer | |
| direction | string | |
| workspace | string | Owned active workspace ID; omit for main brand. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Exact URL in the saved map; required for page/keywords/connections."
},
"area": {
"enum": [
"SEO",
"GEO",
"both"
],
"type": "string"
},
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
},
"direction": {
"enum": [
"in",
"out",
"both"
],
"type": "string"
},
"workspace": {
"type": "string",
"description": "Owned active workspace ID; omit for main brand."
}
},
"additionalProperties": false
}Read a saved preparation job status; never schedules work or calls paid providers.
| Argument | Type | Description |
|---|---|---|
| jobId* | string | |
| workspace | string |
{
"type": "object",
"required": [
"jobId"
],
"properties": {
"jobId": {
"type": "string",
"pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
},
"workspace": {
"type": "string",
"maxLength": 100,
"minLength": 1
}
},
"additionalProperties": false
}Saved source-grounded copy changes and before/after evidence. Add a mapped URL for the full artifact; no generation, publishing or provider requests.
| Argument | Type | Description |
|---|---|---|
| url | string | Exact URL in the saved map; required for page/keywords/connections. |
| area | string | |
| days | integer | |
| limit | integer | |
| offset | integer | |
| direction | string | |
| workspace | string | Owned active workspace ID; omit for main brand. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Exact URL in the saved map; required for page/keywords/connections."
},
"area": {
"enum": [
"SEO",
"GEO",
"both"
],
"type": "string"
},
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
},
"direction": {
"enum": [
"in",
"out",
"both"
],
"type": "string"
},
"workspace": {
"type": "string",
"description": "Owned active workspace ID; omit for main brand."
}
},
"additionalProperties": false
}Saved finalized query/page/country/device rows and matching prior28day samples. Plan-limited mapped pages; no refresh, provider call or causal lift claim.
| Argument | Type | Description |
|---|---|---|
| url | string | Exact URL in the saved map; required for page/keywords/connections. |
| area | string | |
| days | integer | |
| limit | integer | |
| offset | integer | |
| direction | string | |
| workspace | string | Owned active workspace ID; omit for main brand. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Exact URL in the saved map; required for page/keywords/connections."
},
"area": {
"enum": [
"SEO",
"GEO",
"both"
],
"type": "string"
},
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
},
"direction": {
"enum": [
"in",
"out",
"both"
],
"type": "string"
},
"workspace": {
"type": "string",
"description": "Owned active workspace ID; omit for main brand."
}
},
"additionalProperties": false
}Saved keyword positions by snapshot, URL and market. Indexed database samples, not a live rank campaign; absent observations are unknown.
| Argument | Type | Description |
|---|---|---|
| url | string | Exact URL in the saved map; required for page/keywords/connections. |
| area | string | |
| days | integer | |
| limit | integer | |
| offset | integer | |
| direction | string | |
| workspace | string | Owned active workspace ID; omit for main brand. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Exact URL in the saved map; required for page/keywords/connections."
},
"area": {
"enum": [
"SEO",
"GEO",
"both"
],
"type": "string"
},
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
},
"direction": {
"enum": [
"in",
"out",
"both"
],
"type": "string"
},
"workspace": {
"type": "string",
"description": "Owned active workspace ID; omit for main brand."
}
},
"additionalProperties": false
}Read 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.
| Argument | Type | Description |
|---|---|---|
| domain* | string |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string"
}
},
"additionalProperties": false
}The 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.
| Argument | Type | Description |
|---|---|---|
| days | number | Window length in days. Default 30. |
| dimension* | string | How to group. `day` for a trend over time; the others compare buckets. |
{
"type": "object",
"required": [
"dimension"
],
"properties": {
"days": {
"type": "number",
"description": "Window length in days. Default 30."
},
"dimension": {
"enum": [
"day",
"model",
"region",
"persona",
"prompt",
"topic"
],
"type": "string",
"description": "How to group. `day` for a trend over time; the others compare buckets."
}
},
"additionalProperties": false
}Pages and readiness in the entitled saved website map.
| Argument | Type | Description |
|---|---|---|
| url | string | Exact URL in the saved map; required for page/keywords/connections. |
| area | string | |
| days | integer | |
| limit | integer | |
| offset | integer | |
| direction | string | |
| workspace | string | Owned active workspace ID; omit for main brand. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Exact URL in the saved map; required for page/keywords/connections."
},
"area": {
"enum": [
"SEO",
"GEO",
"both"
],
"type": "string"
},
"days": {
"type": "integer",
"default": 30,
"maximum": 90,
"minimum": 1
},
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
},
"direction": {
"enum": [
"in",
"out",
"both"
],
"type": "string"
},
"workspace": {
"type": "string",
"description": "Owned active workspace ID; omit for main brand."
}
},
"additionalProperties": false
}Declare 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.
| Argument | Type | Description |
|---|---|---|
| reviewed* | boolean | Confirm editorial review and that changes have actually been applied. |
| workspace | string | |
| deployedAt* | string | Actual applied ISO8601 timestamp with timezone, within the last 90 days. Server validates calendar and time window. |
| documentId* | string | |
| idempotencyKey* | string | Reuse the same key and original declaration after an uncertain response. |
{
"type": "object",
"required": [
"documentId",
"deployedAt",
"idempotencyKey",
"reviewed"
],
"properties": {
"reviewed": {
"type": "boolean",
"const": true,
"description": "Confirm editorial review and that changes have actually been applied."
},
"workspace": {
"type": "string",
"maxLength": 100,
"minLength": 1
},
"deployedAt": {
"type": "string",
"maxLength": 40,
"minLength": 20,
"description": "Actual applied ISO8601 timestamp with timezone, within the last 90 days. Server validates calendar and time window."
},
"documentId": {
"type": "string",
"maxLength": 100,
"minLength": 1
},
"idempotencyKey": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{12,128}$",
"description": "Reuse the same key and original declaration after an uncertain response."
}
},
"additionalProperties": false
}Restore 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.
| Argument | Type | Description |
|---|---|---|
| reason | string | |
| actionId* | string | |
| workspace | string | |
| idempotencyKey* | string | |
| expectedVersion* | string |
{
"type": "object",
"required": [
"actionId",
"expectedVersion",
"idempotencyKey"
],
"properties": {
"reason": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"actionId": {
"type": "string",
"maxLength": 100,
"minLength": 1
},
"workspace": {
"type": "string",
"maxLength": 100
},
"idempotencyKey": {
"type": "string",
"pattern": "^[A-Za-z0-9._:-]{12,128}$"
},
"expectedVersion": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
}
},
"additionalProperties": false
}Mark a suggestion reviewed using expectedVersion and idempotencyKey. Task triage only, not copy approval, generation, publication or outcome verification.
| Argument | Type | Description |
|---|---|---|
| reason | string | |
| actionId* | string | |
| workspace | string | |
| idempotencyKey* | string | |
| expectedVersion* | string |
{
"type": "object",
"required": [
"actionId",
"expectedVersion",
"idempotencyKey"
],
"properties": {
"reason": {
"type": "string",
"maxLength": 500,
"minLength": 1
},
"actionId": {
"type": "string",
"maxLength": 100,
"minLength": 1
},
"workspace": {
"type": "string",
"maxLength": 100
},
"idempotencyKey": {
"type": "string",
"pattern": "^[A-Za-z0-9._:-]{12,128}$"
},
"expectedVersion": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
}
},
"additionalProperties": false
}Run 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.
| Argument | Type | Description |
|---|---|---|
| inputs | object | The agent's declared inputs, keyed by `key`. Values are strings. |
| agent_id* | string | From list_agents. |
{
"type": "object",
"required": [
"agent_id"
],
"properties": {
"inputs": {
"type": "object",
"description": "The agent's declared inputs, keyed by `key`. Values are strings.",
"additionalProperties": {
"type": "string"
}
},
"agent_id": {
"type": "string",
"description": "From list_agents."
}
},
"additionalProperties": false
}Check 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.
| Argument | Type | Description |
|---|---|---|
| domain* | string | Your domain. |
| pitched* | array | The domains or URLs you pitched. |
{
"type": "object",
"required": [
"domain",
"pitched"
],
"properties": {
"domain": {
"type": "string",
"description": "Your domain."
},
"pitched": {
"type": "array",
"items": {
"type": "string"
},
"description": "The domains or URLs you pitched."
}
},
"additionalProperties": false
}Write 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.
| Argument | Type | Description |
|---|---|---|
| goal* | string | |
| tone | string | |
| notes | string | |
| offer | string | |
| title* | string | The template's name in Documents and the subject line. |
| images | array | /m/... addresses from generate_image. |
| cta_url | string | |
| audience | string | |
| cta_text | string | |
| sections | array | |
Write 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.
| Argument | Type | Description |
|---|---|---|
| goal* | string | What the page must make the reader do, in one sentence. |
| tone | string | |
| notes | string | Anything else to honour: colours, length, what to avoid. |
| offer | string | |
| title* | string | The page's name in Documents and its <title>. |
| images | array | /m/... addresses from generate_image, in the order to use them. |
| cta_url | string | |
| audience | string | |
| cta_text | string | |
| sections | array |
| preheader |
| string |
{
"type": "object",
"required": [
"title",
"goal"
],
"properties": {
"goal": {
"type": "string"
},
"tone": {
"type": "string"
},
"notes": {
"type": "string"
},
"offer": {
"type": "string"
},
"title": {
"type": "string",
"description": "The template's name in Documents and the subject line."
},
"images": {
"type": "array",
"items": {
"type": "string"
},
"description": "/m/... addresses from generate_image."
},
"cta_url": {
"type": "string"
},
"audience": {
"type": "string"
},
"cta_text": {
"type": "string"
},
"sections": {
"type": "array",
"items": {
"type": "string"
}
},
"preheader": {
"type": "string"
}
},
"additionalProperties": false
}| The sections wanted, in order, each in a few words. |
{
"type": "object",
"required": [
"title",
"goal"
],
"properties": {
"goal": {
"type": "string",
"description": "What the page must make the reader do, in one sentence."
},
"tone": {
"type": "string"
},
"notes": {
"type": "string",
"description": "Anything else to honour: colours, length, what to avoid."
},
"offer": {
"type": "string"
},
"title": {
"type": "string",
"description": "The page's name in Documents and its <title>."
},
"images": {
"type": "array",
"items": {
"type": "string"
},
"description": "/m/... addresses from generate_image, in the order to use them."
},
"cta_url": {
"type": "string"
},
"audience": {
"type": "string"
},
"cta_text": {
"type": "string"
},
"sections": {
"type": "array",
"items": {
"type": "string"
},
"description": "The sections wanted, in order, each in a few words."
}
},
"additionalProperties": false
}