Listed from the MCP registry; nobody on Odel publishes it.
Booli.se real estate for Claude: search listings, sold prices, areas & market stats
Runs on your machine from its package; the steps are below.
At most: only reads or looks up information.
Odel charges nothing per call. The publisher may charge for its own service.
Runs locally over stdio
This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).
Run
npx -y @chrischall/booli-mcp
MCP client config
{
"mcpServers": {
"booli": {
"command": "npx",
"args": [
"-y",
"@chrischall/booli-mcp"
]
}
}
}An MCP server for Booli, the Swedish property portal — search active for-sale listings, sold prices (slutpriser), resolve areas, and compute market statistics, all from Claude.
Developed and maintained by AI (Claude Code). Use at your own discretion and within booli.se's terms of use.
Booli fronts www.booli.se — including its GraphQL API — with a Cloudflare bot wall that blocks server-side clients. booli-mcp therefore reads Booli's consumer GraphQL API by routing each query through your own signed-in www.booli.se browser tab via the fetchproxy bridge (the ContextMint Bridge browser extension), reusing your Cloudflare-cleared session. No Booli login is required — just a normal page view. All tools are read-only.
BOOLI_TRANSPORT selects the path: auto (default — direct fetch first,
browser-bridge fallback when walled), fetchproxy (always the bridge), or
direct. The fetchproxy fleet shares WS port 37149 (BOOLI_WS_PORT).
Install ContextMint Bridge from its
releases page — Chrome: download
the chrome zip, unzip it, and load it unpacked at chrome://extensions
(Developer mode). Safari isn't available yet (it will ship inside the
ContextMint app, which has no public download), so use Chrome for now.
Keep a www.booli.se tab open.
ContextMint Bridge is the fetchproxy browser extension under its new name,
from the same maintainer — fetchproxy's own
README points to it.
Its source is public at
nullnet-app/contextmint-bridge:
build it yourself, or check a release zip against the .sha256 file
published beside it
(shasum -a 256 -c contextmint-bridge-chrome-<version>.zip.sha256).
On the first request, approve the one-time pairing prompt in ContextMint Bridge.
Run booli_healthcheck to confirm the path is working. Its transport
field says which leg served the probe (direct or fetchproxy) and,
once the bridge exists, bridge.session_state says whether the
extension is linked, pair_pending (approve the pair code
it names), or extension_disconnected.
// mcp config
{
"mcpServers": {
"booli": {
"command": "npx",
"args": ["-y", "@chrischall/booli-mcp"]
}
}
}
| Tool | What it does |
|---|---|
booli_search_areas | Resolve a place name to Booli area ids |
booli_search_listings | Search active for-sale listings by area + filters |
booli_get_listing | Full detail for one property (active or sold) by residence id |
booli_search_sold | Search sold listings (slutpriser) with final prices |
booli_market_stats | Median/average sold-price statistics for an area |
booli_healthcheck | Probe the data path and report transport (direct / fetchproxy, the BOOLI_TRANSPORT mode) and, once the bridge is up, bridge (role, port, extension link session_state, pending pair code) with a next-step hint |
Searches scope by area_id (from booli_search_areas) or a free-text
location. Money is SEK, areas m². See
docs/BOOLI-API.md for the underlying GraphQL API.
npm install
npm test # vitest, no network
npm run build # tsc + esbuild bundle
MIT