RoyceCo Victorian Property Data MCP

RoyceCo Victorian Property Data MCP

Enables live access to free, open Victorian government spatial data for property due diligence, covering site screening, planning controls, parcels, contamination, heritage, and flood checks without API keys.

Category
Visit Server

README

RoyceCo — Victorian Property Data MCP connector

An authless remote MCP server that gives Claude live access to free, open Victorian government spatial data for property due diligence.

There are no API keys, no secrets and no accounts. Every upstream service is public and keyless, and all of it is licensed CC BY 4.0 — which means, unlike commercial property data, you may reproduce it in a report you send to a financier or a joint venture partner, with attribution.

What it gives you

Tool What it answers
vic_site_screen Start here. Everything below in one call, plus a gating_items list of issues that must be priced or conditioned before going unconditional.
vic_find_address Resolve an address to Vicmap candidates with coordinates and property PFI.
vic_planning_controls Zone, every overlay, urban growth boundary, urban growth area, bushfire prone area.
vic_parcel_details Parcel SPI and PFI, plan and lot number, land area in true square metres, council property number, mapped easements, Crown land tenure.
vic_contamination_screen EPA Priority Sites Register, EPA audits and licences, landfill register, PRSA, groundwater restricted use zones, Environmental Audit Overlay.
vic_heritage_screen Victorian Heritage Register, Heritage Inventory, Heritage Overlay, Aboriginal cultural heritage sensitivity, Registered Aboriginal Parties.
vic_flood_screen Statutory flood overlays (LSIO, SBO, FO, RFO, UFZ) and modelled extents with reliability and method.
vic_growth_and_gaic_screen Urban growth boundary, land added since 2005, potential GAIC land, Precinct Structure Plan, Urban Growth Zone.

Every response carries caveats and an authoritative_source. The caveats are not boilerplate — they record where the data will mislead you. Read them.

Install

You need Node 20+ and a free Cloudflare account.

cd royceco-vic-property-mcp
npm install

Step 1 — run the smoke test FIRST

npm test

This calls the live Victorian services and checks the results are sane. The important assertion is the spatial filter test: it queries two points in different municipalities and proves they return different answers.

That test exists because during development a different fetch layer silently ignored the point geometry and returned the first feature in the layer — a public park in Banyule, for an address in Pakenham. It looked like a clean answer. A tool that can do that is worse than no tool.

If the spatial filter test fails, do not connect this to Claude. A wrong planning zone invalidates an entire due diligence report.

Step 2 — deploy

npx wrangler login     # opens your browser, one time only
npm run deploy

Wrangler prints the deployed URL, something like:

https://royceco-vic-property.<your-subdomain>.workers.dev

Open that URL in a browser. You should see a RoyceCo-branded status page listing the tools. If you do, it is running.

Cost: this sits inside Cloudflare's free tier — 100,000 requests a day. A busy month of due diligence will not come close.

Step 3 — connect it to Claude

  1. Go to claude.ai → Settings → Connectors → Add custom connector
  2. Paste the MCP endpoint, which is your deployed URL with /mcp on the end: https://royceco-vic-property.<your-subdomain>.workers.dev/mcp
  3. Save. No authentication is required.
  4. Start a new conversation and ask: "Run a Victorian site screen on 75 Main Street, Pakenham."

Step 4 — verify it end to end

Ask Claude to screen an address you already know well — ideally a site RoyceCo has transacted on. Check the zone, the overlays and the land area against your own records before you rely on it for a live deal.

Local development

npm run dev          # http://localhost:8787
npm run tail         # live logs from the deployed worker

Test the deployed endpoint directly:

curl -s https://<your-worker>/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | head -40

What this is not

  • Not a substitute for the authoritative record. A report cites a dated VicPlan planning property report and a LANDATA title search, not this connector. Use it to find the issue fast; cite the source that stands up.
  • Not a title search. Easements here come from a mapping layer. Registered easements, restrictive covenants and s173 agreements come from the title and the s32, and nowhere else.
  • Not a title area. Areas are computed from parcel geometry and are approximate. The plan of subdivision governs.
  • Not evidence of absence. A nil result from a contamination or flood register means not listed or not modelled. It never means not affected.

Data sources

All CC BY 4.0 via DataVic, verified live on 17 August 2026:

  • Vicmap Address, Property, Parcel, Planning, Crown Land Tenure, Admin, Easements — Department of Transport and Planning
  • VicPlan planning scheme overlays, heritage, growth areas
  • Victorian Flood Database — CFA, DEECA
  • Victoria Unearthed — EPA Victoria priority sites, audits, licences, landfills
  • Victorian Planning Authority — precinct structure plans, potential GAIC land

Attribution is emitted with every tool response and must be carried into any document that reproduces the data:

Contains Vicmap data © State of Victoria (Department of Transport and Planning), licensed under CC BY 4.0.

Maintenance

Government endpoints move. If a tool starts failing, run npm test — it will tell you which service broke. Endpoint URLs and layer IDs are all in src/services.js, one object per service, with a comment explaining the coordinate reference system trap for each. Nothing else needs to change.

Re-run the smoke test quarterly alongside the statutory review in the royceco-property-analyst skill.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured