Retrieve media records from the RESO Web API Media resource using GET /Media?$filter=ResourceRecordKey eq '{listingKey}'; each record includes the MediaURL, MediaType, Order, and Permission fields
Validate photo dimensions before storage or syndication: most MLSs require a minimum of 1024x768 pixels; HD resolution (1920x1080 or higher) is preferred for portal syndication
Check the Permission field on each media record; only records with Public permission should be syndicated to consumer-facing portals — Private photos must be withheld
Strip or reject photos containing embedded agent contact information, watermarks, text overlays, or brokerage branding before syndicating to portals that prohibit branded photos
Respect photo ordering (the Order field) and the mandatory exterior photo requirement: at least one exterior photo of the subject property must be present for most MLS feeds to be valid
For portal delivery, transcode or re-compress images to meet the target portal's file-size limits (typically 100KB–15MB per photo, format JPEG) without upscaling below-minimum-resolution photos
Known gotchas
Media URLs in RESO feeds can expire or require authenticated access; do not cache URLs indefinitely — re-fetch media metadata on each sync cycle and store the binary content if long-term access is needed
MLS photo compliance rules differ from portal compliance rules; a photo that passes MLS validation may still be rejected by a portal for branding, watermark, or resolution reasons — maintain per-destination validation logic
Virtual staging and AI-generated photo alterations must be disclosed in listing remarks per most MLS policies; your pipeline should not alter or enhance photos without appending the required disclosure text to the listing
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp