RentReboot Apartment Search
NYC rent data and guides; OAuth tools for apartment alerts, saved searches and lottery status.
사용해야 할까요
품질 및 안전성
발견 사항 (1)
- LOWlist_housing_lottery_applications에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"rentreboot": {
"url": "https://rentreboot.com/api/mcp"
}
}
}원격 엔드포인트
https://rentreboot.com/api/mcpstreamable-http할 수 있는 일
도구 목록
도구 (13)
🟢search_guides(query, limit)
Search RentReboot public NYC renter guides by keyword and return canonical URLs.
입력 스키마
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Keywords such as rent stabilization, guarantor, or security deposit"
},
"limit": {
"default": 5,
"type": "integer",
"minimum": 1,
"maximum": 10
}
},
"required": [
"query"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢list_alerted_listings(limit, cursor, includeHidden)
List apartments RentReboot already sent to the connected renter, newest first, with saved, hidden, and contacted/toured/applied state. Pass nextCursor to see older alerts (up to the latest 200). Hidden apartments are left out unless includeHidden is true. Links open the listing through RentReboot. Never returns account identifiers or broker contact details.
입력 스키마
{
"type": "object",
"properties": {
"limit": {
"default": 10,
"type": "integer",
"minimum": 1,
"maximum": 25
},
"cursor": {
"description": "nextCursor from the previous page",
"type": "string",
"pattern": "^\\d{1,4}$"
},
"includeHidden": {
"default": false,
"type": "boolean"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"count": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"listingId": {
"type": "string"
},
"address": {
"type": "string"
},
"neighborhood": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"bedrooms": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"bathrooms": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"price": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"availableAt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"alertSentAt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"source": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"noFee": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"rentStabilized": {
"type": "boolean"
},
"url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"saved": {
"type": "boolean"
},
"hidden": {
"type": "boolean"
},
"status": {
"type": "string",
"enum": [
"none",
"contacted",
"toured",
"applied"
]
}
},
"required": [
"listingId",
"address",
"neighborhood",
"bedrooms",
"bathrooms",
"price",
"availableAt",
"alertSentAt",
"source",
"noFee",
"rentStabilized",
"url",
"saved",
"hidden",
"status"
],
"additionalProperties": false
}
},
"nextCursor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"count",
"results",
"nextCursor"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡update_alerted_listing(listingId, saved, hidden, status)
Change the connected renter's state for one apartment from their alerts: save it, hide it, or mark it contacted, toured, or applied (status "none" clears it). Same as the buttons on the RentReboot dashboard. Use a listingId from list_alerted_listings.
입력 스키마
{
"type": "object",
"properties": {
"listingId": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"saved": {
"type": "boolean"
},
"hidden": {
"type": "boolean"
},
"status": {
"type": "string",
"enum": [
"none",
"contacted",
"toured",
"applied"
]
}
},
"required": [
"listingId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_account
Show the connected renter's plan (free or paid), whether apartment alerts are on or paused, market, alert frequency, and delivery channel, plus a link to manage the account.
입력 스키마
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_search_preferences
Show the connected renter's saved alert search: budget, bedrooms, bathrooms, neighborhoods, move-in date, no-fee and rent-stabilized filters, amenities, subway lines, alert frequency, and channel. Read this before changing the search.
입력 스키마
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢find_search_neighborhoods(query, limit)
Look up neighborhood names and ids the connected renter can add to their alert search, in their own market. Returns names only, not listings.
입력 스키마
{
"type": "object",
"properties": {
"query": {
"description": "Part of a name, for example \"williams\" or \"upper\"",
"type": "string",
"maxLength": 60
},
"limit": {
"default": 20,
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴update_search_preferences(city, maxRent, minRent, bedrooms, includeNearbyBedroomCounts, ...)
Change the connected renter's saved alert search. Send only the fields to change; everything else stays. Saves exactly like the RentReboot preferences page, so its rules apply (for example a search always keeps at least one neighborhood). For a new account, set city together with neighborhoods once; after that the market cannot change here. Confirm the change with the renter first. Weekly recap pauses individual alerts.
입력 스키마
{
"type": "object",
"properties": {
"city": {
"description": "Only for a new search with no neighborhoods yet; send neighborhoods with it",
"type": "string",
"enum": [
"nyc",
"sf",
"la",
"chicago",
"dc",
"miami",
"boston",
"seattle",
"philadelphia",
"london"
]
},
"maxRent": {
"type": "integer",
"minimum": 500,
"maximum": 100000
},
"minRent": {
"description": "null removes the minimum",
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 100000
},
{
"type": "null"
}
]
},
"bedrooms": {
"description": "0 is a studio, 4 means 4 or more",
"minItems": 1,
"maxItems": 5,
"type": "array",
"items": {
"type": "integer",
"minimum": 0,
"maximum": 4
}
},
"includeNearbyBedroomCounts": {
"type": "boolean"
},
"bathrooms": {
"minItems": 1,
"maxItems": 4,
"type": "array",
"items": {
"type": "integer",
"minimum": 1,
"maximum": 4
}
},
"moveInDate": {
"description": "YYYY-MM-DD, or null for no date",
"anyOf": [
{
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
{
"type": "null"
}
]
},
"strictMoveInDate": {
"description": "Only listings available within 31 days before the move-in date",
"type": "boolean"
},
"neighborhoods": {
"description": "Names or ids from find_search_neighborhoods",
"type": "object",
"properties": {
"add": {
"maxItems": 30,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 80
}
},
"remove": {
"maxItems": 30,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 80
}
},
"set": {
"minItems": 1,
"maxItems": 60,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 80
}
}
}
},
"noFeeOnly": {
"type": "boolean"
},
"rentStabilized": {
"type": "string",
"enum": [
"all",
"likely",
"verified"
]
},
"amenities": {
"description": "Replaces the whole amenity list",
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"amenity": {
"type": "string",
"enum": [
"elevator",
"pets",
"dishwasher",
"laundry",
"central_ac",
"doorman",
"gym",
"public_outdoor_space",
"storage",
"bike_room",
"package_room",
"roofdeck",
"virtual_doorman",
"washer_dryer",
"parking",
"furnished"
]
},
"required": {
"type": "boolean"
}
},
"required": [
"amenity",
"required"
]
}
},
"subwayLines": {
"description": "NYC only; replaces the whole list",
"maxItems": 30,
"type": "array",
"items": {
"type": "object",
"properties": {
"line": {
"type": "string",
"pattern": "^[A-Za-z0-9]{1,2}$"
},
"required": {
"type": "boolean"
}
},
"required": [
"line",
"required"
]
}
},
"includeUndisclosedAddresses": {
"type": "boolean"
},
"alertFrequency": {
"description": "minimal (1-2/day), medium (3-4/day), all, or weekly_recap",
"type": "string",
"enum": [
"minimal",
"medium",
"all",
"weekly_recap"
]
},
"weeklyRecapDay": {
"type": "string",
"enum": [
"sunday",
"monday",
"tuesday",
"wednesday",
"thursday",
"friday",
"saturday"
]
},
"channel": {
"description": "Text alerts need a phone number already on the account",
"type": "string",
"enum": [
"email",
"sms",
"both"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡set_apartment_alerts(enabled)
Pause (enabled=false) or resume (enabled=true) the connected renter's apartment alerts. Their search, plan, billing, and Housing Connect settings stay as they are. Confirm with the renter first.
입력 스키마
{
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
},
"required": [
"enabled"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢list_upcoming_matches(limit)
List historical apartment records matching the connected renter’s saved requirements, useful for planning upcoming availability. Read-only and excludes broker contact details and account identifiers.
입력 스키마
{
"type": "object",
"properties": {
"limit": {
"default": 10,
"type": "integer",
"minimum": 1,
"maximum": 25
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"count": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"address": {
"type": "string"
},
"neighborhood": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"bedrooms": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"bathrooms": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"price": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"availableAt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"alertSentAt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"source": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"noFee": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"rentStabilized": {
"type": "boolean"
},
"url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"address",
"neighborhood",
"bedrooms",
"bathrooms",
"price",
"availableAt",
"alertSentAt",
"source",
"noFee",
"rentStabilized",
"url"
],
"additionalProperties": false
}
}
},
"required": [
"count",
"results"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢list_housing_lottery_applications(limit)
List the connected renter’s provider-confirmed NYC Housing Connect application statuses. Read-only. Excludes credentials, application numbers, income, household details, email, and internal identifiers.
입력 스키마
{
"type": "object",
"properties": {
"limit": {
"default": 20,
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"count": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"area": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"status": {
"type": "string"
},
"submittedAt": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"deadline": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"name",
"area",
"status",
"submittedAt",
"deadline"
],
"additionalProperties": false
}
}
},
"required": [
"count",
"results"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_guide(slug)
Retrieve a public RentReboot guide as Markdown using its slug.
입력 스키마
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"maxLength": 120,
"pattern": "^[a-z0-9-]+$"
}
},
"required": [
"slug"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢list_neighborhoods(query, limit)
List NYC neighborhoods that have published RentReboot asking-rent percentile data.
입력 스키마
{
"type": "object",
"properties": {
"query": {
"type": "string",
"maxLength": 100
},
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_rent_data(area, bedrooms, category)
Retrieve aggregate asking-rent percentiles and sample sizes for a published NYC neighborhood. Values are not individual listings or personal data.
입력 스키마
{
"type": "object",
"properties": {
"area": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Neighborhood name or URL slug, for example Chelsea or upper-west-side"
},
"bedrooms": {
"description": "0 means studio; omit to return all bedroom counts",
"type": "integer",
"minimum": 0,
"maximum": 6
},
"category": {
"default": "all",
"type": "string",
"enum": [
"all",
"likely",
"verified"
]
}
},
"required": [
"area"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}커뮤니티
증거