Reevl — Korean Real Estate
Korean apartment data: official transaction prices, jeonse ratios, AI forecasts. 45,000+ complexes.
我该使用它吗
质量与安全性
发现(2)
- LOW在 describe_fields 中
- LOW在 list_articles 中
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"reevl-mcp": {
"url": "https://reevl.co.kr/api/mcp"
}
}
}远程端点
https://reevl.co.kr/api/mcpstreamable-http它能做什么
工具清单
工具(7)
🟢search_apartments(sido, gu, dong, brand, builder, ...)
전국 아파트 45,000여 개를 조건으로 거른다. "강남구 20억 이하 대단지", "전세가율 높은 곳", "AI 1년 예측이 높은 단지"처럼 조건이 있는 질문에 쓴다. 지역·브랜드·시공사는 완전일치이고, 수치 축은 <축>_min·<축>_max로 범위를 준다. 응답에 units(단위 설명)와 total이 함께 온다 — 단위를 지어내지 말고 units를 그대로 읽을 것. 기본 20건이며 total로 전체 규모를 알 수 있다. ★비교·순위·집계처럼 여러 건을 봐야 하는 질문이면 **한 번에 limit=100으로 받아 직접 추려라.** 20건씩 나눠 여러 번 부르는 것보다 그쪽이 훨씬 싸다(호출 비용은 건수와 거의 무관하다). 수천 건을 훑어야 하면 offset으로 넘기지 말고 describe_fields의 분포를 먼저 보고 조건을 좁혀라.
输入模式
{
"type": "object",
"properties": {
"sido": {
"type": "string",
"description": "시도. 예: 서울, 경기, 부산. (광주는 전남광주로 정규화된다)"
},
"gu": {
"type": "string",
"description": "시군구. 예: 강남구, 수원시 장안구. ★구를 둔 시는 '수원시'처럼 **시 단위로도** 받는다(하위 구 전체가 잡히고 normalized에 그 사실이 온다)"
},
"dong": {
"type": "string",
"description": "읍면동. 예: 대치동"
},
"brand": {
"type": "string",
"description": "브랜드. 예: 자이, 래미안, 힐스테이트"
},
"builder": {
"type": "string",
"description": "시공사. 예: 현대건설"
},
"q": {
"type": "string",
"description": "단지명 부분 일치 검색어"
},
"price_min": {
"type": "number",
"description": "매매 대표가 하한(만원)"
},
"price_max": {
"type": "number",
"description": "매매 대표가 상한(만원)"
},
"hh_min": {
"type": "number",
"description": "세대수 하한"
},
"age_max": {
"type": "number",
"description": "준공 후 경과 연수 상한"
},
"jr_min": {
"type": "number",
"description": "전세가율 하한(%). 값 그대로 — 60이면 60%"
},
"fc12_min": {
"type": "number",
"description": "리블 AI 1년 예측 하한(%). 값 그대로"
},
"sort": {
"type": "string",
"description": "정렬 축(수치 축 이름). 예: price, fc12, hh, jr"
},
"order": {
"type": "string",
"enum": [
"asc",
"desc"
],
"description": "기본 desc"
},
"limit": {
"type": "number",
"description": "1~100, 기본 20"
},
"offset": {
"type": "number",
"description": "건너뛸 건수(페이지네이션)"
},
"fields": {
"type": "string",
"description": "쉼표로 구분한 축 목록, 또는 'all'. 기본은 14축(토큰 절약)"
},
"status": {
"type": "string",
"enum": [
"existing",
"upcoming",
"unranked"
],
"description": "단지 상태로 좁힌다. existing=기존 단지 · upcoming=분양 예정(price가 분양가) · unranked=무순위 청약. ★예측(fc*)으로 정렬·필터하면 자동으로 existing만 남는다 — 분양 예정을 보려면 여기서 명시할 것"
}
}
}输出模式
{
"type": "object",
"properties": {
"total": {
"type": "number",
"description": "조건에 맞는 **전체** 건수(반환 건수가 아니다)"
},
"offset": {
"type": "number"
},
"limit": {
"type": "number"
},
"returned": {
"type": "number",
"description": "이번에 실제로 담긴 건수"
},
"hasMore": {
"type": "boolean"
},
"nextOffset": {
"type": "number",
"description": "다음 쪽을 받을 때 offset에 넣을 값"
},
"fields": {
"type": "array",
"items": {
"type": "string"
},
"description": "items에 담긴 축 목록"
},
"items": {
"type": "array",
"items": {
"type": "object"
},
"description": "단지 목록. 담기는 축은 fields를 따른다. status 축이 기본으로 포함된다 — upcoming이면 아직 안 지어진 단지이고 price는 분양가다"
},
"normalized": {
"type": "object",
"description": "고쳐 쓴 인자(예: '광주' → '전남광주'). 있으면 다음엔 고쳐 부를 것"
},
"units": {
"type": "object",
"description": "축 이름 → 단위·뜻 설명. 숫자를 옮길 때 이 값을 그대로 읽는다"
},
"source": {
"type": "string",
"description": "데이터 출처와 갱신일"
},
"notice": {
"type": "string",
"description": "참고용 통계라는 고지. 투자 자문·중개가 아니다"
}
},
"required": [
"total",
"returned",
"items",
"units",
"source"
]
}🟢get_apartment(cid)
단지 하나의 전 축을 뜻이 통하는 묶음(기본·가격·전세월세·거래·등락·AI예측·입지·건물)으로 준다. search_apartments로 고른 뒤 그 cid로 부른다. 특정 단지를 판단해야 할 때 쓴다.
输入模式
{
"type": "object",
"properties": {
"cid": {
"type": "string",
"description": "단지 식별자. 예: '11290|길음뉴타운1단지(래미안길음1차)|길음동|1279'"
}
},
"required": [
"cid"
]
}输出模式
{
"type": "object",
"properties": {
"cid": {
"type": "string"
},
"name": {
"type": "string"
},
"기본": {
"type": "object",
"description": "식별·위치·세대수·준공 등"
},
"가격": {
"type": "object",
"description": "매매 대표가·평단가·공시가격·시세 등"
},
"전세월세": {
"type": "object",
"description": "전세가율·전세총액·갭·월세 등"
},
"거래": {
"type": "object",
"description": "거래량·수요 지표"
},
"등락": {
"type": "object",
"description": "6·12·36개월 변동률"
},
"AI예측": {
"type": "object",
"description": "리블 AI 6·12·24개월 예측"
},
"입지": {
"type": "object",
"description": "지하철·환승·학군·공원·거주 점수"
},
"주변": {
"type": "object",
"description": "초등·대학·유치원"
},
"건물": {
"type": "object",
"description": "용적률·건폐율·대지지분·주차·관리비"
},
"web": {
"type": "string",
"description": "이 단지의 리블 웹페이지 주소"
},
"units": {
"type": "object",
"description": "축 이름 → 단위·뜻 설명. 숫자를 옮길 때 이 값을 그대로 읽는다"
},
"source": {
"type": "string",
"description": "데이터 출처와 갱신일"
},
"notice": {
"type": "string",
"description": "참고용 통계라는 고지. 투자 자문·중개가 아니다"
}
},
"required": [
"cid",
"name",
"units",
"source"
]
}🟢search_properties(kind, sido, gu, sort, limit)
빌라(연립·다세대)·오피스텔·단독다가구·토지·상가/사무실·아파트 분양권의 실거래를 지역별로 준다. "송파구 빌라 시세", "제주 토지 평당가", "강남 상가 얼마"처럼 **아파트가 아닌** 질문에 쓴다. ★아파트는 이 도구가 아니라 search_apartments를 쓸 것 — 둘은 데이터가 완전히 분리돼 있다. ★지역(sido+gu)이 **반드시** 필요하다. 전국 단위 목록은 주지 않는다 — 빌라만 24만 곳이라 한 번에 줄 수 없고, 준다 해도 읽을 수 없다. ★집계 단위가 유형마다 다르다: 빌라·오피스텔·분양권은 **단지**, 단독·토지·상가는 **법정동**이다 (응답의 unit이 알려준다). 단독·토지·상가에서 name은 건물 이름이 아니라 동 이름이다. ★AI 예측(fc)은 없다. 빌라는 단지당 20년에 10건꼴이라 예측이 성립하지 않는다 — 있는 척하지 말고 "실거래 통계"로만 답할 것.
输入模式
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"villa",
"officetel",
"detached",
"land",
"commercial",
"presale",
"villa_rent",
"officetel_rent",
"detached_rent",
"subscription",
"rental",
"auction"
],
"description": "villa=연립다세대 · officetel=오피스텔 · detached=단독다가구 · land=토지 · commercial=상가/사무실/건물 · presale=아파트 분양권 · ★_rent가 붙으면 **전월세**다(villa_rent·officetel_rent·detached_rent) — rep_price 대신 jtot(전세 대표가)·wolse_med(중위 월세)를 본다 · subscription=청약(분양 공고, 실거래 없음) · rental=공공임대(LH·마이홈 공급정보, 실거래 없음) · auction=공매(온비드, 금액은 감정가이며 실거래가 아님)"
},
"sido": {
"type": "string",
"description": "시도. 예: 서울, 제주. (광주는 전남광주로 정규화된다)"
},
"gu": {
"type": "string",
"description": "시군구. 예: 송파구, 제주시"
},
"sort": {
"type": "string",
"enum": [
"n_total",
"ppm",
"rep_price",
"jtot",
"wolse_med",
"min_low",
"sub_end"
],
"description": "정렬 축. 기본 n_total(거래 많은 순). ★유형에 없는 축으로 정렬하면 순서가 무의미해진다 — 전월세는 jtot·wolse_med, 공매는 min_low, 청약은 sub_end를 쓴다"
},
"limit": {
"type": "number",
"description": "1~100, 기본 20"
}
},
"required": [
"kind",
"gu"
]
}输出模式
{
"type": "object",
"properties": {
"kind": {
"type": "string"
},
"label": {
"type": "string",
"description": "유형 이름(빌라·토지 등)"
},
"deal": {
"type": "string",
"description": "'매매' 또는 '전월세'. ★label은 둘 다 '빌라'라 이 축으로 갈라야 한다"
},
"no_trades": {
"type": "boolean",
"description": "있으면 실거래가 아니다(청약=공고가·공매=감정가). 시세로 인용하지 말 것"
},
"unit": {
"type": "string",
"description": "'단지' 또는 '법정동' — items의 name이 무엇인지 알려준다"
},
"region": {
"type": "string"
},
"total": {
"type": "number",
"description": "그 지역의 전체 단위 수(반환 건수가 아니다)"
},
"returned": {
"type": "number"
},
"items": {
"type": "array",
"items": {
"type": "object"
},
"description": "유형에 따라 담기는 축이 다르다. ★단위는 응답의 units를 그대로 읽을 것 — 지어내면 100배·1만배 틀린다"
},
"units": {
"type": "object",
"description": "축 이름 → 단위·뜻 설명. 숫자를 옮길 때 이 값을 그대로 읽는다"
},
"source": {
"type": "string",
"description": "데이터 출처와 갱신일"
},
"notice": {
"type": "string",
"description": "참고용 통계라는 고지. 투자 자문·중개가 아니다"
}
},
"required": [
"kind",
"unit",
"total",
"returned",
"items",
"units",
"source"
]
}🟢get_transactions(cid, kind, deal, area_m2, limit)
한 단지(또는 법정동)의 **개별 거래**를 최신순으로 준다 — 날짜·금액·면적·층까지. 다른 도구는 "최근 1년 102건"처럼 **집계**만 줘서 "가장 최근 거래가 언제 얼마"에 답할 수 없었다. "이 단지 최근 거래", "같은 평형 최근 10건", "직전 거래 대비 얼마나 올랐나"에 이 도구를 쓴다. ★아파트와 유형 **전부** 지원한다(kind 생략 시 아파트). ★전월세는 금액이 **보증금·월세 둘**이다 — price 하나로 뭉치지 말 것. 월세 0이면 순수 전세다. ★해제(취소)된 신고도 그대로 준다(canceled=true). 지우면 취소된 신고가를 확인할 방법이 없어서다 — 시세로 인용할 때는 반드시 빼고 말할 것. ★cid는 search_apartments·search_properties 응답에 들어 있다. 손으로 조립하지 말 것.
输入模式
{
"type": "object",
"properties": {
"cid": {
"type": "string",
"description": "단지 식별자. 검색 응답의 cid를 그대로 쓴다"
},
"kind": {
"type": "string",
"enum": [
"apt",
"villa",
"officetel",
"detached",
"land",
"commercial",
"presale",
"villa_rent",
"officetel_rent",
"detached_rent"
],
"description": "기본 apt(아파트). ★_rent는 전월세라 응답 형식이 다르다"
},
"deal": {
"type": "string",
"enum": [
"sale",
"rent"
],
"description": "아파트만 해당. 기본 sale. rent면 전월세 실거래를 준다"
},
"area_m2": {
"type": "number",
"description": "전용면적(㎡)으로 거른다. ±1.5㎡ 안을 같은 평형으로 본다"
},
"limit": {
"type": "number",
"description": "1~200, 기본 30"
}
},
"required": [
"cid"
]
}输出模式
{
"type": "object",
"properties": {
"cid": {
"type": "string"
},
"kind": {
"type": "string"
},
"deal": {
"type": "string"
},
"total": {
"type": "number",
"description": "그 단지의 전체 거래 수(반환 건수가 아니다)"
},
"returned": {
"type": "number"
},
"items": {
"type": "array",
"items": {
"type": "object"
},
"description": "최신순. 매매=date·price·area_m2·floor·canceled · 전월세=date·deposit·monthly·area_m2·floor"
},
"latest": {
"type": "object",
"description": "가장 최근 1건(해제 제외). 없으면 생략"
},
"units": {
"type": "object",
"description": "축 이름 → 단위·뜻 설명. 숫자를 옮길 때 이 값을 그대로 읽는다"
},
"source": {
"type": "string",
"description": "데이터 출처와 갱신일"
},
"notice": {
"type": "string",
"description": "참고용 통계라는 고지. 투자 자문·중개가 아니다"
}
},
"required": [
"cid",
"kind",
"total",
"returned",
"items",
"units",
"source"
]
}🟢get_loan_rules
주택담보대출의 **현행 규제 수치**를 준다 — LTV·DSR·스트레스 가산금리·규제지역·가격대별 상한. "5억 아파트 사려면 대출 얼마 나오나", "연봉 5천에 현금 1억이면 살 수 있나"에 이 도구를 먼저 부른다. ★★리블은 **계산하지 않는다.** 이 값을 받아서 **네가** 계산하라 — 규제는 자주 바뀌는데 계산기를 우리가 들고 있으면 바뀐 날부터 조용히 틀린 답이 나간다. 우리는 사실과 기준일을 주고, 산수는 네가 하는 편이 정확하다. ★응답의 as_of 이후 개정은 반영돼 있지 않다 — 답할 때 그 날짜를 함께 말할 것. ★how_to_calculate에 순서가 적혀 있다. LTV 한도와 DSR 한도 중 **작은 쪽**이 실제 한도다. ★취득세·중개보수는 이 표에 **없다**(가격·주택수·지역에 따라 갈린다). 모르면 모른다고 하라.
输入模式
{
"type": "object",
"properties": {}
}输出模式
{
"type": "object",
"properties": {
"as_of": {
"type": "string",
"description": "이 규제의 기준일. 답변에 반드시 밝힐 것"
},
"disclaimer": {
"type": "string"
},
"ltv": {
"type": "object"
},
"regulated_area_caps": {
"type": "object"
},
"dsr": {
"type": "object"
},
"stress_dsr": {
"type": "object"
},
"regulated_areas": {
"type": "object",
"description": "규제지역 목록(LTV 40% + 가격대별 상한)"
},
"how_to_calculate": {
"type": "array",
"items": {
"type": "string"
}
},
"sources": {
"type": "array",
"items": {
"type": "object"
}
}
},
"required": [
"as_of",
"disclaimer",
"ltv",
"dsr",
"how_to_calculate"
]
}🟢describe_fields(field, sido)
검색에 쓸 수 있는 모든 축과 **단위**, 값의 분포(최소·중위·최대)와 시도별 단지 수를 준다. ★조건 검색 전에 한 번 부르는 것을 권한다 — 단위를 모르고 범위를 넣으면 100배 틀린 조건이 된다 (예: 전세가율은 값 그대로 %, 세대당 대지지분은 10으로 나눠야 ㎡).
输入模式
{
"type": "object",
"properties": {
"field": {
"type": "string",
"description": "이 축의 실제 값 목록을 받는다(sido·gu·dong·brand·builder 등 문자 축)"
},
"sido": {
"type": "string",
"description": "field=gu일 때 특정 시도로 좁힌다"
}
}
}输出模式
{
"type": "object",
"properties": {
"dataset": {
"type": "string"
},
"total": {
"type": "number",
"description": "전체 단지 수"
},
"endpoints": {
"type": "object"
},
"filters": {
"type": "object",
"description": "쓸 수 있는 인자 목록(문자·수치·검색·페이징·정렬)"
},
"sido": {
"description": "인자 없이 부르면 시도별 단지 수 배열, field를 주면 좁힌 시도 문자열"
},
"sido_aliases": {
"type": "object",
"description": "정식 명칭 → 사용할 값(예: '서울특별시' → '서울')"
},
"sido_note": {
"type": "string"
},
"numeric_stats": {
"type": "object",
"description": "수치 축의 최소·중위·최대. 범위를 정하기 전에 본다"
},
"stats_note": {
"type": "string"
},
"field": {
"type": "string",
"description": "field 인자를 준 경우 그 축 이름"
},
"values": {
"type": "array",
"items": {
"type": "object"
},
"description": "field 인자를 준 경우 그 축의 실제 값 목록"
},
"count": {
"type": "number"
},
"units": {
"type": "object",
"description": "축 이름 → 단위·뜻 설명. 숫자를 옮길 때 이 값을 그대로 읽는다"
},
"source": {
"type": "string",
"description": "데이터 출처와 갱신일"
},
"notice": {
"type": "string",
"description": "참고용 통계라는 고지. 투자 자문·중개가 아니다"
}
},
"required": [
"units",
"source"
]
}🟢list_articles(limit)
리블이 발행한 부동산 브리핑 목록(제목·요약·발행일·링크). 정책 보도자료 정리와 실거래 데이터 분석을 거의 매일 낸다. 최근 시장 상황이나 정책 흐름을 물을 때 근거로 쓴다.
输入模式
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "1~30, 기본 10"
}
}
}输出模式
{
"type": "object",
"properties": {
"count": {
"type": "number"
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"summary": {
"type": "string"
},
"date": {
"type": "string"
},
"category": {
"type": "string"
},
"url": {
"type": "string"
},
"source": {
"type": "string"
}
}
},
"description": "인용할 때 url을 함께 밝힌다"
},
"source": {
"type": "string",
"description": "데이터 출처와 갱신일"
},
"notice": {
"type": "string",
"description": "참고용 통계라는 고지. 투자 자문·중개가 아니다"
}
},
"required": [
"count",
"items",
"source"
]
}推荐提示词
search_apartmentssearch_apartmentsget_apartmentget_apartmentlist_articles社区
证据