lawmadi-os

Verify Korean legal citations against law.go.kr: precedents, statutes, bar-exam answers.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
88%
Naming quality
92%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~7,960Tokens (tool definitions)
~1.4 KBTypical response size
Significant attention impact (6.22% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "lawmadi-os": {
      "url": "https://lawmadi-os-v60-938146962157.asia-northeast3.run.app/mcp"
    }
  }
}

Remote endpoints

https://lawmadi-os-v60-938146962157.asia-northeast3.run.app/mcpstreamable-http
https://lawmadi.com/mcpstreamable-http

What it can do

Tool inventory

Tools (19)

๐ŸŸข Read-only๐ŸŸก Write๐Ÿ”ด Deleteโšช Unknown
โšชask(query, lang, idempotency_key, client_tag)

[KEY REQUIRED ยท 2 credits] ํ•œ๊ตญ ๋ฒ•๋ฅ  ์งˆ๋ฌธ์— ๋‹ตํ•ฉ๋‹ˆ๋‹ค. 60๋ช…์˜ ์ „๋ฌธ ๋ฆฌ๋” ์ค‘ ํ•œ ๋ช…์—๊ฒŒ ์ž๋™ ๋ฐฐ์ •ํ•˜๊ณ , ์ธ์šฉํ•œ ์กฐ๋ฌธ์„ law.go.kr์—์„œ ์‹ค์‹œ๊ฐ„ ๊ฒ€์ฆํ•œ ๋ถ„์„์„ ๋Œ๋ ค์ค๋‹ˆ๋‹ค. ํ•œ๊ตญ์–ดยท์˜์–ด ๋ชจ๋‘ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. / Ask a Korean legal question. Routes to 1 of 60 specialist AI legal leaders and returns a statute-verified analysis (real-time law.go.kr check). Korean and English.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Legal question in Korean or English (max 2000 chars)."
    },
    "lang": {
      "type": "string",
      "enum": [
        "ko",
        "en",
        ""
      ],
      "description": "Response language. Auto-detected if omitted."
    },
    "idempotency_key": {
      "type": "string",
      "description": "์„ ํƒ. ์žฌ์‹œ๋„ ์•ˆ์ „ ํ‚ค(8~64์ž, ์˜์ˆซ์žยท_-.). ๊ฐ™์€ ํ‚ค๋กœ ๋‹ค์‹œ ๋ถ€๋ฅด๋ฉด **๋‘ ๋ฒˆ ๊ณผ๊ธˆ๋˜์ง€ ์•Š๊ณ ** ๋ณด๊ด€๋œ ๋‹ต๋ณ€์„ ๊ทธ๋Œ€๋กœ ๋Œ๋ ค์ค๋‹ˆ๋‹ค(24์‹œ๊ฐ„). ํƒ€์ž„์•„์›ƒยท์—ฐ๊ฒฐ ๋Š๊น€์œผ๋กœ ์‘๋‹ต์„ ๋ชป ๋ฐ›์•˜์„ ๋•Œ ๊ฐ™์€ ํ‚ค๋กœ ์žฌ์‹œ๋„ํ•˜์„ธ์š”. / Optional retry-safe key (8-64 chars). Retrying with the same key is never charged twice and replays the stored answer for 24h."
    },
    "client_tag": {
      "type": "string",
      "description": "์„ ํƒ. client_tag: ํ˜ธ์ถœ์ž ์‹๋ณ„์šฉ, **์‘๋‹ต์— ์˜ํ–ฅ ์—†์Œ**(8~64์ž, ์˜์ˆซ์žยท_-.). ์„œ๋ฒ„ ๋กœ๊ทธ์—๋งŒ ๋‚จ์•„ ํ˜ธ์ถœ์„ ๊ณจ๋ผ ์„ธ๋Š” ๋ฐ ์”๋‹ˆ๋‹ค. ํ˜•์‹์ด ์–ด๊ธ‹๋‚˜๋ฉด ๋ฌด์‹œํ•ฉ๋‹ˆ๋‹ค โ€” ๊ฑฐ์ ˆํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์งˆ์˜ ๋ณธ๋ฌธ์— ์„ž์ง€ ๋งˆ์„ธ์š”: ๋ณธ๋ฌธ์— ๋„ฃ์œผ๋ฉด ์งˆ๋ฌธ์˜ ์ผ๋ถ€๊ฐ€ ๋˜์–ด ๋ถ„๋ฅ˜์™€ ๊ฒ€์ฆ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. / Optional caller label (8-64 chars). Logged only; never affects the response. Invalid values are ignored, not rejected. Do not put it in the query text โ€” there it becomes part of the question."
    }
  },
  "required": [
    "query"
  ]
}
โšชask_expert(query, lang, idempotency_key, client_tag)

[KEY REQUIRED ยท 3 credits ยท PRO plan only] ์ „๋ฌธ๊ฐ€ ๋ชจ๋“œ ๋ฒ•๋ฅ  ๋ถ„์„ โ€” ์ „์ฒด ๊ฒ€์ฆ ํŒŒ์ดํ”„๋ผ์ธ์„ ๋Œ๋ ค ๋” ๊นŠ์ด ์ธ์šฉ๋œ ๋‹ต๋ณ€์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. `ask`๋ณด๋‹ค ๋А๋ฆฝ๋‹ˆ๋‹ค. **Pro ์š”๊ธˆ์ œ ์ „์šฉ์ž…๋‹ˆ๋‹ค**(Pro ํฌ๋ ˆ๋”ง ํŒฉ ๊ตฌ๋งค ์‹œ ํ™œ์„ฑํ™”). ์ž”์•ก๋งŒ์œผ๋กœ๋Š” ์—ด๋ฆฌ์ง€ ์•Š์œผ๋ฉฐ, Pro๊ฐ€ ์•„๋‹ˆ๋ฉด 2ํฌ๋ ˆ๋”ง์„ ์ฐจ๊ฐํ•˜์ง€ ์•Š๊ณ  ๊ฑฐ์ ˆํ•ฉ๋‹ˆ๋‹ค โ€” ๊ทธ ๊ฒฝ์šฐ `ask`(1ํฌ๋ ˆ๋”ง)๋ฅผ ์“ฐ์„ธ์š”. / Expert mode legal analysis โ€” runs the full verification pipeline for a more detailed, deeply-cited answer. Slower than `ask`. **Pro plan only** (unlocked by buying the Pro credit pack); a positive balance alone is not enough. Non-Pro callers are refused without being charged โ€” use `ask` (1 credit) instead.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Legal question in Korean or English (max 2000 chars)."
    },
    "lang": {
      "type": "string",
      "enum": [
        "ko",
        "en",
        ""
      ],
      "description": "Response language. Auto-detected if omitted."
    },
    "idempotency_key": {
      "type": "string",
      "description": "์„ ํƒ. ์žฌ์‹œ๋„ ์•ˆ์ „ ํ‚ค(8~64์ž, ์˜์ˆซ์žยท_-.). ๊ฐ™์€ ํ‚ค๋กœ ๋‹ค์‹œ ๋ถ€๋ฅด๋ฉด **๋‘ ๋ฒˆ ๊ณผ๊ธˆ๋˜์ง€ ์•Š๊ณ ** ๋ณด๊ด€๋œ ๋‹ต๋ณ€์„ ๊ทธ๋Œ€๋กœ ๋Œ๋ ค์ค๋‹ˆ๋‹ค(24์‹œ๊ฐ„). ์ „๋ฌธ๊ฐ€ ๋‹ต๋ณ€์€ 2ํฌ๋ ˆ๋”ง์ด๋ผ ํƒ€์ž„์•„์›ƒ ์‹œ ์ด ํ‚ค๊ฐ€ ํŠนํžˆ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. / Optional retry-safe key (8-64 chars). Retrying with the same key is never charged twice and replays the stored answer for 24h."
    },
    "client_tag": {
      "type": "string",
      "description": "์„ ํƒ. client_tag: ํ˜ธ์ถœ์ž ์‹๋ณ„์šฉ, **์‘๋‹ต์— ์˜ํ–ฅ ์—†์Œ**(8~64์ž, ์˜์ˆซ์žยท_-.). ์„œ๋ฒ„ ๋กœ๊ทธ์—๋งŒ ๋‚จ์•„ ํ˜ธ์ถœ์„ ๊ณจ๋ผ ์„ธ๋Š” ๋ฐ ์”๋‹ˆ๋‹ค. ํ˜•์‹์ด ์–ด๊ธ‹๋‚˜๋ฉด ๋ฌด์‹œํ•ฉ๋‹ˆ๋‹ค โ€” ๊ฑฐ์ ˆํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์งˆ์˜ ๋ณธ๋ฌธ์— ์„ž์ง€ ๋งˆ์„ธ์š”: ๋ณธ๋ฌธ์— ๋„ฃ์œผ๋ฉด ์งˆ๋ฌธ์˜ ์ผ๋ถ€๊ฐ€ ๋˜์–ด ๋ถ„๋ฅ˜์™€ ๊ฒ€์ฆ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. / Optional caller label (8-64 chars). Logged only; never affects the response. Invalid values are ignored, not rejected. Do not put it in the query text โ€” there it becomes part of the question."
    }
  },
  "required": [
    "query"
  ]
}
๐ŸŸขsearch(q, limit, client_tag)

[KEY REQUIRED ยท no credits, 60/day] law.go.kr์—์„œ **๋ฒ•๋ น๋ช…**์œผ๋กœ ํ•œ๊ตญ ๋ฒ•๋ น์„ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค(์กฐ๋ฌธ ๋ณธ๋ฌธยทํŒ๋ก€๋Š” ๊ฒ€์ƒ‰ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค). ํŒ๋ก€๋Š” `lookup_precedent`, ์กฐ๋ฌธ์€ `lookup_statute`, ์•„๋ฌด ํ…์ŠคํŠธ์˜ ์ธ์šฉ ๊ฒ€์ฆ์€ `verify_citations` ๋ฅผ ์“ฐ์‹ญ์‹œ์˜ค. ์ž…๋ ฅ ์˜ˆ: '์ฃผํƒ์ž„๋Œ€์ฐจ๋ณดํ˜ธ๋ฒ•', '๊ทผ๋กœ๊ธฐ์ค€๋ฒ•'. / Search Korean statutes by **law name** on law.go.kr (it does not search article text or case law). Use `lookup_precedent` for cases, `lookup_statute` for articles, `verify_citations` to check citations in arbitrary text.

Input Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Search query (min 2 chars). Example: '๊ทผ๋กœ๊ธฐ์ค€๋ฒ•'."
    },
    "limit": {
      "type": "integer",
      "description": "Max results (1-100, default 10)."
    },
    "client_tag": {
      "type": "string",
      "description": "์„ ํƒ. client_tag: ํ˜ธ์ถœ์ž ์‹๋ณ„์šฉ, **์‘๋‹ต์— ์˜ํ–ฅ ์—†์Œ**(8~64์ž, ์˜์ˆซ์žยท_-.). ์„œ๋ฒ„ ๋กœ๊ทธ์—๋งŒ ๋‚จ์•„ ํ˜ธ์ถœ์„ ๊ณจ๋ผ ์„ธ๋Š” ๋ฐ ์”๋‹ˆ๋‹ค. ํ˜•์‹์ด ์–ด๊ธ‹๋‚˜๋ฉด ๋ฌด์‹œํ•ฉ๋‹ˆ๋‹ค โ€” ๊ฑฐ์ ˆํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์งˆ์˜ ๋ณธ๋ฌธ์— ์„ž์ง€ ๋งˆ์„ธ์š”: ๋ณธ๋ฌธ์— ๋„ฃ์œผ๋ฉด ์งˆ๋ฌธ์˜ ์ผ๋ถ€๊ฐ€ ๋˜์–ด ๋ถ„๋ฅ˜์™€ ๊ฒ€์ฆ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. / Optional caller label (8-64 chars). Logged only; never affects the response. Invalid values are ignored, not rejected. Do not put it in the query text โ€” there it becomes part of the question."
    }
  },
  "required": [
    "q"
  ]
}
๐ŸŸขget_leaders

[KEY REQUIRED ยท no credits, 60/day] 60๋ช… ์ด์ƒ์˜ ์ „๋ฌธ ๋ฆฌ๋” ๋ชฉ๋ก์„ ์ด๋ฆ„ยท์ „๋ฌธ ๋ถ„์•ผ์™€ ํ•จ๊ป˜ ๋Œ๋ ค์ค๋‹ˆ๋‹ค. / List all 60+ specialist legal leaders with their names and specialties.

Input Schema

{
  "type": "object",
  "properties": {}
}
๐ŸŸขchat_leader(leader_id, query, confirm, history, client_tag)

[KEY REQUIRED ยท 1 credit] ํŠน์ • ๋ฆฌ๋”์™€ 1:1๋กœ ๋Œ€ํ™”ํ•ฉ๋‹ˆ๋‹ค. get_leaders์—์„œ ์–ป์€ leader_id(์˜ˆ: 'L01', 'L32', 'CCO')๋ฅผ ๋„˜๊ธฐ์„ธ์š”. 1ํšŒ๋‹น 1ํฌ๋ ˆ๋”ง์ด ์ฐจ๊ฐ๋ฉ๋‹ˆ๋‹ค(ask ์™€ ๊ฐ™์€ ์„ ์˜ˆ์•ฝ โ€” ๋‹ต๋ณ€์ด ์‹คํŒจํ•˜๋ฉด ํ™˜๋ถˆ). / Chat 1:1 with a specific legal leader. Provide the leader_id (e.g. 'L01', 'L32', 'CCO') from get_leaders. Each call costs 1 credit, reserved up front like `ask` and refunded if no answer is delivered. Pass `history` when continuing a conversation โ€” otherwise the leader asks the same follow-up questions again.

Input Schema

{
  "type": "object",
  "properties": {
    "leader_id": {
      "type": "string",
      "description": "Leader identifier (e.g. 'L01'). See get_leaders."
    },
    "query": {
      "type": "string",
      "description": "Question to ask the leader (max 2000 chars)."
    },
    "confirm": {
      "type": "boolean",
      "description": "Deprecated (2026-09-27): leader chat now costs 1 credit per call with no separate free allowance, so no confirmation step is needed. Accepted and ignored for backward compatibility."
    },
    "history": {
      "type": "array",
      "description": "์ด์ „ ๋Œ€ํ™”. ์ด๊ฒƒ์„ ์•ˆ ๋ณด๋‚ด๋ฉด ์„œ๋ฒ„๋Š” ๋งค ํ˜ธ์ถœ์„ **์ฒซ ๋Œ€ํ™”**๋กœ ๋ณด๊ณ  ๊ฐ™์€ ๊ฒƒ์„ ๋˜ ๋˜๋ฌป์Šต๋‹ˆ๋‹ค โ€” ๋ฆฌ๋”๊ฐ€ ๋ฌผ์–ด๋ณธ ๋’ค ๋‹ต์„ ์ค„ ๋•Œ๋Š” ๊ทธ ๋‘ ํ„ด์„ ๋ฐ˜๋“œ์‹œ ํ•จ๊ป˜ ๋„˜๊ธฐ์„ธ์š”. ์ตœ๊ทผ 20ํ„ด๊นŒ์ง€ ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค. / Prior turns. Without this the server treats every call as a fresh conversation and asks the same questions again โ€” when you answer a leader's follow-up, send those turns here. Up to 20 recent turns are used.",
      "items": {
        "type": "object",
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "user",
              "assistant"
            ]
          },
          "content": {
            "type": "string"
          }
        },
        "required": [
          "role",
          "content"
        ]
      }
    },
    "client_tag": {
      "type": "string",
      "description": "์„ ํƒ. client_tag: ํ˜ธ์ถœ์ž ์‹๋ณ„์šฉ, **์‘๋‹ต์— ์˜ํ–ฅ ์—†์Œ**(8~64์ž, ์˜์ˆซ์žยท_-.). ์„œ๋ฒ„ ๋กœ๊ทธ์—๋งŒ ๋‚จ์•„ ํ˜ธ์ถœ์„ ๊ณจ๋ผ ์„ธ๋Š” ๋ฐ ์”๋‹ˆ๋‹ค. ํ˜•์‹์ด ์–ด๊ธ‹๋‚˜๋ฉด ๋ฌด์‹œํ•ฉ๋‹ˆ๋‹ค โ€” ๊ฑฐ์ ˆํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์งˆ์˜ ๋ณธ๋ฌธ์— ์„ž์ง€ ๋งˆ์„ธ์š”: ๋ณธ๋ฌธ์— ๋„ฃ์œผ๋ฉด ์งˆ๋ฌธ์˜ ์ผ๋ถ€๊ฐ€ ๋˜์–ด ๋ถ„๋ฅ˜์™€ ๊ฒ€์ฆ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. / Optional caller label (8-64 chars). Logged only; never affects the response. Invalid values are ignored, not rejected. Do not put it in the query text โ€” there it becomes part of the question."
    }
  },
  "required": [
    "leader_id",
    "query"
  ]
}
โšชsuggest_questions(query)

[KEY REQUIRED ยท no credits, 20/day] ์ฃผ์–ด์ง„ ์งˆ์˜์— ์ด์–ด์งˆ ๋งŒํ•œ ๋ฒ•๋ฅ  ํ›„์† ์งˆ๋ฌธ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. / Generate relevant follow-up legal questions for a given query.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Current user question (max 500 chars)."
    }
  },
  "required": [
    "query"
  ]
}
โšชlookup_precedent(case_no, client_tag)

[NO KEY ยท preview depth, 1/day] ์‚ฌ๊ฑด๋ฒˆํ˜ธ๋กœ ํ•œ๊ตญ ํŒ๋ก€๋ฅผ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค. ๋จผ์ € ๊ฒ€์ฆ ์ž์‚ฐ(17,626๊ฑด, ์ „๋ถ€ law.go.kr ๋ณธ๋ฌธ ๋Œ€์กฐ ์™„๋ฃŒ)์„ ๋ณด๊ณ , ์—†์œผ๋ฉด law.go.kr **์ •๋ณธ ์ƒ‰์ธ**(๋Œ€๋ฒ•์› ํŒ๋ก€ยทํ—Œ์žฌ๊ฒฐ์ •๋ก€ ์ „์ˆ˜)์—์„œ ์‹ค์žฌ๋ฅผ ํ™•์ธํ•œ ๋’ค ๋ณธ๋ฌธ์„ ์ง์ ‘ ๋ฐ›์•„์˜ต๋‹ˆ๋‹ค. ์‘๋‹ต์˜ source ํ•„๋“œ๊ฐ€ ๊ทผ๊ฑฐ์˜ ๊ฐ•๋„๋ฅผ ๊ฐ€๋ฆ…๋‹ˆ๋‹ค โ€” corpus ๋Š” ๋ณธ๋ฌธ๊นŒ์ง€ ๋Œ€์กฐ๋œ ๊ฒƒ์ด๊ณ , authoritative_index ๋Š” ์ •๋ณธ์—์„œ ์‹ค์žฌ๋ฅผ ํ™•์ธํ•˜๊ณ  ๋ณธ๋ฌธ์„ ๊ทธ ์ž๋ฆฌ์—์„œ ๋ฐ›์•„์˜จ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฒ•์›ยท์„ ๊ณ ์ผยท์‚ฌ๊ฑด๋ช…ยทํŒ์‹œ์‚ฌํ•ญยทํŒ๊ฒฐ์š”์ง€ยท์ฐธ์กฐ์กฐ๋ฌธ๊ณผ law.go.kr ์›๋ฌธ ์ง๊ฒฐ ๋งํฌ๋ฅผ ๋Œ๋ ค์ค๋‹ˆ๋‹ค. LLM์„ ๋ถ€๋ฅด์ง€ ์•Š๋Š” ๊ฒฐ์ •๋ก ์  ์กฐํšŒ๋ผ ํ• ๋ฃจ์‹œ๋„ค์ด์…˜์ด ์—†์Šต๋‹ˆ๋‹ค. ์ž…๋ ฅ ์˜ˆ: '2020๋„3050', '๋Œ€๋ฒ•์› 2024. 4. 16. ์„ ๊ณ  2020๋„3050 ํŒ๊ฒฐ', '2016ํ—Œ๋งˆ90'. / Look up a Korean court case by docket number in Lawmadi's verified-asset corpus (17,626 precedents, each confirmed against law.go.kr). Returns court, decision date, case name, holding, summary, referenced articles and a direct law.go.kr full-text link. Deterministic โ€” no LLM, no hallucination. Callable **without an API key** at preview depth (metadata + law.go.kr link + first 200 chars of the holding); a key unlocks the full holding, summary and referenced articles. / ํ‚ค ์—†์ด๋„ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ๊นŠ์ด๋กœ ์กฐํšŒ๋ฉ๋‹ˆ๋‹ค โ€” ํŒ์‹œ์‚ฌํ•ญ ์ „๋ฌธยทํŒ๊ฒฐ์š”์ง€ยท์ฐธ์กฐ์กฐ๋ฌธ์€ ํ‚ค ๋ฐœ๊ธ‰ ํ›„ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

Input Schema

{
  "type": "object",
  "properties": {
    "case_no": {
      "type": "string",
      "description": "Docket number or full citation. Example: '2020๋„3050'."
    },
    "client_tag": {
      "type": "string",
      "description": "์„ ํƒ. client_tag: ํ˜ธ์ถœ์ž ์‹๋ณ„์šฉ, **์‘๋‹ต์— ์˜ํ–ฅ ์—†์Œ**(8~64์ž, ์˜์ˆซ์žยท_-.). ์„œ๋ฒ„ ๋กœ๊ทธ์—๋งŒ ๋‚จ์•„ ํ˜ธ์ถœ์„ ๊ณจ๋ผ ์„ธ๋Š” ๋ฐ ์”๋‹ˆ๋‹ค. ํ˜•์‹์ด ์–ด๊ธ‹๋‚˜๋ฉด ๋ฌด์‹œํ•ฉ๋‹ˆ๋‹ค โ€” ๊ฑฐ์ ˆํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์งˆ์˜ ๋ณธ๋ฌธ์— ์„ž์ง€ ๋งˆ์„ธ์š”: ๋ณธ๋ฌธ์— ๋„ฃ์œผ๋ฉด ์งˆ๋ฌธ์˜ ์ผ๋ถ€๊ฐ€ ๋˜์–ด ๋ถ„๋ฅ˜์™€ ๊ฒ€์ฆ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. / Optional caller label (8-64 chars). Logged only; never affects the response. Invalid values are ignored, not rejected. Do not put it in the query text โ€” there it becomes part of the question."
    }
  },
  "required": [
    "case_no"
  ]
}
โšชlookup_statute(reference, client_tag)

[NO KEY ยท preview depth, 1/day] ํ•œ๊ตญ ๋ฒ•๋ น ์กฐ๋ฌธ์„ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค. ๋จผ์ € ๊ฒ€์ฆ ์ž์‚ฐ(31,548๊ฐœ ์กฐ๋ฌธ, ๋ณธ๋ฌธ ํฌํ•จ)์„ ๋ณด๊ณ , ์—†์œผ๋ฉด law.go.kr **์ •๋ณธ ์ƒ‰์ธ**(ํ˜„ํ–‰ ๋ฒ•๋ น ์ „์ˆ˜)์œผ๋กœ ๊ทธ ์กฐ๋ฌธ์ด ์‹ค์žฌํ•˜๋Š”์ง€ ํŒ์ •ํ•ฉ๋‹ˆ๋‹ค. ์ •๋ณธ ์ƒ‰์ธ ๊ฒฝ๋กœ๋Š” ๋ณธ๋ฌธ์„ ๊ฐ–๊ณ  ์žˆ์ง€ ์•Š์œผ๋ฏ€๋กœ ์‹ค์žฌ ์—ฌ๋ถ€์™€ law.go.kr ๋งํฌ๋งŒ ๋Œ๋ ค์ค๋‹ˆ๋‹ค โ€” ๋ณธ๋ฌธ์„ ์ง€์–ด๋‚ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ ๋ฒ•๋ น์„ ๊ฒฐ๋ฒˆ ์—†์ด ์•„๋Š” ๊ฒฝ์šฐ์—๋Š” **์—†๋‹ค๋Š” ๊ฒƒ๋„** ๋งํ•ฉ๋‹ˆ๋‹ค(absent=true). LLM ๋ฏธํ˜ธ์ถœยท๊ฒฐ์ •๋ก . ์ž…๋ ฅ ์˜ˆ: '๋ฏผ๋ฒ• ์ œ750์กฐ', 'ํ˜•๋ฒ• ์ œ307์กฐ ์ œ1ํ•ญ'. / Look up a Korean statute article in Lawmadi's verified-asset corpus (31,548 articles). Returns the article title, body text and law.go.kr link. Deterministic โ€” no LLM. Callable **without an API key** at preview depth (title + law.go.kr link + first 200 chars of the body); a key unlocks the full article body. / ํ‚ค ์—†์ด๋„ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ๊นŠ์ด๋กœ ์กฐํšŒ๋ฉ๋‹ˆ๋‹ค โ€” ์กฐ๋ฌธ ๋ณธ๋ฌธ ์ „๋ฌธ์€ ํ‚ค ๋ฐœ๊ธ‰ ํ›„ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

Input Schema

{
  "type": "object",
  "properties": {
    "reference": {
      "type": "string",
      "description": "Statute reference. Example: '๋ฏผ๋ฒ• ์ œ750์กฐ'."
    },
    "client_tag": {
      "type": "string",
      "description": "์„ ํƒ. client_tag: ํ˜ธ์ถœ์ž ์‹๋ณ„์šฉ, **์‘๋‹ต์— ์˜ํ–ฅ ์—†์Œ**(8~64์ž, ์˜์ˆซ์žยท_-.). ์„œ๋ฒ„ ๋กœ๊ทธ์—๋งŒ ๋‚จ์•„ ํ˜ธ์ถœ์„ ๊ณจ๋ผ ์„ธ๋Š” ๋ฐ ์”๋‹ˆ๋‹ค. ํ˜•์‹์ด ์–ด๊ธ‹๋‚˜๋ฉด ๋ฌด์‹œํ•ฉ๋‹ˆ๋‹ค โ€” ๊ฑฐ์ ˆํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์งˆ์˜ ๋ณธ๋ฌธ์— ์„ž์ง€ ๋งˆ์„ธ์š”: ๋ณธ๋ฌธ์— ๋„ฃ์œผ๋ฉด ์งˆ๋ฌธ์˜ ์ผ๋ถ€๊ฐ€ ๋˜์–ด ๋ถ„๋ฅ˜์™€ ๊ฒ€์ฆ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. / Optional caller label (8-64 chars). Logged only; never affects the response. Invalid values are ignored, not rejected. Do not put it in the query text โ€” there it becomes part of the question."
    }
  },
  "required": [
    "reference"
  ]
}
๐ŸŸกverify_citations(text, client_tag)

[KEY REQUIRED ยท 1 credit] ์•„๋ฌด ํ…์ŠคํŠธ์— ๋‹ด๊ธด ํ•œ๊ตญ ๋ฒ•๋ฅ  ์ธ์šฉ์„ ๊ฒ€์ฆํ•ฉ๋‹ˆ๋‹ค โ€” ๋‹ค๋ฅธ LLM์ด ์“ด ๋‹ต๋ณ€๋„ ๋ฉ๋‹ˆ๋‹ค. ์กฐ๋ฌธ๊ณผ ์‚ฌ๊ฑด๋ฒˆํ˜ธ๋ฅผ ์ „๋ถ€ ์ถ”์ถœํ•ด ๊ฒ€์ฆ ์ž์‚ฐ๊ณผ ๋Œ€์กฐํ•˜๊ณ , ์ธ์šฉ๋ณ„ ์ƒํƒœ(verified_in_corpus ๋ณธ๋ฌธ๊นŒ์ง€ ๋Œ€์กฐ / verified_in_index ์ •๋ณธ ์ƒ‰์ธ์—์„œ ์‹ค์žฌ ํ™•์ธ / absent_in_index ๊ทธ ๋ฒ•๋ น์„ ๊ฒฐ๋ฒˆ ์—†์ด ์•„๋Š”๋ฐ ์ด ์กฐ๋ฌธ์ด ์—†์Œ / not_in_corpus ๋ฎ์ง€ ๋ชปํ•จ)๋ฅผ ์ถœ์ฒ˜ ๋งํฌ์™€ ํ•จ๊ป˜ ๋Œ๋ ค์ค๋‹ˆ๋‹ค. 1ํšŒ์— ํฌ๋ ˆ๋”ง 1๊ฐœ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. LLM ๋ฏธํ˜ธ์ถœยท๊ฒฐ์ •๋ก . ์ฃผ์˜: not_in_corpus๋Š” '์ด ์ฝ”ํผ์Šค์— ์—†๋‹ค'๋Š” ๋œป์ด์ง€ '์ง€์–ด๋‚ธ ์ธ์šฉ'์ด๋ผ๋Š” ์ฆ๋ช…์ด ์•„๋‹™๋‹ˆ๋‹ค โ€” law.go.kr์—์„œ ์ง์ ‘ ํ™•์ธํ•˜๋ผ๋Š” ํ‘œ์‹œ์ž…๋‹ˆ๋‹ค. ์ธ์šฉ ์‹ค์žฌ(L1) ์™ธ์— ๋„ค ์ถ•์„ ๋” ๋Œ๋ฆฝ๋‹ˆ๋‹ค: doctrine(๋ฒ•๋ฆฌ ๋ชจ์ˆœ โ€” ์กฐ๋ฌธ์ด ์‹ค์žฌํ•ด๋„ ์ ์šฉ์ด ์–ด๊ธ‹๋‚˜๋Š” ๊ฒฝ์šฐ), currency(ํ์ง€ยท๊ฐœ๋ช…๋œ ๋ฒ•๋ น ์ธ์šฉ), precedent_currency(์ดํ›„ ์ „์›ํ•ฉ์˜์ฒด๊ฐ€ ๊ฒฌํ•ด๋ฅผ ๋ณ€๊ฒฝํ•˜๋ฉฐ ์ฐธ์กฐํ•œ ํŒ๋ก€), support(์ธ์šฉ ์กฐ๋ฌธ ๋ณธ๋ฌธ์— ๊ทธ ์ˆ˜์น˜๊ฐ€ ์‹ค์ œ๋กœ ์žˆ๋Š”๊ฐ€). ๊ฐ ์ถ•์€ ๊ฒ€์‚ฌ ๋ฒ”์œ„(scope)์™€ ๋ถ„๋ชจ(examinedยทknown_countยทindex_size)๋ฅผ ํ•จ๊ป˜ ๋ƒ…๋‹ˆ๋‹ค โ€” findings 0 ์€ '์ •ํ™•ํ•˜๋‹ค'๊ฐ€ ์•„๋‹ˆ๋ผ '๊ทธ ์ถ•์—์„œ ์•ˆ ์žกํ˜”๋‹ค'๋Š” ๋œป์ž…๋‹ˆ๋‹ค. ์ „๋ถ€ ๊ฒฐ์ •๋ก ์ด๋ฉฐ LLM์„ ๋ถ€๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. / Fact-check the Korean legal citations inside any text โ€” including text another LLM produced. Returns per-citation status (verified_in_corpus = body matched, verified_in_index = existence confirmed in the authoritative index, absent_in_index = the law is indexed gaplessly and this article is not in it, not_in_corpus = not covered) with source links. Costs 1 credit per call. Deterministic, no LLM. IMPORTANT: Beyond citation existence (L1) it runs four more axes: doctrine (misapplied rule even when the provision exists), currency (repealed or renamed statutes), precedent_currency (cases referenced by a later en banc decision that states a change of position), and support (whether the figure claimed actually appears in the cited provision's text). Each axis reports its scope and denominator โ€” findings==0 means 'nothing caught on that axis', not 'correct'. All deterministic, no LLM call. 'not_in_corpus' means the citation is NOT in this corpus โ€” it is a flag to check manually at law.go.kr, not proof that the citation is fabricated.

Input Schema

{
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "description": "Text containing Korean legal citations (max 20000 chars)."
    },
    "client_tag": {
      "type": "string",
      "description": "์„ ํƒ. client_tag: ํ˜ธ์ถœ์ž ์‹๋ณ„์šฉ, **์‘๋‹ต์— ์˜ํ–ฅ ์—†์Œ**(8~64์ž, ์˜์ˆซ์žยท_-.). ์„œ๋ฒ„ ๋กœ๊ทธ์—๋งŒ ๋‚จ์•„ ํ˜ธ์ถœ์„ ๊ณจ๋ผ ์„ธ๋Š” ๋ฐ ์”๋‹ˆ๋‹ค. ํ˜•์‹์ด ์–ด๊ธ‹๋‚˜๋ฉด ๋ฌด์‹œํ•ฉ๋‹ˆ๋‹ค โ€” ๊ฑฐ์ ˆํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์งˆ์˜ ๋ณธ๋ฌธ์— ์„ž์ง€ ๋งˆ์„ธ์š”: ๋ณธ๋ฌธ์— ๋„ฃ์œผ๋ฉด ์งˆ๋ฌธ์˜ ์ผ๋ถ€๊ฐ€ ๋˜์–ด ๋ถ„๋ฅ˜์™€ ๊ฒ€์ฆ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. / Optional caller label (8-64 chars). Logged only; never affects the response. Invalid values are ignored, not rejected. Do not put it in the query text โ€” there it becomes part of the question."
    }
  },
  "required": [
    "text"
  ]
}
๐ŸŸขbar_exam_search(q, round, subject, limit, client_tag)

[KEY REQUIRED ยท no credits, 60/day] ๋ณ€ํ˜ธ์‚ฌ์‹œํ—˜(๋ณ€์‹œ) ์ฝ”ํผ์Šค๋ฅผ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค โ€” 15ํšŒ ์ „ ํšŒ์ฐจ 2,340๋ฌธํ•ญ(์„ ํƒํ˜• 2,250 + ์‚ฌ๋ก€ํ˜• 45 + ๊ธฐ๋กํ˜• 45), ์ธ์šฉ์ด law.go.kr ๊ฒ€์ฆ์„ ํ†ต๊ณผํ•œ ๊ธˆ๋‹ต์•ˆ. ์‚ฌ๊ฑด๋ฒˆํ˜ธ('2014๋„6992')ยท์กฐ๋ฌธ('ํ˜•๋ฒ• ์ œ310์กฐ')ยทํ‚ค์›Œ๋“œ๋กœ ์กฐํšŒํ•˜๋ฉด ํšŒ์ฐจยท๊ณผ๋ชฉยท๋ฌธํ•ญ๋ฒˆํ˜ธยท๊ณต์‹ ์ •๋‹ตยท์ง€๋ฌธยท์ธ์šฉ ์กฐ๋ฌธ/ํŒ๋ก€์™€ ๋งํฌ๋ฅผ ๋Œ๋ ค์ค๋‹ˆ๋‹ค. / Search the Korean bar exam (๋ณ€ํ˜ธ์‚ฌ์‹œํ—˜) corpus โ€” all 15 rounds, 2,340 questions (2,250 MCQ + 45 case-type + 45 record-type) with gold-standard answers whose citations passed law.go.kr verification.

Input Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Docket, statute article or keyword."
    },
    "round": {
      "type": "integer",
      "description": "Filter by exam round 1-15 (optional)."
    },
    "subject": {
      "type": "string",
      "description": "Filter by subject: ๊ณต๋ฒ• / ๋ฏผ์‚ฌ๋ฒ• / ํ˜•์‚ฌ๋ฒ• (optional)."
    },
    "limit": {
      "type": "integer",
      "description": "Max results (1-20, default 5)."
    },
    "client_tag": {
      "type": "string",
      "description": "์„ ํƒ. client_tag: ํ˜ธ์ถœ์ž ์‹๋ณ„์šฉ, **์‘๋‹ต์— ์˜ํ–ฅ ์—†์Œ**(8~64์ž, ์˜์ˆซ์žยท_-.). ์„œ๋ฒ„ ๋กœ๊ทธ์—๋งŒ ๋‚จ์•„ ํ˜ธ์ถœ์„ ๊ณจ๋ผ ์„ธ๋Š” ๋ฐ ์”๋‹ˆ๋‹ค. ํ˜•์‹์ด ์–ด๊ธ‹๋‚˜๋ฉด ๋ฌด์‹œํ•ฉ๋‹ˆ๋‹ค โ€” ๊ฑฐ์ ˆํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์งˆ์˜ ๋ณธ๋ฌธ์— ์„ž์ง€ ๋งˆ์„ธ์š”: ๋ณธ๋ฌธ์— ๋„ฃ์œผ๋ฉด ์งˆ๋ฌธ์˜ ์ผ๋ถ€๊ฐ€ ๋˜์–ด ๋ถ„๋ฅ˜์™€ ๊ฒ€์ฆ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. / Optional caller label (8-64 chars). Logged only; never affects the response. Invalid values are ignored, not rejected. Do not put it in the query text โ€” there it becomes part of the question."
    }
  },
  "required": [
    "q"
  ]
}
๐ŸŸขget_exam_answer(round, subject, format, no)

[KEY REQUIRED ยท 3/day free, then 1 credit each] ๋ณ€ํ˜ธ์‚ฌ์‹œํ—˜ ๋ฌธํ•ญ ํ•˜๋‚˜๋ฅผ ๊ธˆ๋‹ต์•ˆ ์ „๋ฌธ๊ณผ ํ•จ๊ป˜ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ์„ ํƒํ˜•: round+subject+no โ†’ ๊ณต์‹ ์ง€๋ฌธยท์„ ํƒ์ง€ 5๊ฐœยท๋ฒ•๋ฌด๋ถ€ ์ •๋‹ตยทํ•ด์„คยท์„ ํƒ์ง€๋ณ„ ๋…ธํŠธยท์ธ์šฉ ์กฐ๋ฌธ/ํŒ๋ก€. ์‚ฌ๋ก€ํ˜•ยท๊ธฐ๋กํ˜•: round+subject+format โ†’ ์„œ๋ฉด ์ข…๋ฅ˜ยท๋ชฉ์ฐจยท๋‹ต์•ˆ ๋ณธ๋ฌธ. ๋ชจ๋“  ์ธ์šฉ์€ ๊ฒŒ์‹œ ์ „ law.go.kr ๊ฒ€์ฆ์„ ํ†ต๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค. ํ˜ธ์ถœ๋‹น 1๋ฌธํ•ญ โ€” ์ด ์ฝ”ํผ์Šค๋Š” ๋Œ€๋Ÿ‰ ์ถ”์ถœ ๋Œ€์ƒ์ด ์•„๋‹™๋‹ˆ๋‹ค. / Fetch ONE bar-exam question with its full gold answer. MCQ (์„ ํƒํ˜•): pass round + subject + no. Essay (์‚ฌ๋ก€ํ˜•) and record-type (๊ธฐ๋กํ˜•): pass round + subject + format. Every citation passed law.go.kr verification before publishing. One item per call โ€” this corpus is proprietary and not available for bulk export.

Input Schema

{
  "type": "object",
  "properties": {
    "round": {
      "type": "integer",
      "description": "Exam round 1-15 (์ œNํšŒ)."
    },
    "subject": {
      "type": "string",
      "description": "๊ณต๋ฒ• ยท ๋ฏผ์‚ฌ๋ฒ• ยท ํ˜•์‚ฌ๋ฒ• (์„ ํƒ๊ณผ๋ชฉ๋ช…๋„ ๊ฐ€๋Šฅ)."
    },
    "format": {
      "type": "string",
      "enum": [
        "์„ ํƒํ˜•",
        "์‚ฌ๋ก€ํ˜•",
        "๊ธฐ๋กํ˜•"
      ],
      "description": "Default ์„ ํƒํ˜• when `no` is given."
    },
    "no": {
      "type": "integer",
      "description": "Question number (์„ ํƒํ˜• only)."
    }
  },
  "required": [
    "round",
    "subject"
  ]
}
๐ŸŸกget_daily_content(stream, date)

[KEY REQUIRED ยท no credits, 60/day] ๋ฐœํ–‰๋œ ๋ฐ์ผ๋ฆฌ ์ฝ˜ํ…์ธ  ํ•œ ํŽธ์„ ์ „์ฒด ๋ ˆ์ฝ”๋“œ ํ˜•ํƒœ๋กœ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค: ์˜ค๋Š˜์˜ ๋ฒ•๋ฅ ์ƒ์‹(daily โ€” ๊ฒ€์ฆ ์กฐ๋ฌธ ๋ชฉ๋ก๊ณผ FAQ ํฌํ•จ), ์ „๋žต ์นผ๋Ÿผ(strategy)ยท๊ธฐ์ˆ  ์นผ๋Ÿผ(tech, ๋ผ์ด๋ธŒ ํ™•์ธ๋œ ์ฐธ๊ณ ์ž๋ฃŒ ํฌํ•จ), ๋ฆฌ๊ฑธํ…Œํฌ ๋‰ด์Šค(news, ์ถœ์ฒ˜ ๋„๋ฉ”์ธ ํฌํ•จ), ์ˆ˜ํ—˜ ํŒ๋ก€ ๊ฐ•์˜๋…ธํŠธ(bar), ์˜ค๋Š˜์˜ ํŒ๋ก€(precedent โ€” ๊ฒ€์ฆ ํŒ๋ก€ ๋ ˆ์ฝ”๋“œ ์ฒจ๋ถ€). ๋‚ ์งœ๋ฅผ ์ฃผ๊ฑฐ๋‚˜, ์ƒ๋žตํ•˜๋ฉด ํ•ด๋‹น ์ŠคํŠธ๋ฆผ์˜ ์ตœ์‹  ํŽธ. / Fetch one published daily post in full-record form. Pass a date, or omit it for the latest post in that stream.

Input Schema

{
  "type": "object",
  "properties": {
    "stream": {
      "type": "string",
      "enum": [
        "daily",
        "strategy",
        "tech",
        "news",
        "bar",
        "precedent"
      ],
      "description": "Content stream."
    },
    "date": {
      "type": "string",
      "description": "YYYY-MM-DD. Omit for the latest post."
    }
  },
  "required": [
    "stream"
  ]
}
๐ŸŸขlist_document_types

[KEY REQUIRED ยท no credits, 60/day] ๋ฒ•๋งˆ๋””๊ฐ€ ์ดˆ์•ˆ์„ ์“ธ ์ˆ˜ ์žˆ๋Š” ๋ฒ•๋ฅ  ๋ฌธ์„œ ์ข…๋ฅ˜๋ฅผ ํ•œ๊ตญ์–ดยท์˜์–ด ๋ผ๋ฒจ๊ณผ ํ•จ๊ป˜ ๋‚˜์—ดํ•ฉ๋‹ˆ๋‹ค(๊ณ ์†Œ์žฅยท์†Œ์žฅยท๋‚ด์šฉ์ฆ๋ช…ยท๋‹ต๋ณ€์„œยทํƒ„์›์„œยทํ•ฉ์˜์„œยท๋ฒ•๋ฅ ์˜๊ฒฌ์„œ ๋“ฑ). / List the legal document types Lawmadi can draft, with Korean and English labels.

Input Schema

{
  "type": "object",
  "properties": {}
}
๐ŸŸขgenerate_document(doc_type, context, lang, extra_instructions, client_tag)

[KEY REQUIRED ยท 2 credits] ์‚ฌ์šฉ์ž์˜ ์‚ฌ์‹ค๊ด€๊ณ„๋กœ ํ•œ๊ตญ ๋ฒ•๋ฅ  ๋ฌธ์„œ ์ดˆ์•ˆ์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค(๊ณ ์†Œ์žฅยท์†Œ์žฅยท๋‚ด์šฉ์ฆ๋ช…ยท๋‹ต๋ณ€์„œยทํ•ฉ์˜์„œยท๋ฒ•๋ฅ ์˜๊ฒฌ์„œ ๋“ฑ). ์ดˆ์•ˆ์˜ ๋ชจ๋“  ์กฐ๋ฌธยทํŒ๋ก€ ์ธ์šฉ์€ `ask`์™€ ๋™์ผํ•œ fail-closed law.go.kr ๊ฒ€์ฆ์„ ๊ฑฐ์นฉ๋‹ˆ๋‹ค. ์œ ํšจํ•œ doc_type ํ‚ค๋Š” list_document_types๋กœ ๋จผ์ € ํ™•์ธํ•˜์„ธ์š”. / Draft a Korean legal document from the user's facts. Every statute/precedent citation in the draft goes through the same fail-closed law.go.kr verification as `ask`. Use list_document_types first for valid doc_type keys.

Input Schema

{
  "type": "object",
  "properties": {
    "doc_type": {
      "type": "string",
      "description": "Document type key from list_document_types (e.g. 'complaint')."
    },
    "context": {
      "type": "string",
      "description": "The user's facts/situation the document must be built from."
    },
    "lang": {
      "type": "string",
      "enum": [
        "ko",
        "en",
        ""
      ],
      "description": "Default ko. 'en' returns the Korean original (the version to file with Korean courts/police) followed by an English translation for reference."
    },
    "extra_instructions": {
      "type": "string",
      "description": "Optional extra drafting instructions."
    },
    "client_tag": {
      "type": "string",
      "description": "์„ ํƒ. client_tag: ํ˜ธ์ถœ์ž ์‹๋ณ„์šฉ, **์‘๋‹ต์— ์˜ํ–ฅ ์—†์Œ**(8~64์ž, ์˜์ˆซ์žยท_-.). ์„œ๋ฒ„ ๋กœ๊ทธ์—๋งŒ ๋‚จ์•„ ํ˜ธ์ถœ์„ ๊ณจ๋ผ ์„ธ๋Š” ๋ฐ ์”๋‹ˆ๋‹ค. ํ˜•์‹์ด ์–ด๊ธ‹๋‚˜๋ฉด ๋ฌด์‹œํ•ฉ๋‹ˆ๋‹ค โ€” ๊ฑฐ์ ˆํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์งˆ์˜ ๋ณธ๋ฌธ์— ์„ž์ง€ ๋งˆ์„ธ์š”: ๋ณธ๋ฌธ์— ๋„ฃ์œผ๋ฉด ์งˆ๋ฌธ์˜ ์ผ๋ถ€๊ฐ€ ๋˜์–ด ๋ถ„๋ฅ˜์™€ ๊ฒ€์ฆ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. / Optional caller label (8-64 chars). Logged only; never affects the response. Invalid values are ignored, not rejected. Do not put it in the query text โ€” there it becomes part of the question."
    }
  },
  "required": [
    "doc_type",
    "context"
  ]
}
๐ŸŸขsearch_legal_forms(query, knd, limit)

[KEY REQUIRED ยท no credits, 60/day] law.go.kr์ด ์ œ๊ณตํ•˜๋Š” ๋ฒ•์ • ์„œ์‹ยท๋ณ„ํ‘œ๋ฅผ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค โ€” ์˜ˆ: ํŠน์ • ๋ฒ•๋ฅ ์— ๋”ฐ๋ฅธ ์‹ ์ฒญ์„œ ์„œ์‹. / Search official Korean statutory forms and appendix tables (๋ณ„ํ‘œยท์„œ์‹) served by law.go.kr.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Form name or statute name. ๋ฒ•๋ น๋ช…์œผ๋กœ ์ฐพ์„ ๋•Œ๋Š” **์‹œํ–‰๊ทœ์น™ยท๊ทœ์น™**์ด ์ ์ค‘๋ฅ ์ด ๋†’์Šต๋‹ˆ๋‹ค(์„œ์‹์€ ๋Œ€๊ฐœ ๊ฑฐ๊ธฐ ์žˆ์Šต๋‹ˆ๋‹ค). ์„œ๋ฒ„๊ฐ€ ๋ณ„ํ‘œ์„œ์‹๋ช… โ†’ ํ•ด๋‹น๋ฒ•๋ น ์ˆœ์œผ๋กœ ๋‘ ๋ฒ”์œ„๋ฅผ ๋ชจ๋‘ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค. / Form or statute name; enforcement rules (์‹œํ–‰๊ทœ์น™) usually hold the forms."
    },
    "knd": {
      "type": "string",
      "enum": [
        "",
        "1",
        "2",
        "3",
        "4",
        "5"
      ],
      "description": "Kind of appendix, **not** a search scope: 1 ๋ณ„ํ‘œ ยท 2 ์„œ์‹ ยท 3 ๋ณ„์ง€ ยท 4 ๋ณ„๋„ ยท 5 ๋ถ€๋ก (blank = all). ๊ฒ€์ƒ‰๋ฒ”์œ„๋Š” ์„œ๋ฒ„๊ฐ€ ์ •ํ•ฉ๋‹ˆ๋‹ค."
    },
    "limit": {
      "type": "integer",
      "description": "Max results (1-100, default 20)."
    }
  },
  "required": [
    "query"
  ]
}
๐ŸŸขfind_village_lawyer(region, limit)

[KEY REQUIRED ยท no credits, 60/day] ๋ฒ•๋ฌด๋ถ€ '๋งˆ์„๋ณ€ํ˜ธ์‚ฌ'๋ฅผ ์ง€์—ญ์œผ๋กœ ์ฐพ์Šต๋‹ˆ๋‹ค โ€” ๋ฌด๋ฃŒ ๋ฒ•๋ฅ ์ƒ๋‹ด ์—ฐ๋ฝ์ฒ˜์ž…๋‹ˆ๋‹ค. ์‹œยท๋„, ์‹œยท๊ตฐยท๊ตฌ, ์ยท๋ฉด ์ด๋ฆ„์œผ๋กœ ๊ฒ€์ƒ‰ํ•˜์„ธ์š”(์˜ˆ: '๊ฐ•์› ๊ฐ•๋ฆ‰', '๊ณ ์„ฑ๊ตฐ', '์™„๋„'). **์ด ์‚ฌ์—…์€ ๋ณ€ํ˜ธ์‚ฌ๊ฐ€ ์—†๋Š” ์ยท๋ฉด์„ ๋Œ€์ƒ์œผ๋กœ ํ•˜๋ฏ€๋กœ ์„œ์šธยท๋ถ€์‚ฐ ๋“ฑ ํŠน๋ณ„์‹œยท๊ด‘์—ญ์‹œ์˜ ๊ตฌ(ๅ€)๋Š” ์ˆ˜๋ก๋˜์–ด ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค** โ€” ๊ฒฐ๊ณผ๊ฐ€ 0๊ฑด์ด๋ฉด ์‘๋‹ต์˜ coverage ํ•ญ๋ชฉ์—์„œ ์ˆ˜๋ก๋œ ์‹œยท๋„๋ฅผ ํ™•์ธํ•˜์„ธ์š”. ๊ณต๊ณต๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜, LLM ๋ฏธํ˜ธ์ถœ. / Find the Ministry of Justice ๋งˆ์„๋ณ€ํ˜ธ์‚ฌ (village lawyer) assigned to a Korean locality โ€” a free legal-consultation contact point. The programme covers rural ์ยท๋ฉด without a resident lawyer, so districts of Seoul and other metropolitan cities are not listed; an empty result returns the covered provinces. Public data, no LLM.

Input Schema

{
  "type": "object",
  "properties": {
    "region": {
      "type": "string",
      "description": "Region name. Example: '๊ฐ•๋ฆ‰์‹œ'."
    },
    "limit": {
      "type": "integer",
      "description": "Max results (1-50, default 10)."
    }
  },
  "required": [
    "region"
  ]
}
๐ŸŸขget_pricing(lang)

[NO KEY NEEDED] ์ด์šฉ ๋ฐฉ๋ฒ•๊ณผ ๋น„์šฉ์„ ๋Œ๋ ค์ค๋‹ˆ๋‹ค โ€” ๊ฐ€์ž… ์ ˆ์ฐจ, API ํ‚ค ๋ฐœ๊ธ‰์ฒ˜, ๋ฌด๋ฃŒ ์ œ๊ณต๋Ÿ‰, ํฌ๋ ˆ๋”ง ํŒฉ ๊ฐ€๊ฒฉ(KRW/USD), ํฌ๋ ˆ๋”ง 1๊ฐœ๋กœ ๋ฌด์—‡์„ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€, ๊ฒฐ์ œ ๋งํฌ. **์ธ์ฆ ์—†์ด ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค** โ€” ์ฒ˜์Œ ๋ฐฉ๋ฌธํ•œ AI ์—์ด์ „ํŠธ๋Š” ์ด ๋„๊ตฌ๋กœ ์ ‘๊ทผ ๋ฐฉ๋ฒ•์„ ํ™•์ธํ•˜์„ธ์š”. / How to get access and what it costs. Returns the sign-up flow, where to issue an API key, the free allowance, credit-pack prices (KRW/USD), what one credit buys, and direct checkout links. **Callable without authentication** โ€” an AI agent arriving for the first time should call this to learn how to obtain access.

Input Schema

{
  "type": "object",
  "properties": {
    "lang": {
      "type": "string",
      "enum": [
        "ko",
        "en",
        ""
      ],
      "description": "Default en."
    }
  }
}
๐ŸŸขget_account

[KEY REQUIRED] ์‚ฌ์šฉ ์ค‘์ธ API ํ‚ค์˜ ๊ณ„์ • ์ƒํƒœ โ€” ๋‚จ์€ ํฌ๋ ˆ๋”ง, ํ”Œ๋žœ, ์ถฉ์ „ ๋งํฌ. ๊ณผ๊ธˆ ๋„๊ตฌ๋ฅผ ๊ธธ๊ฒŒ ์“ฐ๊ธฐ ์ „์— ํ˜ธ์ถœํ•ด, ์ž‘์—… ๋„์ค‘ ์ž”์•ก์ด ๋–จ์–ด์ง€๋Š” ๋Œ€์‹  ๋ฏธ๋ฆฌ ์ถฉ์ „ํ•˜์„ธ์š”. / Your account status for the API key in use โ€” remaining credits, plan, and a top-up link. Call this before a long run of metered queries so you can purchase in advance instead of hitting an exhausted balance mid-task.

Input Schema

{
  "type": "object",
  "properties": {}
}
๐ŸŸกlatest_content(stream, limit)

[KEY REQUIRED ยท no credits, 60/day] ๋ฒ•๋งˆ๋””์˜ ์ตœ์‹  ๋ฐ์ผ๋ฆฌ ๋ฒ•๋ฅ  ์ฝ˜ํ…์ธ  โ€” ์˜ค๋Š˜์˜ ๋ฒ•๋ฅ ์ƒ์‹(daily), ์ „๋žต ์นผ๋Ÿผ(strategy), ๊ธฐ์ˆ  ์นผ๋Ÿผ(tech), ๋ฆฌ๊ฑธํ…Œํฌ ๋‰ด์Šค(news), ์ˆ˜ํ—˜ ํŒ๋ก€ ๊ฐ•์˜๋…ธํŠธ(bar), ์˜ค๋Š˜์˜ ํŒ๋ก€(precedent). ๋ชจ๋“  ํŽธ์€ ๋ฐœํ–‰ ๊ฒŒ์ดํŠธ๋ฅผ ํ†ต๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค(์กฐ๋ฌธยทํŒ๋ก€ ์ธ์šฉ law.go.kr ๊ฒ€์ฆ, ์ถœ์ฒ˜ ๋ผ์ด๋ธŒ ํ™•์ธ). / Get Lawmadi's latest daily legal content. Every post passed its publishing gate (statute/precedent citations verified against law.go.kr, sources live-checked).

Input Schema

{
  "type": "object",
  "properties": {
    "stream": {
      "type": "string",
      "enum": [
        "",
        "daily",
        "strategy",
        "tech",
        "news",
        "bar",
        "precedent"
      ],
      "description": "Single stream, or blank for the latest of each."
    },
    "limit": {
      "type": "integer",
      "description": "Posts per stream (1-20, default 5)."
    }
  }
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded19 tools
verifiedversion not recorded19 tools
verifiedversion not recorded19 tools
verifiedversion not recorded19 tools