SimplyRETS MCP by usefulapi

Search SimplyRETS MLS listings and open houses; read listing and market analytics.

使うべきか

品質と安全性

A
説明の品質
98%
スキーマの完全性
87%
命名の品質
76%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(2)

  • LOWTool 'simplyrets_get_market_analytics' name length outside 3-30 rangesimplyrets_get_market_analytics 内
  • LOWTool 'simplyrets_get_listing_analytics' name length outside 3-30 rangesimplyrets_get_listing_analytics 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~6,292トークン数(ツール定義)
~5.9 KB一般的なレスポンスサイズ
注意への影響は大きい(128k コンテキストの 4.92%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "simplyrets": {
      "url": "https://simplyrets.usefulapi.io/mcp"
    }
  }
}

リモートエンドポイント

https://simplyrets.usefulapi.io/mcpstreamable-http

できること

ツール一覧

ツール(10)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢simplyrets_get_account_info

What these API credentials can reach: the MLS vendor ids (needed as `vendor` on multi-MLS apps), the time of each vendor's last sync, usernames and the available endpoints (/properties, /openhouses, /agents, /offices, /properties/analytics). OPTIONS /.

入力スキーマ

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simplyrets_get_feed_metadata(vendor)

Values present in an MLS feed, to build valid searches: statuses, property types, cities, counties, neighborhoods, areas and features, plus the last sync time. OPTIONS /properties.

入力スキーマ

{
  "type": "object",
  "properties": {
    "vendor": {
      "description": "MLS vendor id; required on multi-MLS apps (simplyrets_get_account_info lists them).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simplyrets_search_listings(q, status, type, subtype, agent, ...)

Search MLS listings (SimplyRETS /properties): by keyword, status, type, price, beds, baths, area, year, city, zip, neighborhood, agent, broker, features or a map polygon. Returns address, price, status, photos, agent, office, property details and remarks, without empty fields. Pass count=true to get the total. Page with next.offset or next.lastId. GET /properties.

入力スキーマ

{
  "type": "object",
  "properties": {
    "q": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Keyword search over MLS number, street, unit, city, postal code, subdivision and area; several values match any."
    },
    "status": {
      "description": "Listing status (default Active). Closed = sold or leased.",
      "minItems": 1,
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "Active",
          "Pending",
          "Closed",
          "ActiveUnderContract",
          "Hold",
          "Withdrawn",
          "Expired",
          "Delete",
          "Incomplete",
          "ComingSoon"
        ]
      }
    },
    "type": {
      "description": "Property type (default residential and rental).",
      "minItems": 1,
      "maxItems": 9,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "residential",
          "rental",
          "mobilehome",
          "condominium",
          "multifamily",
          "commercial",
          "commerciallease",
          "land",
          "farm"
        ]
      }
    },
    "subtype": {
      "description": "Property sub type; not every feed supports every value.",
      "minItems": 1,
      "maxItems": 25,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "apartment",
          "boatslip",
          "singlefamilyresidence",
          "deededparking",
          "cabin",
          "condominium",
          "duplex",
          "manufacturedhome",
          "ownyourown",
          "quadruplex",
          "stockcooperative",
          "townhouse",
          "timeshare",
          "triplex",
          "manufacturedonland",
          "farmandranch",
          "agriculture",
          "business",
          "hotelmotel",
          "industrial",
          "mixeduse",
          "officespace",
          "retail",
          "unimprovedland",
          "warehouse"
        ]
      }
    },
    "agent": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Listing agent MLS ids (the co-listing agent is not matched)."
    },
    "salesAgent": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Selling agent MLS ids (sales.agent)."
    },
    "brokers": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Broker or listing office ids, as your MLS provides them."
    },
    "minprice": {
      "description": "Minimum price.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxprice": {
      "description": "Maximum price.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minarea": {
      "description": "Minimum living area, sq ft.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxarea": {
      "description": "Maximum living area, sq ft.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minbaths": {
      "description": "Minimum bathrooms.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxbaths": {
      "description": "Maximum bathrooms.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minbeds": {
      "description": "Minimum bedrooms.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxbeds": {
      "description": "Maximum bedrooms.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxdom": {
      "description": "Maximum days on market (needs Days on Market data in the feed).",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minyear": {
      "description": "Minimum year built.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxyear": {
      "description": "Maximum year built.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minacres": {
      "description": "Minimum acreage.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxacres": {
      "description": "Maximum acreage.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minGarageSpaces": {
      "description": "Minimum garage spaces.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxGarageSpaces": {
      "description": "Maximum garage spaces.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "postalCodes": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Postal / zip codes."
    },
    "cities": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Cities (case-insensitive). simplyrets_get_feed_metadata lists the cities in the feed."
    },
    "counties": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Counties (case-insensitive)."
    },
    "neighborhoods": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Neighborhoods or subdivisions (case-insensitive)."
    },
    "features": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Interior features, e.g. 'Wet Bar'."
    },
    "exteriorFeatures": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Exterior features, e.g. 'Porch'."
    },
    "pool": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Pool: 'true', 'false' or a value such as 'Private'."
    },
    "water": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Water body: 'true', 'false' or a value."
    },
    "points": {
      "description": "A polygon of 'lat,lng' points (3 or more); returns listings inside it. Needs latitude/longitude in the feed.",
      "minItems": 3,
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^-?\\d{1,3}(\\.\\d+)?\\s*,\\s*-?\\d{1,3}(\\.\\d+)?$"
      }
    },
    "idx": {
      "description": "IDX display filter. Default 'null' hides listings whose address or entire listing may not be displayed online; 'ignore' returns them too. Your MLS's display rules still bind how you use the data.",
      "type": "string",
      "enum": [
        "null",
        "listing",
        "address",
        "ignore"
      ]
    },
    "vendor": {
      "description": "MLS vendor id; required on multi-MLS apps (simplyrets_get_account_info lists them).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "subTypeText": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Original MLS sub type text values."
    },
    "coListAgent": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Co-listing agent MLS ids."
    },
    "specialListingConditions": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Special conditions such as REO, Short Sale or Auction (feed dependent)."
    },
    "ownership": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Ownership values (feed dependent)."
    },
    "state": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "State or province (case-insensitive)."
    },
    "minlistdate": {
      "description": "Listed on or after this date or date-time (UTC unless a timezone is given).",
      "type": "string",
      "pattern": "^(\\d{4}-\\d{2}-\\d{2}|\\d{1,2}\\/\\d{1,2}\\/\\d{4})([T ]\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?( ?(Z|[+-]\\d{2}:?\\d{2}|[A-Za-z]{2,5}))?)?$"
    },
    "maxlistdate": {
      "description": "Listed on or before this date or date-time (UTC unless a timezone is given).",
      "type": "string",
      "pattern": "^(\\d{4}-\\d{2}-\\d{2}|\\d{1,2}\\/\\d{1,2}\\/\\d{4})([T ]\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?( ?(Z|[+-]\\d{2}:?\\d{2}|[A-Za-z]{2,5}))?)?$"
    },
    "modified": {
      "description": "Only listings whose MLS modification time is on or after this date or date-time.",
      "type": "string",
      "pattern": "^(\\d{4}-\\d{2}-\\d{2}|\\d{1,2}\\/\\d{1,2}\\/\\d{4})([T ]\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?( ?(Z|[+-]\\d{2}:?\\d{2}|[A-Za-z]{2,5}))?)?$"
    },
    "include": {
      "description": "Extra fields: compliance (IDX display data) and rooms (when the feed has them).",
      "minItems": 1,
      "maxItems": 2,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "compliance",
          "rooms"
        ]
      }
    },
    "sort": {
      "description": "Sort field; a leading minus is descending. Ignored with lastId.",
      "type": "string",
      "enum": [
        "listprice",
        "-listprice",
        "listdate",
        "-listdate",
        "closedate",
        "-closedate",
        "beds",
        "-beds",
        "baths",
        "-baths"
      ]
    },
    "count": {
      "description": "Also return the total number of matches (slower on big feeds).",
      "type": "boolean"
    },
    "limit": {
      "description": "Results per page, 1-100 (default 10).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "description": "Records to skip (the previous reply's next.offset). Do not combine with lastId.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    },
    "lastId": {
      "description": "Cursor: 0 for the first page, then the previous reply's next.lastId (sort is ignored when set).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simplyrets_get_listing(mlsId, include, vendor)

One listing by its SimplyRETS id (`mlsId`, the number in search results; NOT the public MLS number `listingId`). Full detail: address, geo, price, photos, agent, office, property, school, tax, remarks. GET /properties/{mlsId}.

入力スキーマ

{
  "type": "object",
  "properties": {
    "mlsId": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "SimplyRETS listing id (the `mlsId` field of a search result)."
    },
    "include": {
      "description": "Extra fields to include, when the feed has them.",
      "minItems": 1,
      "maxItems": 7,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "association",
          "agreement",
          "garageSpaces",
          "maintenanceExpense",
          "parking",
          "pool",
          "rooms"
        ]
      }
    },
    "vendor": {
      "description": "MLS vendor id; required on multi-MLS apps (simplyrets_get_account_info lists them).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    }
  },
  "required": [
    "mlsId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simplyrets_list_open_houses(type, listingId, cities, brokers, agent, ...)

Upcoming open houses with the listing they belong to: filter by property type, listing id, city, broker, agent, price, size, beds, baths and start date. Page with next.offset or next.lastId. GET /openhouses.

入力スキーマ

{
  "type": "object",
  "properties": {
    "type": {
      "description": "Property type of the listing (default residential; one type per query).",
      "type": "string",
      "enum": [
        "residential",
        "rental",
        "mobilehome",
        "condominium",
        "multifamily",
        "commercial",
        "commerciallease",
        "land",
        "farm"
      ]
    },
    "listingId": {
      "description": "Only open houses for this public MLS listing id.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "cities": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Cities (case-insensitive)."
    },
    "brokers": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Broker ids."
    },
    "agent": {
      "description": "Agent id.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "minprice": {
      "description": "Minimum listing price.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxprice": {
      "description": "Maximum listing price.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minarea": {
      "description": "Minimum living area, sq ft.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minbeds": {
      "description": "Minimum bedrooms.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minbaths": {
      "description": "Minimum bathrooms.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "startdate": {
      "description": "Scheduled start of the open house.",
      "type": "string",
      "pattern": "^(\\d{4}-\\d{2}-\\d{2}|\\d{1,2}\\/\\d{1,2}\\/\\d{4})([T ]\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?( ?(Z|[+-]\\d{2}:?\\d{2}|[A-Za-z]{2,5}))?)?$"
    },
    "sort": {
      "description": "Sort field; a leading minus is descending. Ignored with lastId.",
      "type": "string",
      "enum": [
        "listprice",
        "-listprice",
        "listdate",
        "-listdate",
        "beds",
        "-beds",
        "baths",
        "-baths"
      ]
    },
    "include": {
      "description": "Extra fields: rooms.",
      "minItems": 1,
      "maxItems": 1,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "rooms"
        ]
      }
    },
    "vendor": {
      "description": "MLS vendor id; required on multi-MLS apps (simplyrets_get_account_info lists them).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "limit": {
      "description": "Results per page, 1-100 (default 10).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "description": "Records to skip (the previous reply's next.offset). Do not combine with lastId.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    },
    "lastId": {
      "description": "Cursor: 0 for the first page, then the previous reply's next.lastId (sort is ignored when set).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simplyrets_get_open_house(openHouseKey, include, vendor)

One open house by its key (the `openHouseKey` of a list result). GET /openhouses/{openHouseKey}.

入力スキーマ

{
  "type": "object",
  "properties": {
    "openHouseKey": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Open house key from simplyrets_list_open_houses."
    },
    "include": {
      "description": "Extra fields: rooms.",
      "minItems": 1,
      "maxItems": 1,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "rooms"
        ]
      }
    },
    "vendor": {
      "description": "MLS vendor id; required on multi-MLS apps (simplyrets_get_account_info lists them).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    }
  },
  "required": [
    "openHouseKey"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simplyrets_list_agents(q, name, state, vendor, limit, ...)

The agent roster of the MLS feed: id, name, address, contact and office. Needs the Agents API add-on on your SimplyRETS app (the demo credentials return an empty list). GET /agents.

入力スキーマ

{
  "type": "object",
  "properties": {
    "q": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Search agent ids and email addresses."
    },
    "name": {
      "description": "First name, last name or both.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "state": {
      "description": "Agent address state.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "vendor": {
      "description": "MLS vendor id; required on multi-MLS apps (simplyrets_get_account_info lists them).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "limit": {
      "description": "Results per page, 1-100 (default 10).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "description": "Records to skip (the previous reply's next.offset). Do not combine with lastId.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simplyrets_list_offices(q, name, state, username, count, ...)

The brokerage office roster of the MLS feed, newest modification first. Needs the Offices API add-on on your SimplyRETS app (the demo credentials cannot use it). Pass count=true for the total. GET /offices.

入力スキーマ

{
  "type": "object",
  "properties": {
    "q": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Match office MLS id, main office MLS id, email (exact) or name (partial)."
    },
    "name": {
      "description": "Partial, case-insensitive office name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "state": {
      "description": "Partial, case-insensitive state.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "username": {
      "description": "Feed username, when the credentials have several for the vendor.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "count": {
      "description": "Also return the total number of matches.",
      "type": "boolean"
    },
    "vendor": {
      "description": "MLS vendor id; required on multi-MLS apps (simplyrets_get_account_info lists them).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "limit": {
      "description": "Results per page, 1-100 (default 10).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "description": "Records to skip (the previous reply's next.offset). Do not combine with lastId.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simplyrets_get_market_analytics(q, status, type, subtype, agent, ...)

Statistics for the listings a search matches (same filters as simplyrets_search_listings): total count, average price, bedrooms, full baths, living area, lot size and year built, and the number of listings per area. Use it for market summaries of a city, zip or price band. GET /properties/analytics.

入力スキーマ

{
  "type": "object",
  "properties": {
    "q": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Keyword search over MLS number, street, unit, city, postal code, subdivision and area; several values match any."
    },
    "status": {
      "description": "Listing status (default Active). Closed = sold or leased.",
      "minItems": 1,
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "Active",
          "Pending",
          "Closed",
          "ActiveUnderContract",
          "Hold",
          "Withdrawn",
          "Expired",
          "Delete",
          "Incomplete",
          "ComingSoon"
        ]
      }
    },
    "type": {
      "description": "Property type (default residential and rental).",
      "minItems": 1,
      "maxItems": 9,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "residential",
          "rental",
          "mobilehome",
          "condominium",
          "multifamily",
          "commercial",
          "commerciallease",
          "land",
          "farm"
        ]
      }
    },
    "subtype": {
      "description": "Property sub type; not every feed supports every value.",
      "minItems": 1,
      "maxItems": 25,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "apartment",
          "boatslip",
          "singlefamilyresidence",
          "deededparking",
          "cabin",
          "condominium",
          "duplex",
          "manufacturedhome",
          "ownyourown",
          "quadruplex",
          "stockcooperative",
          "townhouse",
          "timeshare",
          "triplex",
          "manufacturedonland",
          "farmandranch",
          "agriculture",
          "business",
          "hotelmotel",
          "industrial",
          "mixeduse",
          "officespace",
          "retail",
          "unimprovedland",
          "warehouse"
        ]
      }
    },
    "agent": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Listing agent MLS ids (the co-listing agent is not matched)."
    },
    "salesAgent": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Selling agent MLS ids (sales.agent)."
    },
    "brokers": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Broker or listing office ids, as your MLS provides them."
    },
    "minprice": {
      "description": "Minimum price.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxprice": {
      "description": "Maximum price.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minarea": {
      "description": "Minimum living area, sq ft.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxarea": {
      "description": "Maximum living area, sq ft.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minbaths": {
      "description": "Minimum bathrooms.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxbaths": {
      "description": "Maximum bathrooms.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minbeds": {
      "description": "Minimum bedrooms.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxbeds": {
      "description": "Maximum bedrooms.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxdom": {
      "description": "Maximum days on market (needs Days on Market data in the feed).",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minyear": {
      "description": "Minimum year built.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxyear": {
      "description": "Maximum year built.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minacres": {
      "description": "Minimum acreage.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxacres": {
      "description": "Maximum acreage.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "minGarageSpaces": {
      "description": "Minimum garage spaces.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "maxGarageSpaces": {
      "description": "Maximum garage spaces.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000000
    },
    "postalCodes": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Postal / zip codes."
    },
    "cities": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Cities (case-insensitive). simplyrets_get_feed_metadata lists the cities in the feed."
    },
    "counties": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Counties (case-insensitive)."
    },
    "neighborhoods": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Neighborhoods or subdivisions (case-insensitive)."
    },
    "features": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Interior features, e.g. 'Wet Bar'."
    },
    "exteriorFeatures": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Exterior features, e.g. 'Porch'."
    },
    "pool": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Pool: 'true', 'false' or a value such as 'Private'."
    },
    "water": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      },
      "description": "Water body: 'true', 'false' or a value."
    },
    "points": {
      "description": "A polygon of 'lat,lng' points (3 or more); returns listings inside it. Needs latitude/longitude in the feed.",
      "minItems": 3,
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^-?\\d{1,3}(\\.\\d+)?\\s*,\\s*-?\\d{1,3}(\\.\\d+)?$"
      }
    },
    "idx": {
      "description": "IDX display filter. Default 'null' hides listings whose address or entire listing may not be displayed online; 'ignore' returns them too. Your MLS's display rules still bind how you use the data.",
      "type": "string",
      "enum": [
        "null",
        "listing",
        "address",
        "ignore"
      ]
    },
    "vendor": {
      "description": "MLS vendor id; required on multi-MLS apps (simplyrets_get_account_info lists them).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simplyrets_get_listing_analytics(mlsId, vendor)

Analytics for one listing, such as its price per square foot. GET /properties/{mlsId}/analytics.

入力スキーマ

{
  "type": "object",
  "properties": {
    "mlsId": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "SimplyRETS listing id (the `mlsId` field of a search result)."
    },
    "vendor": {
      "description": "MLS vendor id; required on multi-MLS apps (simplyrets_get_account_info lists them).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    }
  },
  "required": [
    "mlsId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 10 件