Written for the AI agent doing the install.
Claude, Codex or any coding agent can find GalaxyIDX, read the rules, connect over MCP and wire up listing pages and lead forms in one pass. Give it the prompt below.
Add GalaxyIDX MLS listings and lead capture to this site. Read https://galaxyidx.com/llms.txt first and follow every rule in it. Ask me for the secret key and site id; never write the key into a file.
Five files and one URL: everything an agent reads
What the product is, the rules an agent must follow, and links to every doc, in the llms.txt format.
https://galaxyidx.com/llms.txt Everything in one file All docs in one fileEvery guide and the Agent Skill, concatenated for a single read.
https://galaxyidx.com/llms-full.txt MCP server Remote MCP, Streamable HTTPNine tools: install steps, search, listing pages, area pages, leads and lead email routing.
https://mcp.galaxyidx.com/mcp Agent Skill idx-listings-installStep-by-step compliant install per framework, the do-nots, and a verify checklist.
https://docs.galaxyidx.com/skill/SKILL.md API docs Quickstarts and referenceWordPress, Next.js, Astro and plain HTTP quickstarts, authentication, listings, leads, compliance and SEO.
https://docs.galaxyidx.com/docs/index.md OpenAPI 3.1 Every endpoint, typedBoth key types, the error shape, and the lead and listing schemas. API base: https://api.galaxyidx.com/v1
Connect over MCP with one command
The MCP server holds no key of its own. Each client sends its own secret key as a bearer token, and every tool works only inside that account.
Use single quotes so the saved config keeps ${IDX_SECRET_KEY} as a reference. Double quotes make your shell paste the real key into the config file.
claude mcp add --transport http galaxyidx https://mcp.galaxyidx.com/mcp --header 'Authorization: Bearer ${IDX_SECRET_KEY}'
{
"mcpServers": {
"galaxyidx": {
"type": "http",
"url": "https://mcp.galaxyidx.com/mcp",
"headers": { "Authorization": "Bearer ${IDX_SECRET_KEY}" }
}
}
}
What your agent can call
| Tool | What it does |
|---|---|
install_instructions | The compliant install steps for WordPress, Next.js, Astro or another stack, your sites, and the env vars to set. Call it first. |
search_listings | Search the listings a site may show, with objective filters only. |
get_listing | One listing, with the site that hosts its indexed page. |
get_market_stats | Area metrics with their period and source. |
create_search_page | A page spec and ready-to-write files for /homes/ and listing pages. |
create_area_page | A page spec and files for an area page. |
list_leads | Your leads and their delivery status. |
get_lead_settings | Who receives new-lead emails. |
set_lead_email | Change who receives new-lead emails for one site or the account default. Confirm the addresses with the user first. |
What every install must do
These come from the MLS rules. The API enforces the data rules, the plugin renders the display rules by default, and the docs spell out both so an agent can follow them on any stack.
Secret key on the server only
In an environment variable (
IDX_SECRET_KEY), never in client code, a public env var or source control.Render on the site's own domain
Server-side HTML. Never an iframe. One indexed page per listing.
Attribution on every listing
Listing firm, MLS name and logo, last-updated time and the disclaimer.
Photos resized, never cropped
object-fit: contain, with nothing drawn over the photo.Never invent a fact
A missing value is shown as a dash, not estimated.
Fair Housing and no SMS
Objective search filters only. No text-message consent on lead forms.
The broker signs
The MLS authorization needs the broker of record. An agent cannot do that step.
Pick the install path by what the site runs on
| The site is | Use |
|---|---|
| WordPress | The GalaxyIDX plugin |
| Next.js or Astro | Server-rendered routes from create_search_page, or the quickstart |
| Any other server stack | The HTTP API with the secret key on the server |
| Static-only hosting | Add a server route or edge function first, so the key never reaches the browser |