PropZolo is a remote MCP server. Claude, ChatGPT and other assistants that speak the Model Context Protocol can search and update leads, listings, site visits and tasks, and answer report questions — always as the member who connected them, never beyond that member’s permissions.
https://app.propzolo.com/api/mcp (your workspace shows the exact URL in Settings).Any client that supports remote MCP servers with OAuth works: add the server URL; it discovers sign-in by itself. Clients configured with JSON take:
{
"mcpServers": {
"propzolo": {
"url": "https://app.propzolo.com/api/mcp"
}
}
}Every tool call is decided on its own: the member’s level (or the workspace default), capped per area by the workspace and per connection by the member. Cancelling a visit or a task always waits for approval.
A change saved as a request answers status: "pending_approval"; the member approves it in PropZolo and it then runs exactly as the API call would.
An assistant sees only the tools its granted scopes, the member’s role and the autonomy allow. Each one runs the matching public-API endpoint, with the same validation, masking and audit trail.
| Tool | Scope | What it does |
|---|---|---|
| search_leads | leads:read | Search leads |
| get_lead | leads:read | Get a lead |
| create_lead | leads:write | Create a lead |
| update_lead | leads:write | Update a lead |
| update_requirement | leads:write | Update a lead’s requirement |
| change_lead_status | leads:write | Change a lead’s status |
| search_properties | properties:read | Search listings |
| get_property | properties:read | Get a listing |
| create_property | properties:write | Create a listing |
| update_property | properties:write | Update a listing |
| change_property_status | properties:write | Change a listing’s status |
| search_site_visits | site_visits:read | Search site visits |
| get_site_visit | site_visits:read | Get a site visit |
| schedule_site_visit | site_visits:write | Schedule a site visit |
| update_site_visit | site_visits:write | Update a site visit |
| reschedule_site_visit | site_visits:write | Reschedule a site visit |
| cancel_site_visit | site_visits:write | Cancel a site visit |
| search_tasks | tasks:read | Search tasks |
| get_task | tasks:read | Get a task |
| create_task | tasks:write | Create a task |
| update_task | tasks:write | Update a task |
| complete_task | tasks:write | Complete a task |
| get_report_catalogue | reports:read | What can be reported |
| run_report | reports:read | Run a report |
/.well-known/oauth-protected-resource and /.well-known/oauth-authorization-server, dynamic client registration, authorization code with PKCE (S256 only).POST /api/mcp
Authorization: Bearer pzm_at_…
Content-Type: application/json
Accept: application/json, text/event-stream
MCP-Protocol-Version: 2025-06-18
{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"search_leads","arguments":{"q":"Baner","limit":5}}}