Skip to main content
Glama

SEO opportunity

onelence_get_seo_opportunity
Read-onlyIdempotent

One SEO opportunity by id from onelence_list_seo_opportunities, with its step-by-step brief: what to do, what to change and check, why now, the facts behind it (each with where it comes from) and blockers. Pass the same window as the list, if any.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "opportunity_id": "<opportunity_id>"
    },
    "name": "onelence_get_seo_opportunity"
  }
}

Input Schema

NameRequiredDescriptionDefault
endNoWindow end, inclusive for a date. Defaults to now.
siteNoSite domain (e.g. example.com) or site id. Defaults to the workspace's newest active site.
startNoWindow start: a date (YYYY-MM-DD) or ISO 8601 date-time. Defaults to 30 days before end.
opportunity_idYesThe opportunity id from the SEO opportunities list.

Output Schema

NameRequiredDescriptionDefault
idYes
whyYes
kindYes
laneYes
pageYes
briefYes
queryYes
titleYes
topicYes
effortYes
objectYes
urgencyYes
conflictsYes
next_stepYes
confidenceYes
page_valueYes
dispositionYes
action_stateYes
focus_queriesYes
page_visitorsYes
primary_reasonYes
page_conversionsYes
search_potentialYes
candidate_fingerprintYesOpaque version token. Choosing the opportunity requires the same value.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and a closed world, so the safety profile is covered. The description adds beyond that by disclosing what comes back (step-by-step brief, facts with provenance, blockers) and the consistency requirement that the window should match the originating list call, which is non-obvious behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence leads with the resource and id source, then the payload. The trailing enumeration of brief contents is long and partly redundant with the output schema, but every clause is informative and there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only fetch with an output schema and fully documented parameters, the description covers the id source, window consistency and payload shape. It does not say what happens if the id is stale or the window does not match the list, which is the only notable gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3; the description earns extra by telling the agent that start/end should mirror the list invocation and that opportunity_id must come from the list, adding coupling semantics the schema cannot express. Site and the window defaults are left entirely to the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('One SEO opportunity by id') and pins the id's origin to the sibling tool onelence_list_seo_opportunities, so an agent can distinguish it from that list tool without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies the correct flow (list first, then fetch one by id) and adds a real usage constraint: reuse the same window as the list call. It stops short of naming alternatives or exclusions, e.g. when to prefer onelence_choose_seo_opportunity or onelence_get_briefing instead.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.