korea-tax-law-mcp
Korean tax law graph: current statutes, 150k+ court/tribunal cases, 145k+ NTS rulings.
Should I use this
Quality & Safety
Findings (10)
- LOWin list_laws
- LOWin search_articles
- LOWin get_article
- LOWin get_article_history
- LOWin search_cases
- LOWin search_interpretations
- LOWin search_annexes
- LOWin get_annex
- LOWin list_upcoming
- LOWin get_treaty_article
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
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": {
"korea-tax-law-mcp": {
"url": "https://mcp.taxjarvis.com/mcp"
}
}
}Remote endpoints
https://mcp.taxjarvis.com/mcpstreamable-httpWhat it can do
Tool inventory
Tools (14)
๐ขlist_laws
์ด DB์ ์๋ก๋ ํํ ์ธ๋ฒ ๋ฒ๋ น ๋ชฉ๋ก(๋ฒ๋ฅ ยท์ํ๋ นยท์ํ๊ท์น)๊ณผ ์ํ์ผ์ ๋ฐํํ๋ค. ๊ตญ์ธ์ฒญ ์กฐ์ธ๋ฒ๋ น ๋ชฉ๋ก์ ํํ๋ง ํฌํจํ๋ฉฐ ๋ชฉ๋ก ์ญ์ฌ ๋ฒ๋ น์ ์ ์ธ. ๋ค๋ฅธ ๋๊ตฌ๋ฅผ ์ฐ๊ธฐ ์ ์๋ก ๋ฒ์ ํ์ธ์ฉ.
Input Schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}๐ขsearch_articles(query, law_name, limit)
ํํ ์ธ๋ฒ ์กฐ๋ฌธ์ ์ ๋ฌธ๊ฒ์ํ๋ค. ํค์๋๋ ์กฐ์ฌ ์๋ ๋ช ์ฌ ์์ฃผ๊ฐ ์ ํํจ (์: '์ด์๊ณผ์ธ ๋ฐฐ์ฐ์', '๋์์ธ์ก๊ณต์ '). law_name์ผ๋ก ํน์ ๋ฒ๋ น ํ์ ๊ฐ๋ฅ.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "๊ฒ์์ด (๋ช
์ฌ ์์ฃผ, ๊ตฌ๋ฌธ๊ฒ์์ ๋ฐ์ดํ)"
},
"law_name": {
"type": "string",
"description": "๋ฒ๋ น๋ช
ํํฐ (๋ถ๋ถ ์ผ์น, ์: '์๋์ธ๋ฒ')"
},
"limit": {
"type": "integer",
"description": "์ต๋ ๊ฒฐ๊ณผ ์ (๊ธฐ๋ณธ 8, ์ต๋ 20)"
}
},
"required": [
"query"
],
"additionalProperties": false
}๐ขget_article(law_name, article_number)
ํน์ ์กฐ๋ฌธ์ ํํ ์๋ฌธ ์ ์ฒด๋ฅผ ๋ฐํํ๋ค (์ํ์ผยท๊ฒ์ฆ๋ ์์ ์ยทํ์๋ฒ๋ นยท๋ณํยท๊ฒ์ฆ๋ ์ธ์ฉ ํฌํจ). ์ธ์จยทํ๋ยท์๊ฑด ๋ฑ ์ ํํ ์์น๋ ๋ฐ๋์ ์ด ๋๊ตฌ๋ก ์๋ฌธ์ ํ์ธํ ๊ฒ. ์ธ์ฉ์ ์ ์ฉ ํ์ ์ด ์๋๋ค.
Input Schema
{
"type": "object",
"properties": {
"law_name": {
"type": "string",
"description": "๋ฒ๋ น๋ช
(์: '์๋์ธ๋ฒ', '์์์ธ ๋ฐ ์ฆ์ฌ์ธ๋ฒ')"
},
"article_number": {
"type": "string",
"description": "์กฐ๋ฒํธ (์: '์ 97์กฐ์2', '97์กฐ์2', '55')"
}
},
"required": [
"law_name",
"article_number"
],
"additionalProperties": false
}๐ขget_article_history(law_name, article_number)
ํน์ ์กฐ๋ฌธ์ ๊ฐ์ ์ฐํ(๋ฒ์ ์ด๋ ฅ, ๊ฐ์ ํ๊ธฐ, ๊ฒ์ฆยท์์ฒ ์ฌ๋ถ)์ ๋ฐํํ๋ค. '์ธ์ ๋ฐ๋์๋' ์ง๋ฌธ์ ์ฌ์ฉ. ๋ฏธ๊ฒ์ฆ ๋ฒ์ ์ ์ ์ฉ ๋จ์ ์ ์ฐ์ง ๋ง ๊ฒ.
Input Schema
{
"type": "object",
"properties": {
"law_name": {
"type": "string"
},
"article_number": {
"type": "string"
}
},
"required": [
"law_name",
"article_number"
],
"additionalProperties": false
}๐ขsearch_cases(query, limit)
ํ๋กยท์กฐ์ธ์ฌํ์ ๊ฒฐ์ ๋ก๋ฅผ ์ ๋ฌธ๊ฒ์ํ๋ค (๋๋ฒ์ยท๊ณ ๋ฑ๋ฒ์ ํ๋ก, ์กฐ์ธ์ฌํ์ ์ฌํ๋ก). ๋จ์ผ ํต์ฌ ํค์๋๊ฐ ์ ํํจ. ํค์๋ ํํธ๋ ํํ ์กฐ๋ฌธ์ ๋ํ ๊ฒ์ฆ๋ ์ธ์ฉ์ด ์๋๋ค.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"limit": {
"type": "integer",
"description": "๊ธฐ๋ณธ 5, ์ต๋ 15"
}
},
"required": [
"query"
],
"additionalProperties": false
}๐ขsearch_interpretations(query, limit)
๊ตญ์ธ์ฒญ ์ง์ํ์ ยท๋ฒ์ ์ฒยทํ์ ์์ ๋ถ ํด์๋ก๋ฅผ ์ ๋ฌธ๊ฒ์ํ๋ค. ์ค๋ฌด ์์ ์ ๊ณผ์ธ๊ด์ฒญ ์ ์ฅ ํ์ธ์ ์ฌ์ฉ. ํค์๋ ํํธ๋ ํํ ์กฐ๋ฌธ์ ๋ํ ๊ฒ์ฆ๋ ์ธ์ฉ์ด ์๋๋ค.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"limit": {
"type": "integer",
"description": "๊ธฐ๋ณธ 5, ์ต๋ 15"
}
},
"required": [
"query"
],
"additionalProperties": false
}๐ขsearch_annexes(query, law_name, limit)
๋ฒ๋ น ๋ณํยท์์์ ์ ๋ฌธ๊ฒ์ํ๋ค. ์ธ์จํยท๊ธฐ์ค๊ธ์กยทํ๋ยท๋ถ๋ฅํ๋ ์กฐ๋ฌธ์ด ์๋๋ผ ๋ณํ์ ์๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค (์: ๊ทผ๋ก์๋ ๊ฐ์ด์ธ์กํ, ๋ฉด์ธ ๋ฏธ๊ฐ๊ณต์๋ฃํ ๋ถ๋ฅํ).
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "๊ฒ์์ด (ํ ์ ๋ชฉยทํญ๋ชฉ ๋ฑ๋ง)"
},
"law_name": {
"type": "string",
"description": "๋ฒ๋ น๋ช
ํํฐ (๋ถ๋ถ ์ผ์น)"
},
"limit": {
"type": "integer",
"description": "๊ธฐ๋ณธ 5, ์ต๋ 15"
}
},
"required": [
"query"
],
"additionalProperties": false
}๐ขget_annex(law_name, annex_number)
ํน์ ๋ณํยท์์์ ๋ณธ๋ฌธ์ ๋ฐํํ๋ค. ์กฐ๋ฌธ์ด '๋ณํ N์ ๋ฐ๋ฅธ๋ค'๋ก ์์ํ ์ธ์จยท๊ธฐ์ค๊ธ์ก์ ํ์ธํ ๋ ์ฌ์ฉ.
Input Schema
{
"type": "object",
"properties": {
"law_name": {
"type": "string",
"description": "๋ฒ๋ น๋ช
(์: '์๋์ธ๋ฒ ์ํ๋ น')"
},
"annex_number": {
"type": "string",
"description": "'๋ณํ 2', '๋ณํ 1์3', '์์ 1' ๋๋ ์ซ์๋ง"
}
},
"required": [
"law_name",
"annex_number"
],
"additionalProperties": false
}๐ขlist_upcoming(law_name)
๊ณตํฌ๋์ผ๋ ์์ง ์ํ ์ ์ธ ๊ฐ์ (์ํ์์ )์ ๋ฐํํ๋ค. ์ํ์ผยท๋ฒ๋ นยท๋ฌ๋ผ์ง๋ ์กฐ๋ฌธ ๋ชฉ๋ก. ๋ฏธ๋ ๊ณผ์ธ๊ธฐ๊ฐ์ด ๊ฑธ๋ฆฐ ์ง๋ฌธ์์ ํํ ์กฐ๋ฌธ๋ง ๋ณด๊ณ ๋ตํ์ง ์๋๋ก ํ์ธ์ฉ.
Input Schema
{
"type": "object",
"properties": {
"law_name": {
"type": "string",
"description": "๋ฒ๋ น๋ช
ํํฐ (์๋ต ์ ์ ์ฒด)"
}
},
"additionalProperties": false
}๐ขlist_treaties(country)
ํ๊ตญ์ด ์ฒด๊ฒฐํ ์กฐ์ธ์กฐ์ฝ(์ด์ค๊ณผ์ธ๋ฐฉ์งํ์ฝ) ์๋ก ํํฉ์ ๋ฐํํ๋ค. country ์์ด ํธ์ถํ๋ฉด ์ฒด๊ฒฐ๊ตญ ๋ชฉ๋ก, country๋ฅผ ์ฃผ๋ฉด ๊ทธ ๋๋ผ ์กฐ์ฝ(ํ์ฝยท๊ฐ์ ์์ ์ยท๊ตํ๊ฐ์) ๋ชฉ๋ก๊ณผ ๋ฐํจ์ผ.
Input Schema
{
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "์ฒด๊ฒฐ๊ตญ ํ๊ธ๋ช
(์: '๋ฏธ๊ตญ', '์ผ๋ณธ'). ์๋ตํ๋ฉด ์ ์ฒด ์ฒด๊ฒฐ๊ตญ ๋ชฉ๋ก"
}
},
"additionalProperties": false
}๐ขsearch_treaties(query, country, limit)
์กฐ์ธ์กฐ์ฝ(์ด์ค๊ณผ์ธ๋ฐฉ์งํ์ฝ) ์กฐ๋ฌธ์ ์ ๋ฌธ๊ฒ์ํ๋ค. ๋น๊ฑฐ์ฃผ์ยท์ธ๊ตญ๋ฒ์ธ์ ์์ฒ์ง์ ์ ํ์ธ์จ, ๊ณ ์ ์ฌ์ ์ฅ, ์ฌ์ฉ๋ฃยท๋ฐฐ๋นยท์ด์ ๊ณผ์ธ๊ถ ํ์ธ์ ์ฌ์ฉ. country๋ก ํน์ ๊ตญ ํ์ ๊ฐ๋ฅ. ๋ณธ๋ฌธ์ ๊ฐ์ ์์ ์๊ฐ ๋ฐ์๋์ง ์์์ ์ ์์ด list_treaties๋ก ์ด๋ ฅ ํ์ธ ํ์.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "๊ฒ์์ด (์: '์ฌ์ฉ๋ฃ', '๊ณ ์ ์ฌ์
์ฅ', '๋ฐฐ๋น ์ ํ์ธ์จ')"
},
"country": {
"type": "string",
"description": "์ฒด๊ฒฐ๊ตญ ํ๊ธ๋ช
ํํฐ (๋ถ๋ถ ์ผ์น)"
},
"limit": {
"type": "integer",
"description": "๊ธฐ๋ณธ 5, ์ต๋ 15"
}
},
"required": [
"query"
],
"additionalProperties": false
}๐ขget_treaty_article(country, article_number)
ํน์ ๊ตญ ์กฐ์ธ์กฐ์ฝ์ ์กฐ๋ฌธ ์๋ฌธ ์ ์ฒด๋ฅผ ๊ตญ๋ฌธยท์๋ฌธ์ผ๋ก ๋ฐํํ๋ค. ์ ํ์ธ์จ ๋ฑ ์ ํํ ์์น๋ ๋ฐ๋์ ์ด ๋๊ตฌ๋ก ์๋ฌธ์ ํ์ธํ ๊ฒ.
Input Schema
{
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "์ฒด๊ฒฐ๊ตญ ํ๊ธ๋ช
(์: '๋ฏธ๊ตญ')"
},
"article_number": {
"type": "string",
"description": "์กฐ๋ฒํธ (์: '์ 12์กฐ', '12')"
}
},
"required": [
"country",
"article_number"
],
"additionalProperties": false
}๐ขsearch_tax(search_intents, as_of, offset, limit, result_set_id)
๋ก์ปฌ tax-ai-agent์ ๊ฐ์ ํตํฉ ๊ทธ๋ํ ํ์. law ์์ ์กฐ๋ฌธ์์ ์์์ ์ต๋ 2๋จ๊ณ ๋ฐ๋ผ ํ๋กยท์๊ทยทํด์๋กยท์ฐธ์กฐ์กฐ๋ฌธยทํต์นยท๋ถ์น ์ ์ฉ๊ทผ๊ฑฐยท๋ณํ๋ฅผ ๋ชจ์ผ๊ณ ์ ๋ฌธ๊ฒ์์ผ๋ก ๋ณด์ถฉํ๋ค. ๊ฒฐ๊ณผ๋ง๋ค ์ค์ graph_paths, DB ์๋ฌธ, ์ํ์ผยท์ ์ฉ๋ฒ์ ยท๋ฏธํ์ ์ํ๋ฅผ ๋ฐํํ๋ค. ์์ ์๋ฃ ์์ง์ ์ฐ์ ๋๊ตฌ. next_offset์ผ๋ก ๊ฒฐ๊ณผ๋ฅผ, get_evidence๋ก ๊ธด ์๋ฌธ์ ์ด์ด ์ฝ์ ๊ฒ.
Input Schema
{
"type": "object",
"properties": {
"search_intents": {
"type": "object",
"minProperties": 1,
"additionalProperties": false,
"description": "์ ํ๋ณ ๊ฒ์ ์๋. ์ ์ฒด 1~8๊ฐ. ์: {law:[์๋์ธ๋ฒ ์ 97์กฐ์2],case:[์ด์๊ณผ์ธ],ruling:[๋ฐฐ์ฐ์ ์ฆ์ฌ]}",
"properties": {
"law": {
"type": "array",
"maxItems": 3,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 300
}
},
"case": {
"type": "array",
"maxItems": 3,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 300
}
},
"ruling": {
"type": "array",
"maxItems": 3,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 300
}
},
"tribunal": {
"type": "array",
"maxItems": 3,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 300
}
},
"treaty": {
"type": "array",
"maxItems": 3,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 300
}
},
"annex": {
"type": "array",
"maxItems": 3,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 300
}
}
}
},
"as_of": {
"type": "string",
"description": "์ ํ: YYYY-MM-DD ๋๋ YYYYMMDD. ์กฐ๋ฌธ๋ณ ๋น์ ๋ฒ์ ์ ๋ณ๋ ๋ฐํํ๋ฉฐ ๋ถ๋ช
์ ํํ์ผ๋ก ๋์ฒดํ์ง ์์."
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000,
"default": 0
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 10
},
"result_set_id": {
"type": "string",
"pattern": "^[a-f0-9]{64}$",
"description": "๋ค์ ํ์ด์ง๋ ์ด์ ์๋ต์ ์๋ณ์๋ฅผ ์ ๋ฌํ์ฌ ๊ฒ์ ์งํฉ ๋ณ๊ฒฝ์ ๊ฐ์ง"
}
},
"required": [
"search_intents"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"required": [
"schema_version",
"results",
"total_results",
"notice"
]
}๐ขget_evidence(evidence_type, evidence_id, offset, limit, source_field)
search_tax๊ฐ ์ฐพ์ ๊ทผ๊ฑฐ์ DB ์๋ฌธ์ ์ฝ๋๋ค. ํ๋กยทํด์๋กยท์๊ทยท์กฐ๋ฌธยทํต์นยท๋ณํยท๋ถ์นยท์กฐ์ฝยท์ญ์ฌ๋ฒ์ ์ ์ง์. ๊ธด ๋ณธ๋ฌธ์ next_offset๊น์ง ๋ฐ๋ณตํ๋ฉด ๋๋ฝ ์์ด ์ฝ์ ์ ์๋ค. summary_only๋ ์๋ฌธ ์ ๋ฌธ์ด ์๋ ์์ง์. ์ ์ฉ ์์ ๋ฏธํด์๋ฅผ ํํ์ผ๋ก ๋ณด์ถฉํ์ง ๋ง ๊ฒ.
Input Schema
{
"type": "object",
"properties": {
"evidence_type": {
"type": "string",
"enum": [
"article",
"article_version",
"case",
"ruling",
"interpretation",
"basic_rule",
"amendment",
"annex",
"treaty_article"
]
},
"evidence_id": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 10000000,
"default": 0
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 24000,
"default": 12000
},
"source_field": {
"type": "string",
"enum": [
"answer_summary",
"application_text",
"article_content",
"body",
"case_holding",
"content",
"content_en",
"content_ko",
"enforcement_text",
"full_content",
"full_text",
"query_summary",
"rule_content",
"ruling_summary",
"transitional_text"
],
"description": "์ ํ: original_text.available_fields์ ๋ค๋ฅธ ์๋ฌธ ํ๋ ์กฐํ"
}
},
"required": [
"evidence_type",
"evidence_id"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"required": [
"found",
"evidence_type",
"evidence_id"
]
}Community
Evidence