ListingLane Real Estate Listing Writer
Server Details
MLS-ready, Fair-Housing-safe property listing descriptions (en/ko/es) and wording checks.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 2 tools
The two tools have distinct core actions: one audits/cleans existing copy, the other generates new listing copy. There is mild overlap because write_listing_description already produces Fair-Housing-safe wording, which can make it unclear when a separate check pass is needed, but the descriptions differentiate them reasonably well.
Both tools follow a clear snake_case verb_noun pattern: check_fair_housing_wording and write_listing_description. The naming is predictable and immediately readable.
Two tools is thin for a listing-writing server, though the scope is narrow enough that it does not feel wildly excessive or mismatched. A revision/refinement tool would make the small set feel more complete.
The server covers generation and Fair Housing checking, which are the core workflows, but it lacks obvious adjacent operations like revising an existing listing, shortening/expanding copy, or generating only a headline or social caption. Agents can work around this by regenerating, but the lifecycle is not fully covered.
Available Tools
2 toolscheck_fair_housing_wordingARead-onlyInspect
Flag common US Fair Housing red-flag phrases in listing copy (e.g. 'perfect for families', 'adults only', 'master bedroom') and return a cleaned version. Rule-based, free, unlimited. Not legal advice.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description adds meaningful context: the check is rule-based, free, unlimited, and returns a cleaned version. The 'not legal advice' disclaimer is a useful behavioral boundary. It does not explain the exact return format, but with annotations covering safety this is a strong addition.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with the core action front-loaded, followed by short qualifiers. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read-only checker with no output schema, the description provides enough to invoke it correctly: what it checks, examples, and that it returns a cleaned version. The only minor gap is the exact shape of the returned cleaned text.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage for the single 'text' parameter. The description implies the input is listing copy, which maps to the parameter, but it adds no format, length, or syntax details beyond the obvious. Baseline 3 is appropriate for one obvious string parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: it flags Fair Housing red-flag phrases in listing copy and returns a cleaned version, with concrete examples. This clearly distinguishes it from the write_listing_description sibling, though it does not name the sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: check listing copy for compliance before publishing. However, there is no explicit guidance on when to use this versus write_listing_description, nor any prerequisites or exclusions beyond the 'not legal advice' caveat.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
write_listing_descriptionARead-onlyInspect
Write an MLS-ready real estate listing (headline, 120-180 word description, social caption) from property facts, in English, Korean or Spanish. Fair-Housing-safe wording (describes the property, never the ideal buyer; 'primary bedroom' not 'master'). Does not invent facts. Free: 3 per day. Unlimited-style use (1,000/month): pass a ListingLane Pro key (9 USDC/month).
| Name | Required | Description | Default |
|---|---|---|---|
| tone | No | Professional | |
| specs | No | Beds / baths / sq ft, e.g. '3 / 2.5 / 1,850' | |
| pro_key | No | Optional ListingLane Pro key (LL-...) | |
| language | No | en | |
| property | Yes | Property type and location, e.g. '3-bed townhouse, Austin TX' | |
| highlights | Yes | Features: renovated kitchen, fenced yard, near transit... | |
| listing_type | No | For sale |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint and openWorldHint=false, so the description carries the real load and does it well: it discloses the 3/day free ceiling, the 1,000/month Pro tier and its price, and a no-fabrication constraint. The word "Write" is about generating copy, not mutating state, so this is not a contradiction with readOnlyHint, though making that explicit would help.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four tight sentences, front-loaded with the deliverable and language options, followed by compliance, honesty, and pricing constraints in descending order of importance. No filler sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 enumerates the returned artifacts (headline, word-counted description, social caption) so an agent knows what comes back. It also covers compliance and quota constraints. The only gap is not spelling out how the pro_key failure mode behaves when the free quota is exhausted.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 57%, and the description adds meaning for language (en/ko/es) and pro_key (ListingLane Pro key unlocking higher volume). tone, listing_type, and specs/property/highlights are left to the schema, where the enums are self-explanatory but undocumented in prose. Adequate but no extra semantic lift beyond the JSON.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (write/generate) and a concrete deliverable set: headline, 120-180 word description, and social caption, from property facts in one of three languages. It is unambiguous what the tool produces, but it never names the sibling check_fair_housing_wording or explains the division of labor between generating compliant copy and auditing existing copy.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clear context for when to call it (you have property facts and highlights and need MLS copy) and explicit tiering guidance for the pro_key parameter, including free quota and paid unlock. It stops short of stating when not to use it or pointing to check_fair_housing_wording for verification of existing text.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- First observed
check_fair_housing_wording - First observed
write_listing_description
Related MCP Connectors
MLS compliance for edited listing photos: classify edits, write disclosures, verify provenance.
Search SimplyRETS MLS listings and open houses; read listing and market analytics.
Enhance, virtually stage and turn real estate listing photos into video with AI.
Zillow for-sale, for-rent and sold listings, and full property details, as structured JSON.
Related MCP Servers
AlicenseAqualityCmaintenanceProvides deterministic fair-housing and advertising compliance checks for US real-estate listings, with rule explanations and rewrite suggestions, ensuring models cannot override the verdict.41Apache 2.0- FlicenseNot gradedqualityCmaintenanceUK property listing description generator. Give an AI assistant a postcode or address — it fetches comparable sales, EPC ratings, and Rightmove listings, then writes three copy variants ready for Rightmove, social media, and email.1-
- AlicenseAqualityAmaintenanceEnables searching curated OneHome property listings, fetching property details and photos, comparing homes, and running mortgage calculations from within Claude.21138 npm1MIT
- AlicenseAqualityBmaintenanceEnables users to search synthetic property listings, retrieve full listing records, and answer factual inquiries from the record while escalating viewings, negotiation, legal, complaints, personal-data, and other out-of-record requests to a human. The human hand-off creates a ticket with a fixed reason code and rejects unknown listing ids.3MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.