Skip to main content
Glama
cmosig

RuralCheck MCP server

Upload listings

upload_listings

Sends up to 100 estate agent listings to RuralCheck, saving each as a plot with a report and share link, and returns an upload ID for tracking.

Instructions

Send an estate agent's listings to RuralCheck. Professional plan.

Each listing becomes a saved plot with a full report and a share link the agent can put in the listing. Reports run one after another on the server, about half a minute each, and wait for anyone using the site, so this returns at once with the upload's id. Follow it with get_listing_upload. Up to 100 listings run from one upload. A listing that is not run comes back with the reason, for example no position, outside the area covered, or past the limit. A listing already saved with a current report is not run again. One upload runs at a time on an account.

Input Schema

NameRequiredDescriptionDefault
nameNoA name for this upload.
listingsYesThe properties, each with name, lat, lon and reference.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the annotations: asynchronous fire-and-return with an upload id, ~30s per report, serialized server-side processing that yields to live site traffic, a 100-listing run cap per upload, per-listing skip reasons, and re-run suppression for already-current plots. These are exactly the operational traits an agent needs and none are in the structured fields.

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?

Front-loaded with purpose and effect, then consequences. Slightly dense across six sentences and the 'Up to 100 listings' point could sit nearer the top, but every sentence carries operational information.

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

Completeness5/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 correctly compensates by describing the return value (immediate upload id, not the reports) and the required follow-up call. Combined with plan requirements and failure modes, an agent has everything needed to invoke and continue correctly.

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% and both params (name, listings with lat/lon/reference) are documented in-schema, so baseline is 3. The description adds the practical 100-listing run limit but no per-field semantics beyond what the schema states.

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 ('Send an estate agent's listings to RuralCheck') and immediately clarifies the effect: each listing becomes a saved plot with a report and share link. This distinguishes it from save_plot/analyse_plot siblings, which act on a single plot.

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 clear activation context (Professional plan), names the required follow-up call (get_listing_upload), and states the concurrency constraint (one upload at a time per account). It does not explicitly say when to use this versus save_plot for a single property, which is the one remaining routing gap.

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