PropertyLabs

Public building permits, property assessments, parcels and development intelligence.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
100%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,661Tokens (tool definitions)
~5.9 KBTypical response size
Moderate attention impact (1.30% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "propertylabs": {
      "url": "https://propertylabs.org/mcp"
    }
  }
}

Remote endpoints

https://propertylabs.org/mcpstreamable-http

What it can do

Tool inventory

Tools (3)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢search_address_permits(address, city)

Look up the public PropertyLabs permit history for a specific civic address in a specific city. Use this for address-level construction history and activity. This follows the same public field boundary as PropertyLabs address pages and does not return applicant names, contractor names or permit numbers.

Input Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "minLength": 4,
      "maxLength": 180,
      "description": "Specific civic address, for example 8882 170 Street NW."
    },
    "city": {
      "type": "string",
      "description": "Required PropertyLabs city slug, for example 'calgary', 'edmonton', 'toronto' or 'vancouver'."
    }
  },
  "required": [
    "address",
    "city"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "address": {
          "type": "string"
        },
        "city": {
          "type": "string"
        },
        "found": {
          "type": "boolean"
        },
        "reason": {
          "type": "string"
        },
        "summary": {
          "type": [
            "object",
            "null"
          ],
          "additionalProperties": true
        },
        "permits": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "address": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "city": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "community": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "permit_type": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "work_class": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "declared_value": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "issued_date": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "applied_date": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "status": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "description": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "latitude": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "longitude": {
                "type": [
                  "number",
                  "null"
                ]
              }
            },
            "required": [
              "id",
              "address",
              "city",
              "community",
              "permit_type",
              "work_class",
              "declared_value",
              "issued_date",
              "applied_date",
              "status",
              "description",
              "latitude",
              "longitude"
            ],
            "additionalProperties": false
          }
        },
        "partial": {
          "type": "boolean"
        },
        "propertylabs_url": {
          "type": "string",
          "format": "uri"
        },
        "attribution": {
          "type": "string"
        },
        "data_note": {
          "type": "string"
        }
      },
      "required": [
        "address",
        "city",
        "found",
        "summary",
        "permits",
        "propertylabs_url",
        "attribution",
        "data_note"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "error": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "detail": {
          "type": "object"
        }
      },
      "required": [
        "error"
      ],
      "additionalProperties": true
    }
  ]
}
🟢get_public_permit(canonical_id, city)

Retrieve a permit using the numeric PropertyLabs canonical permit ID and city slug. Use this for a permit already referenced by a public PropertyLabs /permit/{city}/{id} URL. Returns only fields allowed on the public permit page; applicant and contractor identities remain gated.

Input Schema

{
  "type": "object",
  "properties": {
    "canonical_id": {
      "type": "string",
      "pattern": "^\\d+$",
      "description": "Numeric PropertyLabs canonical permit ID from a public PropertyLabs permit URL."
    },
    "city": {
      "type": "string",
      "description": "Required PropertyLabs city slug from the public permit URL."
    }
  },
  "required": [
    "canonical_id",
    "city"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "canonical_id": {
          "type": "string"
        },
        "city": {
          "type": "string"
        },
        "found": {
          "type": "boolean"
        },
        "permit": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "city": {
                  "type": "string"
                },
                "address": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "permit_type": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "work_class": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "activity_date": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "issued_date": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "applied_date": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "status": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "declared_value": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "description": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "community": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "latitude": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "longitude": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "source": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "has_applicant": {
                  "type": "boolean"
                },
                "has_contractor": {
                  "type": "boolean"
                }
              },
              "required": [
                "id",
                "city",
                "address",
                "permit_type",
                "work_class",
                "activity_date",
                "issued_date",
                "applied_date",
                "status",
                "declared_value",
                "description",
                "community",
                "latitude",
                "longitude",
                "source",
                "has_applicant",
                "has_contractor"
              ],
              "additionalProperties": false
            },
            {
              "type": "null"
            }
          ]
        },
        "propertylabs_url": {
          "anyOf": [
            {
              "type": "string",
              "format": "uri"
            },
            {
              "type": "null"
            }
          ]
        },
        "attribution": {
          "type": "string"
        },
        "data_note": {
          "type": "string"
        }
      },
      "required": [
        "canonical_id",
        "city",
        "found",
        "permit",
        "propertylabs_url",
        "attribution",
        "data_note"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "error": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "detail": {
          "type": "object"
        }
      },
      "required": [
        "error"
      ],
      "additionalProperties": true
    }
  ]
}
🟢search_company_activity(company, city)

Get an aggregate, city-scoped sample of permit activity matching a developer, applicant, builder or contractor name. Only applicant/developer/contractor party-field matches are counted. Anonymous results are aggregate only and never return company-matched project addresses, permit numbers, coordinates or raw records.

Input Schema

{
  "type": "object",
  "properties": {
    "company": {
      "type": "string",
      "minLength": 2,
      "maxLength": 160,
      "description": "Developer, applicant, builder or contractor name."
    },
    "city": {
      "type": "string",
      "description": "Required PropertyLabs city slug. Company activity is never queried across the full archive anonymously."
    }
  },
  "required": [
    "company",
    "city"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "company": {
          "type": "string"
        },
        "city": {
          "type": "string"
        },
        "sample_size": {
          "type": "integer",
          "minimum": 0
        },
        "sample_limit": {
          "type": "integer",
          "minimum": 1
        },
        "disclosed_value_in_sample": {
          "type": "number",
          "minimum": 0
        },
        "disclosed_value_sample_size": {
          "type": "integer",
          "minimum": 0
        },
        "latest_activity_date_in_sample": {
          "type": [
            "string",
            "null"
          ]
        },
        "matched_role_counts_in_sample": {
          "type": "object",
          "properties": {
            "developer": {
              "type": "integer",
              "minimum": 0
            },
            "applicant": {
              "type": "integer",
              "minimum": 0
            },
            "contractor": {
              "type": "integer",
              "minimum": 0
            }
          },
          "required": [
            "developer",
            "applicant",
            "contractor"
          ],
          "additionalProperties": false
        },
        "permit_types_in_sample": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "count": {
                "type": "integer",
                "minimum": 0
              }
            },
            "required": [
              "name",
              "count"
            ],
            "additionalProperties": false
          }
        },
        "statuses_in_sample": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "count": {
                "type": "integer",
                "minimum": 0
              }
            },
            "required": [
              "name",
              "count"
            ],
            "additionalProperties": false
          }
        },
        "domains_in_sample": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "count": {
                "type": "integer",
                "minimum": 0
              }
            },
            "required": [
              "name",
              "count"
            ],
            "additionalProperties": false
          }
        },
        "sample_note": {
          "type": "string"
        },
        "attribution": {
          "type": "string"
        },
        "source_url": {
          "type": "string",
          "format": "uri"
        },
        "data_note": {
          "type": "string"
        }
      },
      "required": [
        "company",
        "city",
        "sample_size",
        "sample_limit",
        "disclosed_value_in_sample",
        "disclosed_value_sample_size",
        "latest_activity_date_in_sample",
        "matched_role_counts_in_sample",
        "permit_types_in_sample",
        "statuses_in_sample",
        "domains_in_sample",
        "sample_note",
        "attribution",
        "source_url",
        "data_note"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "error": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "detail": {
          "type": "object"
        }
      },
      "required": [
        "error"
      ],
      "additionalProperties": true
    }
  ]
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded3 tools
verifiedversion not recorded3 tools