Factual drafts for every listing (headline, MLS remarks within your limit, social post, bullets) from your fact sheets, with your own remarks checked for fair-housing wording, MLS rules and numbers that do not match the facts.
Who it is for: US residential real estate agent or listing coordinator who writes 2-30 listing descriptions a month and worries about fair-housing wording and MLS rules.
Format: Claude skill pack · Version: 1.0.1 · Tested on: Python 3.13.5 (standard library only)
What it does
You give it a CSV with one row per listing: type, beds, baths, square feet, neighbourhood, features, updates, nearby places and so on. For each listing it writes a plain, factual draft: a headline, public remarks cut at a sentence inside your MLS limit, a social post under 280 characters and feature bullets. Drafts describe the property only, never who should live there. Every draft and any remarks you add are then checked against HUD's fair-housing advertising guidance (preferences or limits by race, religion, sex, disability or familial status), common steering and source-of-income words, MLS rules (phone numbers, emails, links, length) and your own banned words. Beds, baths and square feet stated in the text are compared with the fact sheet. Each flag says why and what to say instead. Terms HUD calls fine, like master bedroom and family room, are not flagged.
What you need
- Claude.ai with code execution switched on (or Claude Code, or Python 3.10+)
- A CSV of your listings' facts (the sample shows the columns)
- Your MLS public-remarks character limit
5-minute setup
- Claude.ai: open Settings → Capabilities → Skills, click Upload skill and pick
claude-ai-upload/listing-description-writer-pro.zip. - Claude Code: copy the folder
skills/listing-description-writer-prointo~/.claude/skills/. - Start a new chat. Attach your file and say: "Use listing-description-writer-pro. Write MLS remarks (limit 1000 characters) for these listings and check my own descriptions".
- Claude runs the script and gives you the files listed under Outputs. Check them before you act on them.
Try it with the sample
Run the sample (3 fictional listings):
python3 skills/listing-description-writer-pro/scripts/core.py --listings samples/listings.csv --limit 600 --out out
You should see 3 drafts with no flags, 2 of your remarks checked (2 violations, 4 cautions) and 1 fact mismatch (a 4-bed claim on a 3-bed home). In Claude, attach your CSV and use the prompt above.
Settings you can change
| Option | Default | What it is |
|---|---|---|
--listings |
(required) |
CSV of fact sheets: id, property_type, beds, baths, sqft, neighborhood, year_built, features, updates, nearby (lists separated by ;), lot, parking, hoa, and optional remarks to check |
--limit |
1000 |
Your MLS public remarks character limit |
--extra-words |
(none) |
Comma-separated words your broker or MLS bans |
--out |
out |
Output folder |
What goes in and what comes out
Inputs: CSV of fact sheets (one row per listing); Optional: your own remarks per listing to check; Your MLS character limit and banned words
Outputs: listings.md (drafts and checks per listing); listings.csv (headline, remarks, social post, verdict, flags, fact mismatches)
AI disclosure and limits
This product does not call an AI model at run time. It was built by Oarsman AI's AI agents and checked by the automated tests shipped with it.
Limits: - A word check, not legal advice: it cannot judge context, photos or intent, and cannot catch every problem. - Based on federal HUD guidance; state and local laws may protect more groups (it flags common ones like source of income as cautions). - Drafts are plain on purpose; warmer copy is yours or Claude's, and should be re-checked. - English only. - Fact check covers beds, baths and square feet.
Not tested by us: - MLS-specific rule sets (limits and banned words vary by MLS; set yours) - descriptions in languages other than English - review by a fair-housing lawyer
Files
- oarsman-listing-description-writer-pro-v1.0.1.zip
- CHANGELOG.md
- QA-REPORT.json
- README.md
- SPEC.md
- SUPPORT.md
- TROUBLESHOOTING.md
- VERSION
- VIDEO-SCRIPT.md
- claude-ai-upload
- diagram.mmd
- diagram.png
- preview.png
- samples
- skills
- tests
Help
Self-serve: see TROUBLESHOOTING.md (fixes and FAQ). There is no call, chat or email support. Fixes ship as new versions at your download link. Refund: 14 days, works as described, through the checkout platform.