Korean Law MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Korean Law MCP근로기준법 제23조 해고 제한 규정과 관련 판례를 분석해줘"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
⚖️ 대한민국 법령/판례 검색기 (Korean Law MCP)
"법률 정보를 누구나 쉽게."
이 프로그램은 복잡한 대한민국 법령과 판례를 채팅하듯이 쉽게 검색하고 찾아볼 수 있게 해주는 도구입니다. Claude와 같은 AI와 연결하여 사용할 수 있습니다.
🚀 시작하기 (Quick Start)
가장 쉬운 사용 방법을 안내해 드립니다.
방법 1: uv를 이용한 자동 설치 (Mac/Linux/Windows 추천)
uv가 설치되어 있다면 가장 간편한 방법입니다. Claude 설정 파일에 아래 내용을 추가하세요. (Python 등을 직접 설치할 필요가 없습니다)
설정 파일 경로:
MacOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"korean-law": {
"command": "uvx",
"args": [
"korean-law-mcp"
],
"env": {
"OPEN_LAW_ID": "여기에_아이디를_넣으세요"
}
}
}
}방법 2: 윈도우 실행 파일 (설치 불필요)
uv나 Python 설정이 어려운 윈도우(Windows) 사용자를 위한 방법입니다.
다운로드 페이지(Releases)로 이동합니다.
최신 버전의
korean-law-mcp.exe파일을 다운로드합니다.다운로드한 파일의 경로를 복사해 둡니다. (예:
C:\Users\홍길동\Downloads\korean-law-mcp.exe)Claude Desktop 설정 파일(
claude_desktop_config.json)을 열고 아래와 같이 적어주세요.
{
"mcpServers": {
"korean-law": {
"command": "C:\\Users\\홍길동\\Downloads\\korean-law-mcp.exe",
"env": {
"OPEN_LAW_ID": "여기에_아이디를_넣으세요"
}
}
}
}Related MCP server: LexLink
🔑 필수 준비물: API 아이디
이 프로그램을 사용하려면 국가법령정보센터 아이디가 꼭 필요합니다.
국가법령정보센터(law.go.kr)에 접속하여 회원가입을 합니다.
Open API 신청 페이지에서 '사용 신청'을 합니다. (무료입니다)
발급받은 아이디를 설정 파일의
"OPEN_LAW_ID"부분에 넣어주세요.
✨ 주요 기능
이 도구로 할 수 있는 것들입니다.
🔍 법령 검색: "고등교육법 제20조 찾아줘"라고 물어보면 법 조항을 바로 보여줍니다.
⚖️ 판례 찾기: "학교폭력 관련 대법원 판례 찾아줘"라고 하면 관련 판례를 요약해 줍니다.
📜 행정규칙/자치법규: 훈령, 예규, 지자체 조례까지 모두 검색 가능합니다.
📖 법령 용어: "근로자가 뭐야?"라고 물으면 법적 정의를 정확히 알려줍니다.
🤔 법령 해석례: "이 법을 이렇게 해석해도 되나?" 궁금할 때 법제처의 유권해석 사례를 찾아줍니다.
📎 서식/별표: 법령에 첨부된 서식이나 표를 목록으로 보여줍니다.
🔗 법률 그래프 탐색 (Deep Search):
explore_legal_chain도구를 사용하면 "고등교육법 제20조" 검색 시 시행령/시행규칙 등 위임된 하위 법령과 참조된 내/외부 조문까지 한 번에 찾아서 완벽한 보고서를 만들어줍니다.🤖 스마트 검색: 법령 이름을 정확히 몰라도, "김영란법"처럼 흔히 부르는 이름으로 검색해도 알아서 찾아줍니다.
🛠️ 사용 가능한 도구 (Reference)
이 MCP 서버가 제공하는 주요 도구들의 상세 설명입니다.
도구 이름 | 설명 |
| (필수) 법령, 판례, 행정규칙을 검색하는 가장 기본 도구입니다. "민법 제103조" 처럼 구체적으로 검색하면 바로 조문 내용을 보여줍니다. |
|
|
| Deep Search. 특정 조문과 연결된 하위 법령(시행령/규칙) 및 참조 조문을 한 번에 모두 찾아 분석합니다. |
| 법령에 첨부된 별표나 서식 파일의 목록을 확인합니다. |
| 법률 용어의 정의를 찾아줍니다. |
| 법제처의 법령 해석 사례를 검색합니다. |
| 🆕 법령/판례 ID로 국가법령정보센터 공식 웹사이트 URL을 생성합니다. 원본 출처 확인이나 공유용 링크가 필요할 때 사용합니다. |
| 🆕 법령의 연혁 정보(제개정구분, 시행일, 개정이유 등)를 조회합니다. "고등교육법 언제 개정됐어?"라고 물으면 사용합니다. |
| 🆕 신구조문대비. 법령 개정 전후를 비교하여 어떤 조문이 어떻게 바뀌었는지 보여줍니다. |
🧠 AI 최적화 프롬프트 (System Prompt)
AI(Claude 등)가 이 도구를 더 똑똑하게 사용하도록 하려면, 아래 내용을 **시스템 프롬프트(System Prompt)**나 Custom Instructions에 추가해 주세요.
## Role: Korean Law Expert (대한민국 법률 전문가)
You are an expert legal assistant with access to the 'Korean Law MCP' tools.
Always answer in Korean unless requested otherwise.
## Guidelines for Tool Usage:
1. **Always Search First**: When asked a legal question, use 'search_korean_law' first.
- If the user specifies an article (e.g., "민법 제103조"), search exactly for that.
- If the query is broad (e.g., "학교폭력"), search for keywords.
2. **ID-based Retrieval**:
- The search result often provides Typed IDs (e.g., 'statute:12345').
- To read the full content, MUST use 'read_legal_resource' with this ID.
3. **Complex Analysis (Deep Search)**:
- If the user asks for a comprehensive review of a specific provision (including its enforcement decrees/rules and references), USE 'explore_legal_chain'.
- Example: "Analyze Article 20 of Higher Education Act strictly." -> 'explore_legal_chain("Higher Education Act Article 20")'
4. **Formatting**:
- Present legal texts clearly with blockquotes or code blocks if necessary.
- Always cite the source (Law Name, Article Number).👩💻 개발자 및 고급 사용자용 (Advanced)
소스 코드를 직접 수정하거나, PyPI에서 직접 설치하여 사용하고 싶은 경우의 안내입니다.
1. PyPI 설치 (pip)
uv 없이 일반 Python 환경에서 설치하려면:
pip install korean-law-mcp설치 후에는 claude_desktop_config.json에서 command를 "python", "-m", "korean_law_mcp" 등으로 설정하여 연결합니다.
2. 로컬 개발 및 디버깅
이 레포지토리를 클론하여 개발하는 경우:
# 의존성 설치
uv sync
# 디버깅 (MCP Inspector 사용)
npx @modelcontextprotocol/inspector uv run korean-law-mcp참고: 이 프로그램은 단독 실행 시 아무런 반응이 없는 것이 정상입니다. (MCP 프로토콜 통신 대기 중) 반드시 MCP Inspector나 Claude Desktop을 통해 실행하세요.
문의 및 기여: 버그 제보나 기능 제안은 GitHub Issues에 남겨주세요.
Available Tools
10 toolscompare_old_newA
Get the old/new article comparison (신구조문대비) for a law.
Shows what changed in the most recent amendment, comparing old and new versions side by side.
Use this tool when the user wants to:
- See what exactly changed in a recent amendment
- Compare before/after versions of specific articles
- Understand the scope of a legal revision
Args:
law_name_or_id: Law name (e.g., "고등교육법") or ID (e.g., "statute:12345" or just "12345")
Returns:
Markdown formatted comparison showing old and new text for each changed article.
| Name | Required | Description | Default |
|---|---|---|---|
| law_name_or_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the tool returns a Markdown comparison, implying a read operation. However, it does not disclose potential requirements (e.g., latest amendment existence), auth needs, or error handling. Adequate but could be more transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with three sentences plus a bulleted usage list and Args/Returns. It is front-loaded with the core purpose. Could be slightly tighter, but no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the single parameter and the existence of an output schema, the description adequately explains what the tool does and returns. It covers the main use cases and return format. Missing potential details like default behavior or error conditions, but still fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has only one parameter with 0% description coverage. The description compensates by explaining the parameter accepts law name or ID, providing examples (e.g., '고등교육법', 'statute:12345'), which adds significant semantic value beyond the schema's bare type definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets the old/new article comparison for a law and shows changes in the most recent amendment. It uses a specific verb ('get') and resource ('comparison'), and the mention of side-by-side comparison distinguishes it from siblings like 'get_article_history' which shows revision history.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes a bulleted list of when to use the tool: seeing exact changes, comparing before/after, and understanding revision scope. This provides clear context, though it does not explicitly state when not to use it or suggest alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
explore_legal_chainA
Perform a 'Deep Search' (Legal Graph).
Use this when you want to understand the full context of a law provision, including:
1. The provision itself.
2. Other articles it refers to ("Internal/External References").
3. Detailed regulations that define its scope ("Presidential Decree").
Usage:
- "Higher Education Act Article 20"
- "고등교육법 제20조"
Returns:
- A comprehensive markdown document containing the main article and all connected legal texts.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses return format (markdown document with connected texts) but does not mention side effects, performance, or access requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with bullet points, concise yet informative. Every section serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (not shown), description adequately explains the three-part return structure, making it sufficient for understanding the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% coverage, but description adds meaning by providing concrete query examples (e.g., 'Higher Education Act Article 20'), compensating for the minimal schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Perform a Deep Search (Legal Graph)' and lists three specific outputs. It implies a broader scope than sibling search tools, though not explicitly differentiating them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit when-to-use ('when you want to understand the full context') and example queries, but lacks when-not-to-use or direct comparisons to similar sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_article_historyA
Get the revision history (연혁) of a law.
Shows when the law was enacted, amended, and what changes were made.
Use this tool when the user wants to:
- Know when a law was last amended
- Track the evolution of a law over time
- Find historical versions of a law
Args:
law_name_or_id: Law name (e.g., "고등교육법") or ID (e.g., "statute:12345" or just "12345")
Returns:
Markdown formatted list of amendments with dates and summaries.
| Name | Required | Description | Default |
|---|---|---|---|
| law_name_or_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Describes return format ('Markdown formatted list') and essential behavior (historical amendments). Does not disclose authentication or rate limits, but for a read-only history tool, this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short paragraphs plus Args/Returns sections. Every sentence adds value. Front-loaded with purpose. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given one parameter and simple functionality, description fully covers what the tool does, when to use, how to use (parameter examples), and what to expect (Markdown output). No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Single parameter 'law_name_or_id' is well-described with examples (name, ID formats). Schema only provides 'string' and title; description adds critical usage context, compensating for 0% schema description coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Get the revision history of a law' with specific verb and resource. Lists concrete use cases (e.g., 'Know when a law was last amended') that distinguish it from sibling tools like search_korean_law or read_legal_resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly provides 'when the user wants to' scenarios. Does not explicitly mention when not to use or alternatives, but the use cases are sufficiently narrow to imply context. Slight deduction for no exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_external_linksA
Generate external links to the National Law Information Center (법령정보센터) website.
Use this tool when the user wants to:
- View the original source on the official government website
- Share a direct link to a law or precedent
- Access additional features not available via this MCP (e.g., PDF downloads, official annotations)
Args:
resource_id: A Typed ID (e.g., "statute:12345", "prec:98765", "admrul:54321")
obtained from search results.
Returns:
Markdown formatted links to the official website.
| Name | Required | Description | Default |
|---|---|---|---|
| resource_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It states the output is Markdown formatted links. No side effects mentioned, but as a link generator, it is inherently read-only and non-destructive. Transparency is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is front-loaded with purpose, then bullet points for use cases, then structured Args/Returns. It is well-organized and not overly verbose, though slightly more concise could be achieved.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one parameter and an output schema, the description covers the tool's functionality sufficiently. It explains the return format and the parameter meaning. No gaps noted for this simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but description compensates by explaining the resource_id parameter in detail, including the format and that it comes from search results, which adds meaning beyond the schema's simple string type.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates external links to the National Law Information Center. It lists specific use cases and is distinct from sibling tools like search and read tools, which focus on retrieving content rather than generating links.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use the tool (view original source, share direct link, access additional features). Does not mention alternatives or when not to use, but the context is clear enough for appropriate use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_statute_attachmentsB
Get a list of attached forms and tables (별표/서식) for a specific statute.
Args:
law_id: The ID of the law (e.g. "12345" or "statute:12345")
| Name | Required | Description | Default |
|---|---|---|---|
| law_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description bears full responsibility for behavioral transparency. It only states 'Get a list' implying a read operation, but fails to disclose any side effects, authentication needs, rate limits, or output characteristics. The presence of an output schema is not referenced, so the description adds minimal behavioral context beyond the basic action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and well-structured: a clear one-line purpose statement followed by a brief parameter description. Every sentence is necessary and no fluff is present. It is front-loaded with the key action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (single parameter) and the presence of an output schema, the description is minimally complete. It adequately explains the tool's purpose and parameter. However, it lacks usage guidelines, behavioral details, and any reference to the output, making it only adequate for a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 0%, but the description adds meaningful semantics for the law_id parameter by providing examples ('12345' or 'statute:12345'). This helps clarify the expected format, which the schema alone (type string) does not. It adds value beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets a list of attached forms and tables (별표/서식) for a specific statute, using a specific verb and resource. However, it does not explicitly differentiate from sibling tools like read_legal_resource or search_law_articles, which might also retrieve statute-related information.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention any prerequisites, limitations, or when not to use it. The absence of such context leaves the agent without decision-making cues for tool selection among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_legal_resourceA
Reads the full content of a specific legal resource using its Typed ID.
Args:
resource_id: A string strictly in the format `type:id` (e.g., "statute:12345", "prec:98765", "admrul:54321").
The ID is obtained from the `search_korean_law` output.
Features:
- **Full Text Retrieval**: Fetches the complete text of statutes, precedents, or rules.
- **Reference Resolution**: Automatically detects references to other laws (e.g., "refer to Article 5") within the text
and appends their content to the response, saving you extra round-trips.
- **Robustness**: Automatically handles ID formatting issues or outdated IDs by trying fallbacks (ID -> MST -> Detc).
Return:
- Markdown formatted text containing the resource metadata, body content, and resolved references.
| Name | Required | Description | Default |
|---|---|---|---|
| resource_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations were provided, so the description must fully disclose behavior. It explains Reference Resolution (auto-appending referenced law content) and Robustness (fallbacks for outdated IDs). It also states the return format is Markdown with metadata, body, and resolved references. This provides good transparency beyond the input schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured. It opens with a clear purpose statement, then organizes additional details into bullet points for Features and Return. Every sentence adds value, and there is no repetition or unnecessary content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (full text retrieval with reference resolution and fallback logic) and the presence of an output schema, the description covers key aspects: ID format, source of ID, feature highlights, and return format. It could be slightly more explicit about the relationship with siblings, but overall it provides sufficient context for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage for the single parameter resource_id, but the description adds substantial meaning: strict format 'type:id' with examples (statute:12345, prec:98765), and notes the ID comes from search_korean_law output. This fully clarifies what the parameter expects.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Reads the full content of a specific legal resource using its Typed ID' with specific examples of resource IDs (statute:12345) and mentions full text retrieval, reference resolution, and robustness. This provides a clear and distinct purpose from sibling tools like search_korean_law which returns IDs for use with this tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates that the resource_id comes from search_korean_law output and that reference resolution saves extra round-trips, implying when to use. However, it lacks explicit guidance on when not to use this tool versus alternatives like compare_old_new or explore_legal_chain, or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_korean_lawA
Primary interface for searching Korean laws, precedents, and administrative rules.
It is a "Smart Search" that adapts to the query type.
Capabilities:
1. **Specific Article Lookup** (Preferred):
- Input: "Civil Act Article 103", "민법 제103조", "Criminal Act 250"
- Behavior: Returns the *exact content* of the article directly. No need for further steps.
- Note: Supports both Korean ("민법") and major English names ("Civil Act").
2. **Broad Keyword Search**:
- Input: "school violence", "학교폭력", "adultery case"
- Behavior: Returns a summarized list of top results across Statutes, Precedents, and Admin Rules.
- Output: Includes **Typed IDs** (e.g., `statute:12345`, `prec:67890`) which MUST be used with `read_legal_resource` to get full text.
Usage Tips:
- ALWAYS try to be specific if you know the law name and article number.
- If searching for a case by number, just enter it (e.g., "2010다102991").
- **NEW:** To find specific articles containing keywords (e.g., "credits" in "Higher Education Act"), first search for the law to get its ID, then use `search_law_articles(law_id, "keywords")`.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no annotations, the description fully discloses behavior: for article lookup it returns exact content directly, for broad search it returns a summarized list with Typed IDs for further steps. It also mentions 'Smart Search' adaptation, leaving no ambiguity about what the tool does.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with sections, bullet points, and usage tips. Every sentence adds value without redundancy. It is appropriately sized for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the single parameter, no annotations, and presence of an output schema, the description covers all needed context: capabilities, input examples, output format, and links to sibling tools. It is complete for the tool's purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no description for the query parameter (0% coverage), but the description adds extensive meaning through examples and behavior explanation. It clarifies how queries are interpreted (specific article vs broad) and provides exact input formats.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is the primary interface for searching Korean laws, precedents, and administrative rules, and distinguishes between specific article lookup and broad keyword search. It also differentiates from sibling tools like search_law_articles by noting a separate use case.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises when to use specific article lookup vs broad search, provides tips like 'ALWAYS try to be specific', and directs users to search_law_articles for finding keywords within a law. This gives clear usage context and alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_law_articlesB
Search for specific keywords within the articles of a statute.
Args:
law_id: The ID of the law (e.g., "statute:12345" or just "12345").
keywords: Space-separated keywords to search for within article text.
Returns:
Markdown formatted text containing the articles that match the keywords.
| Name | Required | Description | Default |
|---|---|---|---|
| law_id | Yes | ||
| keywords | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must carry full behavioral transparency. It states that the tool returns 'Markdown formatted text' but does not disclose whether it is read-only, any side effects, or edge cases. The read-only nature is implied by 'search' but not explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact with a clear purpose statement, then structured Args and Returns sections. No redundant sentences, but could be slightly more concise by omitting 'Args:' label.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple search tool with output schema, the description provides the core functionality but lacks details on empty results, error handling, or when the tool is inappropriate. It is minimally adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Despite 0% schema description coverage, the description adds meaning to both parameters: law_id includes an example format, and keywords specifies 'space-separated'. This goes beyond the bare schema titles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches for keywords within statute articles, with a specific verb and resource. It distinguishes from siblings like 'search_legal_terms' by specifying 'articles of a statute', though it does not explicitly contrast alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool vs. sister tools like 'compare_old_new' or 'search_statutory_interpretations'. There is no mention of prerequisites or conditions for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_legal_termsC
Search for legal terms (definitions). Returns a list of matching terms with IDs.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only discloses that it returns a list of terms with IDs; no side effects, permissions, or other behavioral traits are mentioned. This is insufficient for a search tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short (two sentences) but not necessarily concise in a helpful way—it omits important details while being brief. It is front-loaded with the purpose, but could add parameter guidance without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple input (one string) and presence of an output schema (so return docs are covered), the description is minimally adequate. However, it does not differentiate well from sibling search tools, which share similar structures.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The parameter 'query' is entirely undocumented in both schema (0% coverage) and description. The description implies the query is a legal term to search, but adds no explicit details about format or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Search for legal terms') and the resource ('definitions'), and mentions the return type ('list of matching terms with IDs'). It distinguishes from sibling search tools by specifying 'legal terms' as opposed to laws, articles, or interpretations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus siblings. The description only states what it does, without indicating scenarios or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_statutory_interpretationsB
Search for statutory interpretations (authoritative interpretations by Ministry of Government Legislation).
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for behavioral transparency. It only mentions the source authority but lacks details on limitations, pagination, or effects. Minimal disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one short sentence with a parenthetical, front-loading the key action and resource. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and existence of an output schema, the description provides the essential purpose. However, it could offer more detail on query expectations or result scope for completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% coverage, and the description does not add any meaning to the 'query' parameter beyond its literal interpretation. No format, examples, or constraints are given.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Search' and the resource 'statutory interpretations', and specifies the source 'by Ministry of Government Legislation'. This distinguishes it from sibling tools like search_korean_law.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool vs alternatives, nor any exclusions or prerequisites. It simply states what it does without context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool has a clearly distinct purpose, with no overlapping functions. Compare_old_new, explore_legal_chain, get_article_history, and search variants handle different aspects of legal research without ambiguity.
All tool names follow a consistent verb_noun pattern (e.g., compare_old_new, explore_legal_chain, read_legal_resource, search_korean_law), with no mixing of styles.
With 10 tools, the server is well-scoped for a legal research assistant. Each tool provides essential functionality without being excessive or insufficient.
The tool set covers searching, reading, comparison, history, attachments, terms, interpretations, and external links. A minor gap is the inability to retrieve the full text of a specific older version directly, but agents can work around this using revision history and comparison.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Search U.S. case law, fetch opinions, and ask matter-aware legal questions over your documents.
Resolve, search and verify legal citations against the official sources, with provenance.
Korean fact-verification tools for AI agents: business registration, address, DART, apt prices, laws
Korean public procurement law: rule-engine rulings, statutes search, live court precedents
Related MCP Servers
- -licenseNot gradedqualityNot gradedmaintenanceEnables searching and retrieving Korean legal information including laws, court precedents, legal interpretations, and local ordinances from the Korean National Law Information Center API with intelligent search ranking.
- FlicenseAqualityBmaintenanceEnables AI systems to search, retrieve, and analyze Korean legal information from the National Law Information API (law.go.kr), including laws, administrative rules, English translations, and law-ordinance linkages.262
- FlicenseNot gradedqualityDmaintenanceEnables real-time search and analysis of Korean laws, legal precedents, and administrative rules through the National Law Information Center Open API, allowing AI agents to access official legal information for contract review, compliance, and legal research.73
- FlicenseNot gradedqualityBmaintenanceEnables AI to search and retrieve South Korean legal information from the National Law Information Center. It allows users to look up specific laws, articles, and detailed legal provisions using natural language queries.128
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/seo-jinseok/korean-law-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server