Skip to main content
Glama

MisarSEO MCP Server

get_rank_movers

Read-onlyIdempotent

Newcomers 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 minGain positions. FREE: database only. No SEO data provider is called and no credits are spent. THIS IS NOT COMPETITOR DISCOVERY. No corpus of undeclared domains exists in this codebase to discover a newcomer domain from — a rank check only ever persists positions for the target domain and the already-tracked competitor list; every other domain in a fetched SERP is read and discarded. Do not describe a newlyRanking entry as a 'new competitor' or 'newly discovered domain' — it is a keyword the TRACKED domain itself started ranking for, nothing about a competitor. newlyRanking entries always have gain: null — there is no earlier position to measure a gain from, and minGain never filters them.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
minGainNoPositions a keyword must have gained to count as a fast climber, 1–100. Defaults to 5. Does not affect newlyRanking, which has no earlier position to measure a gain from.
configIdYesRank tracker config ID. Call get_rank_tracker without a trackerId to list the project's trackers and their IDs.
projectIdYesRequired. The MisarSEO project ID to scope this call to. Get one from list_projects.
sinceDaysNoHow many days back to look, 1–730. Defaults to 365.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior5/5

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

Annotations cover the safety profile (readOnly, idempotent, non-destructive, closed-world), and the description adds meaningful semantics beyond that: no external provider is called, no credits are spent, newlyRanking entries always carry gain: null, and minGain never filters them. It also corrects a likely misinterpretation (newlyRanking is not a new competitor domain).

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

Conciseness3/5

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

Front-loaded and mostly earned, but the anti-competitor point is made twice and the gain:null / minGain-doesn't-filter facts are repeated in both the first and third blocks. Tightening would help.

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?

With no output schema, the description usefully defines what newlyRanking and fastClimbers contain and how the window works, which is what an agent needs to interpret results. Pagination, ordering and result limits are not addressed, leaving a minor gap.

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

Parameters3/5

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

Schema description coverage is 100%, so minGain, configId, projectId and sinceDays are already documented with defaults and ranges. The description restates the minGain/newlyRanking interaction but adds little the schema does not already say, so the baseline 3 applies.

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+resource (newcomers and fast climbers for a tracker's OWN domain over a window) and defines the two output buckets. It explicitly distinguishes itself from competitor-discovery siblings, so an agent can route correctly without opening other schemas.

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?

Gives strong negative guidance ('THIS IS NOT COMPETITOR DISCOVERY') and a cost condition (FREE, no provider called, no credits spent). It lacks positive routing to alternatives like get_rank_config_trend or get_rank_keyword_history, so it is clear context but not full when/when-not coverage.

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.