Skip to main content
Glama

경매가 vs 실거래 시세 비교

realty_compare_auction_vs_market
Read-onlyIdempotent

경매 물건의 최저입찰가를 같은 단지 실거래 시세와 대조해 할인율·표면수익률을 낸다. 기본은 오늘 이후 기일 물건만이다(지난 기일이 섞여 나오던 결함 수리, 2026-08-08).

주소·단지명 정규화 정확매칭으로 붙이며, 감정가가 기준선의 50~150% 범위인 건만 비교한다
(지분경매·특수물건을 배제하기 위함). 결과의 `signal`은 주의/관심/보통/낮음/판정보류다.
**시세 기준선은 같은 단지의 같은 면적대(±10%) 실거래 평균이다**(2026-08-16 수리 — 종전엔
단지 전 평형 혼합 평균이라 대형·소형이 섞인 단지에서 할인율이 통째로 어긋났다).
면적을 맞추지 못하면 `discount_vs_market_pct`는 **null**이고 signal은 '판정보류'다 —
그 자리를 `discount_vs_all_types_pct`(혼합평균 대비)로 대신 채워 말하지 마라.
⚠️ 유찰 물건은 `auction.min_bid_source`를 확인하라 — item_list면 최저가가 낡았을 수
있고(`min_bid_note` 동봉) 그 최저가로 계산된 할인율·수익률도 함께 틀어진다.
이 도구는 다른 도구보다 느리다(출처 조회 포함 2~4초).

**이 축의 자리(경매 가격판단 3종 중)**: "이 물건 싸?"는 이게 1차다(시세 자동 조인).
입찰가 책정은 realty_auction_sale_rate(감정가 대비 실제 낙찰가율)와 함께 쓰되,
이 도구의 할인율(시세 대비)과 낙찰가율(감정가 대비)은 **분모가 달라 섞으면 안 된다**.
기준 시세를 손으로 잡을 땐 realty_area_price_bands(수준)/region_price_stats(추이).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sidoNo시도 — '서울'처럼 줄여 써도 되고 '서울특별시'도 된다(서버가 정식명으로 편다). 원장 표기는 서울특별시·경기도·부산광역시·세종특별자치시·강원특별자치도 같은 정식명이다. ⚠️ '광주'는 광주광역시와 경기도 광주시 둘 다라 **한쪽으로 읽지 않고 거절한다**(error='sido_ambiguous') — 광역시면 '광주광역시', 경기도 광주시면 sido='경기도'·sigungu='광주시'로 갈라 넣어라.
limitNo비교할 물건 수 (최대 50) (허용 범위 1~50)
case_noNo특정 사건 하나만 비교할 때 — `2026타경3571` 꼴(연도 4자리 + '타경' + 일련번호). 주면 지역 조건 대신 이 사건만 보고, 기일 제한도 걸지 않는다. 사건번호는 법원 간 중복되니 court_name을 반드시 함께 주라
sigunguNo시군구 — 원장 표기 그대로 넣는다(예: '강남구', '평택시', '기장군'). 특례시·일반구는 '수원시 권선구'처럼 두 토막이다. 시도 이름을 여기 붙이지 마라('서울 강남구'는 안 맞는다) — 시도는 sido로 준다 ⚠️ 시도 없이 시군구만 주면 **합치지 않고 거절한다**(error='region_ambiguous') — '중구'처럼 여러 시도에 같은 이름이 있으면 합친 값은 어느 지역의 것도 아니다. sido와 갈라 넣어라(예: sido='서울특별시'·sigungu='중구'). 거절 응답이 후보를 준다.
court_nameNo법원명 — case_no와 함께 쓴다. 사건번호는 법원 간 유일하지 않아(평균 2.8배 중복) 이걸 빼면 다른 법원 물건이 섞이고 최저가 출처도 확정되지 않는다
usage_nameNo물건 종류 — 이 도구는 같은 단지 실거래와 붙이므로 '아파트'가 기본이다. 오피스텔·다세대·연립주택도 되지만 단지 매칭률이 떨어진다. 원장 값 예: 아파트·오피스텔·다세대·연립주택·단독주택·근린시설·상가아파트
include_pastNo지난 기일 물건 포함 여부 — 기본은 오늘 이후 기일만(입찰 가능 후보). case_no 특정 조회는 이 값과 무관하게 기일 제한이 없다

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / sigungu / description
      Previous value: -"시군구 — 원장 표기 그대로 넣는다(예: '강남구', '평택시', '기장군'). 특례시·일반구는 '수원시 권선구'처럼 두 토막이다. 시도 이름을 여기 붙이지 마라('서울 강남구'는 안 맞는다) — 시도는 sido로 준다"New value: +"시군구 — 원장 표기 그대로 넣는다(예: '강남구', '평택시', '기장군'). 특례시·일반구는 '수원시 권선구'처럼 두 토막이다. 시도 이름을 여기 붙이지 마라('서울 강남구'는 안 맞는다) — 시도는 sido로 준다 ⚠️ 시도 없이 시군구만 주면 **합치지 않고 거절한다**(error='region_ambiguous') — '중구'처럼 여러 시도에 같은 이름이 있으면 합친 값은 어느 지역의 것도 아니다. sido와 갈라 넣어라(예: sido='서울특별시'·sigungu='중구'). 거절 응답이 후보를 준다."
  2. Changed1 schema field changed
    • changedInput schema / properties / sido / description
      Previous value: -"시도 — '서울'처럼 줄여 써도 되고 '서울특별시'도 된다(서버가 정식명으로 편다). 원장 표기는 서울특별시·경기도·부산광역시·세종특별자치시·강원특별자치도 같은 정식명이다. '광주'는 광주광역시와 경기도 광주시 둘 다라 한쪽으로 읽지 않는다 — 정식명으로 넣어라"New value: +"시도 — '서울'처럼 줄여 써도 되고 '서울특별시'도 된다(서버가 정식명으로 편다). 원장 표기는 서울특별시·경기도·부산광역시·세종특별자치시·강원특별자치도 같은 정식명이다. ⚠️ '광주'는 광주광역시와 경기도 광주시 둘 다라 **한쪽으로 읽지 않고 거절한다**(error='sido_ambiguous') — 광역시면 '광주광역시', 경기도 광주시면 sido='경기도'·sigungu='광주시'로 갈라 넣어라."
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -{
      -  "additionalProperties": true,
      -  "title": "realty_compare_auction_vs_marketDictOutput",
      -  "type": "object"
      -}New value: +null
  4. Changed4 schema fields changed
    • addedInput schema / properties / case_no / description
      Added value: +"특정 사건 하나만 비교할 때 — `2026타경3571` 꼴(연도 4자리 + '타경' + 일련번호). 주면 지역 조건 대신 이 사건만 보고, 기일 제한도 걸지 않는다. 사건번호는 법원 간 중복되니 court_name을 반드시 함께 주라"
    • addedInput schema / properties / sido / description
      Added value: +"시도 — '서울'처럼 줄여 써도 되고 '서울특별시'도 된다(서버가 정식명으로 편다). 원장 표기는 서울특별시·경기도·부산광역시·세종특별자치시·강원특별자치도 같은 정식명이다. '광주'는 광주광역시와 경기도 광주시 둘 다라 한쪽으로 읽지 않는다 — 정식명으로 넣어라"
    • addedInput schema / properties / sigungu / description
      Added value: +"시군구 — 원장 표기 그대로 넣는다(예: '강남구', '평택시', '기장군'). 특례시·일반구는 '수원시 권선구'처럼 두 토막이다. 시도 이름을 여기 붙이지 마라('서울 강남구'는 안 맞는다) — 시도는 sido로 준다"
    • addedInput schema / properties / usage_name / description
      Added value: +"물건 종류 — 이 도구는 같은 단지 실거래와 붙이므로 '아파트'가 기본이다. 오피스텔·다세대·연립주택도 되지만 단지 매칭률이 떨어진다. 원장 값 예: 아파트·오피스텔·다세대·연립주택·단독주택·근린시설·상가"
  5. Changed1 schema field changed
    • changedInput schema / properties / limit / description
      Previous value: -"비교할 물건 수 (최대 50)"New value: +"비교할 물건 수 (최대 50) (허용 범위 1~50)"
  6. Changed1 schema field changed
    • addedInput schema / properties / court_name
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "법원명 — case_no와 함께 쓴다. 사건번호는 법원 간 유일하지 않아(평균 2.8배 중복) 이걸 빼면 다른 법원 물건이 섞이고 최저가 출처도 확정되지 않는다",
      +  "title": "Court Name"
      +}
  7. Changed1 schema field changed
    • addedInput schema / properties / include_past
      Added value: +{
      +  "default": false,
      +  "description": "지난 기일 물건 포함 여부 — 기본은 오늘 이후 기일만(입찰 가능 후보). case_no 특정 조회는 이 값과 무관하게 기일 제한이 없다",
      +  "title": "Include Past",
      +  "type": "boolean"
      +}
  8. First observed

TDQS

A5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this as read-only, idempotent, and non-destructive, but the description adds substantial behavioral detail: it is slower (2-4 seconds), uses exact address/complex matching, filters to future dates by default, excludes properties outside the 50-150% appraisal band, and produces a specific signal set. It also discloses edge-case behavior — when area match fails, discount_vs_market_pct is null and signal is '판정보류', explicitly warning not to substitute with discount_vs_all_types_pct. The warning about 유찰 properties and the min_bid_source check further enhances transparency. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but extremely well-structured, using bold markers, warnings, and sections. It front-loads the main purpose, then logically covers filters, edge cases, and usage guidance. Every sentence adds value — no fluff or repetition. The use of bullet-like breaks and emoji warnings makes it scannable despite length, earning the high score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 7 parameters, no output schema, and significant complexity, this description is thorough. It explains behavior, defaults, exclusions, failure modes, performance, and how it relates to sibling tools. An agent has everything needed to call it correctly and interpret results without external documentation. The absence of an output schema is compensated by explicit description of the signal values and the discount fields.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Although schema coverage is 100% and each parameter has a description, the tool description adds crucial context beyond the schema: for case_no it mandates court_name due to court-level duplication, for sido it explains the ambiguity rejection and how to disambiguate (e.g., '광주'), and for sigungu it clarifies the rejection if sido is omitted. It also explains the default for usage_name and the meaning of include_past. This goes well beyond the schema's basic field hints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: comparing the minimum bid of auction properties against the market transaction price of the same complex to produce a discount rate and surface yield. It also distinguishes itself from siblings by explicitly positioning it as the primary tool for 'is this property cheap?' and naming realty_auction_sale_rate as the alternative for bid pricing based on appraisal ratio.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides explicit when-to-use guidance: it is the first choice for auction price judgment with automatic market join, and it lists alternatives for specific needs — realty_auction_sale_rate for bid pricing, realty_area_price_bands/region_price_stats for manual baseline. It also warns against mixing denominators and details default filtering (future dates only) and exclusion criteria (appraisal band, area match).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.