关于 Korea Real Estate
这是一个查询韩国国土交通部公开房产成交数据的 MCP 服务、命令行工具和 TypeScript 库,面向房产数据分析及查价场景。它支持 13 类交易数据,并说明统计口径、样本限制和数据来源;需要 data.go.kr 服务密钥。
主要功能
- 01查询 13 类房产成交数据
- 02计算市场价格统计与月度趋势
- 03估算全租押金比率
- 04解析地区名称及行政区代码
- 05显示数据排除项与样本标准
适用场景
- 01查询指定地区或房产类型的近期成交
- 02比较房产全租押金与估算市价
- 03检查地区代码和数据集申请状态
MCP 相关
作为 MCP 服务向客户端提供地区解析、成交查询、市场摘要和全租比率工具。所有工具均为只读,并在结果中附上来源与查询时间。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
4收录的工具列表 · 更新于 1 天前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| query | string | 是 | 地区。例如:“麻浦区阿岘洞”、“水原市灵通区”、“世宗”、5 位市郡区代码、10 位法定洞代码 |
详细介绍
korea-realestate-mcp
국토교통부 실거래가 공개자료로 아파트·빌라·오피스텔의 시세와 전세가율을 계산하는 MCP 서버, CLI, TypeScript 라이브러리입니다. Claude에게 "이 단지 84㎡ 시세가 어때?", "이 빌라 전세 4억이면 시세 대비 몇 %야?"라고 물으면 실거래 원자료로 근거 있는 숫자를 답할 수 있게 합니다.
> 세종 종촌동 가재마을4단지 75㎡ 전세 3억이면 어느 정도야?
## 세종특별자치시 종촌동 아파트 전세가율
단지: 가재마을4단지(센트레빌) (종촌동 640)
| 항목 | 값 |
|---|---|
| 전세가율 | 53.7% |
| ㎡당 매매 중앙값 (사분위) | 559만원 (538만원 ~ 567만원) |
| ㎡당 전세 중앙값 (사분위) | 300만원 (293만원 ~ 307만원) |
| 표본 | 매매 38건, 전세 36건 |
| 신뢰도 | 높음 |
| 입력 보증금 | 3억원 |
| 추정 전세가 (같은 면적) | 2억 2,506만원 |
| 보증금 ÷ 추정 전세가 | 133.3% |
| 비교 전세 중 위치 | ㎡당 보증금이 입력값 이하인 계약 100% |
| 추정 매매가 (같은 면적) | 4억 1,936만원 |
| 보증금 ÷ 추정 매매가 | 71.5% |
기준: 계약일 기준 최근 12개월 (2025-11-11 초과 ~ 2026-11-11) / 전용면적 75㎡ ±3% / 해제 거래 제외 (1건) / 직거래 제외 (3건) / …
제외: 해제 1건, 직거래 3건 (매매) / 월세 42건, 갱신 23건 (전세 표본에서)
참고 자료이며 계약·투자 판단의 근거가 아닙니다.
출처: 국토교통부 실거래가 공개자료(공공데이터포털), 조회 2026-11-11 23:12 KST
무엇이 다른가
- 13종 전부: 아파트·연립다세대·단독다가구·오피스텔의 매매와 전월세, 분양·입주권, 상업업무용, 토지, 공장·창고.
- 빠짐없이 받기: 모든 쪽을 받고, 받은 건수가
totalCount보다 적으면 다시 받거나 실패로 알립니다. 한 쪽만 받고 끝내지 않습니다. - 조용한 0건을 막기: 이 API는 잘못된 지역 코드·미래 달·옛 행정구역 코드에도 오류 없이 0건을 돌려줍니다. 호출 전에 코드표와 날짜로 먼저 검증합니다.
- 2026-07 행정구역 개편 반영: "인천 중구", "광주광역시 북구", "화성시"를 새 코드(제물포구·영종구, 전남광주통합특별시 북구, 화성시 4개 구)로 바꿔 조회합니다. API가 과거 거래도 새 코드로만 돌려주는 것을 실측으로 확인했습니다.
- 오류를 할 일로 바꾸기: 403 코드 30은 "키가 틀림"과 "그 서비스 미신청"이 바이트까지 같은 응답입니다. 같은 키로 다른 서비스가 성공했으면 미신청으로 좁히고, 신청할 데이터셋 번호와 링크를 알려 줍니다.
doctor명령으로 13종의 신청 상태를 한 번에 봅니다. - 분석 기준을 숨기지 않기: 해제·직거래 제외 건수, 면적 허용 오차, 신고 기한 때문에 덜 잡힌 최근 달, 표본 수와 신뢰도 기준을 결과에 함께 냅니다.
- 키를 새지 않게: 인증키는 URL 쿼리에 실려 가므로, URL과 원본 예외를 오류·로그·도구 결과 어디에도 내보내지 않습니다. 테스트로 확인합니다. 보안 설계
시작하기
1. 인증키 발급과 활용신청
- 공공데이터포털에 가입하고 아래 데이터셋마다 활용신청을 합니다. 자동승인이며 반영까지 최대 1시간 걸릴 수 있습니다.
- 마이페이지에서 일반 인증키를 복사합니다. Encoding·Decoding 어느 쪽이든 됩니다.
| 용도 | 데이터셋 |
|---|---|
| 아파트 시세·전세가율 | 아파트 매매, 아파트 전월세 |
| 빌라(연립·다세대) | 매매, 전월세 |
| 오피스텔 | 매매, 전월세 |
| 그 밖 (조회만) | 단독·다가구 매매·전월세, 분양·입주권, 상업업무용, 토지, 공장·창고, 아파트 매매 상세 |
신청 상태 확인:
DATA_GO_KR_SERVICE_KEY=발급받은키 npx -y [email protected] doctor
2. Claude에 연결
Claude Code
claude mcp add korea-realestate -e DATA_GO_KR_SERVICE_KEY=발급받은키 -- npx -y [email protected]
Claude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"korea-realestate": {
"command": "npx",
"args": ["-y", "[email protected]"],
"env": { "DATA_GO_KR_SERVICE_KEY": "발급받은키" }
}
}
}
설정 파일에 키가 평문으로 남습니다. 파일 권한을 확인하고, 키가 새면 포털에서 재발급하세요.
MCP 도구
| 도구 | 하는 일 |
|---|---|
resolve_region | 지역 이름 → 시군구 코드·법정동. 이름이 겹치면 후보와 "region에 넣을 값"을 돌려줍니다 |
search_deals | 13종 실거래 원자료를 최신순으로 (최대 50건, 24개월) |
market_summary | 매매 시세: 중앙값, 범위, 사분위, ㎡당·3.3㎡당 가격, 월별 추이, 최근 거래 |
jeonse_ratio | 전세가율. 보증금과 면적을 주면 추정 전세가·매매가 대비 비율과 비교 전세 중 위치 |
모든 도구는 읽기 전용이고, 결과 끝에 출처와 조회 시각을 붙입니다.
지역은 이렇게 넣을 수 있습니다:
- 시군구:
강남구,서울 강남구,수원시 영통구,세종 - 법정동:
마포구 아현동,아현동,세종 조치원읍 - 코드: 시군구 5자리, 법정동 10자리
- 행정동·줄임말·옛 이름:
역삼1동,강남,인천 중구
CLI
export DATA_GO_KR_SERVICE_KEY=발급받은키
korea-realestate-mcp doctor
korea-realestate-mcp region 신사동
korea-realestate-mcp deals --type apt --deal rent --region "마포구 아현동" --months 3
korea-realestate-mcp summary --type apt --region "마포구 아현동" --name 래미안푸르지오 --area 84
korea-realestate-mcp ratio --type rh --region "강서구 화곡동" --area 59 --deposit 4억 --json
인자 없이 터미널에서 실행하면 도움말이 나오고, 파이프로 실행하면(MCP 클라이언트가 띄울 때) stdio MCP 서버로 동작합니다.
라이브러리
import { createClient, summarize, resolveRegion } from "korea-realestate-mcp";
const client = createClient(); // DATA_GO_KR_SERVICE_KEY를 읽음. 또는 { serviceKey }
const deals = await client.fetchMonth("apt-sale", "11440", "202610"); // 금액은 원 단위
const r = await summarize({ client }, { propertyType: "apt", region: "마포구 아현동", area: 84 });
fetch, 캐시(CacheStore), 시계를 주입할 수 있습니다. 라이브러리 진입점은 MCP SDK를 불러오지 않습니다.
计算口径与限制
- 期间:“最近 12 个月”按 KST 当日往前推 12 个月的合同日期计算。API 调用会查询 13 个月。
- 最近两个月:实际交易申报期限为 30 天,因此记录数量会偏少。月度趋势会用
*标记。 - 排除项:始终排除已解除交易,默认排除自行交易(亲属间交易等可能拉低行情)。始终显示排除数量。
- 全租房样本:月租金为 0 韩元且不是续约合同。包含合同类型为空的合同(实测数量较多)。
- 面积容差:指定小区时为 ±3%,公寓地区范围为 ±10%,别墅和写字楼为 ±15%。
- 全租房价格比样本:买卖和全租房各至少 5 笔时才会提供。可信度为“高”需指定小区、各至少 10 笔,且最近 6 个月各至少 3 笔。地区范围的可信度最高为“中”。
- 不作判断:仅返回数字和口径。结果是基于公开实际交易数据的参考资料,不可作为合同或投资决策的依据。签约前需查验登记簿并咨询专家。
- 实测范围:已通过 13 种数据集的实际响应(世宗 2026-10)确认字段。未确认各服务的数据起始月份。
- 被遮蔽的地号:独栋住宅及多户住宅、土地、工厂及仓库的买卖数据中,公开资料里的部分地号会以
2**形式遮蔽。独栋住宅及多户住宅的月租和全租数据不包含地号。 - 调用限额:单次查询最多进行 80 次 API 调用。开发账号每天限 10,000 次。包含多个区的整座城市查询(例如水原市 24 个月的全租房价格比)会超出限额,请缩小到区级范围。
安全设计
- 认证密钥仅通过环境变量
DATA_GO_KR_SERVICE_KEY接收。工具输入中没有密钥字段。 - 将 Encoding 密钥和 Decoding 密钥规范化为相同的原始值后,只编码一次。双重编码会导致 403。
- 由于密钥位于请求 URL 中,错误中不会包含 URL、原始异常(如
Failed to parse URL from …)或响应正文。所有输出都会经过脱敏,屏蔽密钥的原始形式、编码形式以及+转为空格的形式。 - 请求仅发送至
https://apis.data.go.kr,使用redirect: "error",超时时间为 15 秒,响应大小上限为 16MB,并发数为 4。 - XML 会拒绝 DOCTYPE,并将值作为字符串读取,长度限制为 200 个字符。只有当上游代码值为数字时才予以信任。
- 日志仅写入 stderr,只记录服务、地区、月份和状态。
- 代码库使用 gitleaks(包括 serviceKey 规则)、Semgrep、zizmor、CodeQL 和 Dependabot,并将 Actions 固定到 SHA。npm 发布通过 GitHub Actions 附加 provenance,首次发布后仅使用 trusted publishing(OIDC)。
请按照 SECURITY.md 中的方法报告漏洞。
开发
pnpm install
pnpm test # 단위·통합 테스트 (네트워크 없음)
pnpm typecheck && pnpm lint && pnpm build
LIVE=1 DATA_GO_KR_SERVICE_KEY=… pnpm vitest run test/live.test.ts # 실제 API 스모크 (약 3건 호출)
pnpm gen:regions <법정동코드 전체자료.txt> # 지역 코드표 다시 만들기
设计文档:docs/superpowers/specs/2026-11-11-v0.1-design.md
数据来源与许可
- 实际交易价格:国土交通部实际交易价格公开 API(公共数据门户)。此软件包不包含实际交易数据,而是使用用户的密钥直接调用 API。
- 地区代码表(
data/regions.json):行政安全部行政标准代码管理系统法定洞代码全集(韩国公共知识共享许可第 1 类,来源:行政安全部)。 - 代码:MIT
English
korea-realestate-mcp 是一个 MCP 服务、命令行工具和 TypeScript 库,用于查询韩国官方房地产交易数据(MOLIT,通过 data.go.kr)。
- 查询全部 13 种交易数据集(公寓、联排住宅、独栋住宅、写字楼、预售权、商业用房、土地、工业用房)。
- 计算市场摘要(中位数、IQR、每 ㎡ 单价、月度趋势)和全租(一次性押金租赁)价格比,并显示所有排除项和阈值。
- 将韩国地区名称、法定洞代码和 2026 年以前的行政区名称解析为 API 实际接受的代码。对于错误或已停用的代码,API 会返回空结果且不报错,因此会在调用前验证输入。
- 将含糊的网关错误转换为可采取行动的提示,包括应订阅哪个数据集。
- 不会在任何错误、日志或工具结果中泄露 API 密钥。密钥通过 URL 查询参数传递,因此不会显示 URL 或原始异常。测试会对此进行验证。
需要在 data.go.kr 获取免费的服务密钥,并将其设为 DATA_GO_KR_SERVICE_KEY。结果仅供参考,不构成建议。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。