Skip to content
All data sources

GSA Owned & Leased Properties API and MCP server

No authgsa-iolp

Official weekly federal building and lease inventory with location, square-footage, vacancy, and lease context.

GSA Owned & Leased Properties is published by GSA Inventory of Owned and Leased Properties and covers GSA-controlled owned and leased property inventory.

It refreshes on a schedule, every week.

Last verified . That is when these facts were last rebuilt from the ParcelOps source registry, not when GSA Inventory of Owned and Leased Properties last refreshed the data itself.

API access

Your AI client reaches GSA Owned & Leased Properties through one ParcelOps MCP endpoint, so there is no separate key to hold for it and no per-source client to write. Reaching it takes no credentials of your own.

Where it came from

Freshness and coverage

FreshnessScheduled · every week · The official Data.gov catalog describes the inventory as weekly.
Places coveredGSA-controlled owned and leased property inventory
Time coveredNot declared
CredentialsNo credentials required

What this source cannot tell you

  • Anything outside GSA-controlled owned and leased property inventory. A request past that edge comes back empty rather than approximated.
  • Which years it spans, because the covered period is not declared.
  • Anything GSA Inventory of Owned and Leased Properties does not publish. ParcelOps returns this source as it stands and never fills a blank field from a different one.
  • IOLP is not a complete commercial-property market, title record, appraisal, or statement that a building is offered for sale or lease.
  • Coordinates, square footage, vacancy, status, and dates require verification before site or transaction decisions.
  • ParcelOps excludes contact emails, political fields, and walk/transit fields.

Methods (3)

A method is one call your agent can make against this source.

  • searchBuildings

    read

    Search buildings with a bounded location selector and optional owned or leased filter.

    FreshnessScheduled · every week (source-level)
    Input schema
    {
      "type": "object",
      "properties": {
        "state": {
          "type": "string",
          "pattern": "^[A-Za-z]{2}$"
        },
        "city": {
          "type": "string",
          "minLength": 1,
          "maxLength": 100
        },
        "zipCode": {
          "type": "string",
          "pattern": "^\\d{5}$"
        },
        "locationCode": {
          "type": "string",
          "minLength": 1,
          "maxLength": 20
        },
        "assetType": {
          "type": "string",
          "minLength": 1,
          "maxLength": 100
        },
        "minRentableSquareFeet": {
          "type": "number",
          "minimum": 0,
          "maximum": 100000000
        },
        "minVacantSquareFeet": {
          "type": "number",
          "minimum": 0,
          "maximum": 100000000
        },
        "bbox": {
          "type": "object",
          "description": "WGS84 box no wider or taller than five degrees.",
          "properties": {
            "minLongitude": {
              "type": "number",
              "minimum": -180,
              "maximum": 180
            },
            "minLatitude": {
              "type": "number",
              "minimum": -90,
              "maximum": 90
            },
            "maxLongitude": {
              "type": "number",
              "minimum": -180,
              "maximum": 180
            },
            "maxLatitude": {
              "type": "number",
              "minimum": -90,
              "maximum": 90
            }
          },
          "required": [
            "minLongitude",
            "minLatitude",
            "maxLongitude",
            "maxLatitude"
          ],
          "additionalProperties": false
        },
        "limit": {
          "type": "integer",
          "minimum": 1,
          "maximum": 100
        },
        "offset": {
          "type": "integer",
          "minimum": 0,
          "maximum": 16000
        },
        "ownership": {
          "type": "string",
          "enum": [
            "owned",
            "leased",
            "all"
          ]
        }
      },
      "required": [],
      "additionalProperties": false
    }
  • searchLeases

    read

    Search leases with a bounded location or exact lease number and optional expiration dates.

    FreshnessScheduled · every week (source-level)
    Input schema
    {
      "type": "object",
      "properties": {
        "state": {
          "type": "string",
          "pattern": "^[A-Za-z]{2}$"
        },
        "city": {
          "type": "string",
          "minLength": 1,
          "maxLength": 100
        },
        "zipCode": {
          "type": "string",
          "pattern": "^\\d{5}$"
        },
        "locationCode": {
          "type": "string",
          "minLength": 1,
          "maxLength": 20
        },
        "assetType": {
          "type": "string",
          "minLength": 1,
          "maxLength": 100
        },
        "minRentableSquareFeet": {
          "type": "number",
          "minimum": 0,
          "maximum": 100000000
        },
        "minVacantSquareFeet": {
          "type": "number",
          "minimum": 0,
          "maximum": 100000000
        },
        "bbox": {
          "type": "object",
          "description": "WGS84 box no wider or taller than five degrees.",
          "properties": {
            "minLongitude": {
              "type": "number",
              "minimum": -180,
              "maximum": 180
            },
            "minLatitude": {
              "type": "number",
              "minimum": -90,
              "maximum": 90
            },
            "maxLongitude": {
              "type": "number",
              "minimum": -180,
              "maximum": 180
            },
            "maxLatitude": {
              "type": "number",
              "minimum": -90,
              "maximum": 90
            }
          },
          "required": [
            "minLongitude",
            "minLatitude",
            "maxLongitude",
            "maxLatitude"
          ],
          "additionalProperties": false
        },
        "limit": {
          "type": "integer",
          "minimum": 1,
          "maximum": 100
        },
        "offset": {
          "type": "integer",
          "minimum": 0,
          "maximum": 16000
        },
        "leaseNumber": {
          "type": "string",
          "minLength": 1,
          "maxLength": 50
        },
        "expirationFrom": {
          "type": "string",
          "format": "date"
        },
        "expirationTo": {
          "type": "string",
          "format": "date"
        }
      },
      "required": [],
      "additionalProperties": false
    }
  • getServiceInfo

    read

    Return official layers, weekly cadence, CC0 license, fixed field policy, and limitations.

    FreshnessScheduled · every week (source-level)
    Input schema
    {
      "type": "object",
      "properties": {},
      "required": [],
      "additionalProperties": false
    }

Where this source is used

  • Data center siting

    Power, water, transport, airspace, and hazard screening for a site before anyone signs anything.

  • Commercial real estate

    Parcel and assessment records, building programs, and the entity on the other side of the deal.

  • Realtors and brokerages

    The facts behind a listing, the programs a buyer may qualify for, and your own files in the same place.