Bucky

com.buckybuild/bucky

Zoning, parcel, and development feasibility for a street address in Canada and the US.

Yes, your AI can use this right now.Answered a live MCP handshake in 460 ms with no sign-in needed and exposes 15 tools.

Connect it

Settings → Connectors → Add custom connector
URL: https://buckybuild.com/api/mcp

15 tools, verified live

Pulled straight from the server with tools/list on 2026-10-17.
getBuckyMcpGuideread-only

Call with no arguments on first contact. Optional `role`, `market`, and `scale` answer the first-call questions on a second call. Returns what this session should do next.

explainFeasibilityStatusread-only

Explain one Bucky coverage or per-fact provenance status and the safe next action. This is a pure static lookup: it does not inspect an address, retrieve property data, or call a database, geocoder, AI model, or third-party API. Accepts exactly one of: live, live_unavailable, planned_not_live, geo_division_uncatalogued, unseeded_place, geocode_failed, cited, cited_conditional, conditional_unresolv

getFeasibilitySnapshotread-only

Look up lot, zone, and building envelope for one street address in Canada or the US. Pass `address`. One address per call; cannot search or compare. Every envelope value carries a `status`. Never report `not_extracted` or `site_specific_schedule` as no limit or as zero — call `explainFeasibilityStatus` first. Envelope numbers are extracted ceilings. Call `getBylawSection` with a citation `knowle

getBylawSectionread-only

Return the stored bylaw section text behind a snapshot citation. Pass `sectionIds` copied from `citations.*.knowledgeSectionId` on getFeasibilitySnapshot. Or pass `geoDivisionId` from `coverage.geoDivisionId`, `zoneCode` from `zone.code`, and `sectionNumbers` such as 3.1 or 3.2. The markdown is the schedule text. A number in the snapshot can still be conditional on frontage, tenure, or adjoining d

screenLots

Find the lots in one live Bucky city that match a buy box. Pass `city` or `geoDivisionId` with `thesis` (plain words), `criteria` (square feet, dollars), or both; or pass a saved `profileId`. Returns countOutcome (exact, partial, or unavailable), screeningRunId, and selected lots ranked largest first with a pass, fail, or not_available verdict per filter. totalMatches is a compatibility value and

runFeasibilityAnalysis

Enqueue a fresh deterministic analysis run for a saved project. Pass `projectId`, or `project` with the name the user said; with neither, the result lists their projects and nothing is queued. Returns immediately with `agentStatus` (`queued`, `running`, `current`, `failed`, or `none`) and a receipt id; does not block on completion. Irreversible: a queued run cannot be un-queued from MCP. Re-check

getProjectContextread-only

Load one project with analysis envelope, compact agentStatus, document summaries, evidence summaries, the project memory digest, and external_ref when the project was imported from another system. Pass `include` for optional sections: tasks, members, insights, capital, visualEvidence. Default is none, so the payload stays the same as a call without include. Writes to those sections stay on the Buc

saveToProject

Create a project (`create`), attach lots (`attach_parcels`), or attach a knowledge reference (`attach_reference`). Pass `projectId` or `project`; with neither, the result lists projects and writes nothing. For attach_parcels, pass a WGS84 GeoJSON polygon (up to 500 selected parcels), or copy `lot.parcelExternalId` from getFeasibilitySnapshot. Polygon cannot be combined with parcelExternalIds or ra

updateProject

Patch project metadata (name, lifecycle status, externalRef). Pass `projectId`, or `project` with the name the user said; with neither, the result lists their projects and nothing is written. preview=true returns the field-level diff and writes nothing. A write returns a receipt; undoOperationId restores the captured prior fields. Does not archive or delete.

setProjectMapListing

Put a project on the public Bucky map, or take it off. Pass `projectId`, or `project` with the name the user said; with neither, the result lists their projects and nothing is published. Listing publishes the build-lot centroid, the project name, its zone category, typology and lifecycle status to anyone — signed in or not. Nothing else about the project is published. The project must have a bui

produceProjectReport

Compose a project report PDF. Pass `projectId` or `project`; with neither, the result lists projects and no meter is spent. preview=true composes without spending. confirm=true exports, spends records.exports, and is irreversible. Returns a signed download URL, never PDF bytes.

submitBuckyFeedback

Open a human-reviewed feedback form and submit it to the Bucky product team. Call only when the user explicitly asks to send feedback, report a problem, suggest an improvement, or praise something. The server asks the MCP client to show the form; nothing is saved unless the human accepts it. Do not use for silent agent self-reporting.

previewSiteCoverageread-only

Free preview, no sign-in needed. For one street address in Canada or the US, it says whether Bucky covers the place and which zoning facts it holds for the lot (lot boundary, zone, height, density, setbacks, permitted uses, overlays, parking): found, partly on file, or not on file. It returns no values: no zone code, heights, setbacks or areas. The lot outline is a shape with no scale. Use it when

cityInventoryread-only

Public city catalogue inventory. Pass exactly one of: cityName, lat and lng together, or geoDivisionId. A city name with multiple matches returns choices; after the user chooses, call again with that candidate geoDivisionId. Never pass a slug. Shows datasets grouped by topic as on file, not loaded yet, unavailable, or not confirmed. This is city coverage, not lot feasibility or operator health. If

uiGetAnalysisStatusread-only

Return only the analysis `agentStatus` for a project. Cheap enough to poll. Used by the Bucky app view; the model should call getProjectContext instead.

Alternatives in Other

Compare →
Try “Notion”, “Stripe”, “create invoice”, “browser”