English · 繁體中文
台灣法規、裁判書、憲法法庭裁判與卷宗、行政函釋、判解、訴願與準司法決定、立法資料、司法統計與法學文獻 — MCP Server。
讓任何 MCP 相容的 AI 助手直接存取台灣公開法律資料:
本工具即時爬取官網公開資料,請求由使用者自己的電腦發出。使用前請先讀免責聲明:使用者須自行遵守各網站的使用規定與相關法令,查詢結果不構成法律意見。
- 司法院裁判書 — judgment.judicial.gov.tw(全文搜尋 + 取得,附歷審清單)
- 全國法規資料庫 — law.moj.gov.tw(11,700+ 部法規,含官方英譯、最新公布日與施行日註記)
- 憲法法庭 — cons.judicial.gov.tw(871 筆大法官解釋 + 憲判字,含理由書全文,離線快取;受理中案件、言詞辯論、法庭之友與卷內書狀即時查詢)
- 行政機關函釋 — 法務部、勞動部、衛福部、財政部、經濟部、內政部、金管會、交通部、中央銀行、人事總處、消保處、考試院系統、臺北市、新北市等 51 個官方來源,含智慧局專利、商標審查基準;標出官網的「停止適用」與「現行」標示(即時查詢)
- 判解 — 司法院法學資料檢索系統(最高法院決議、法律問題座談、停止適用判例、院字/院解字、大法庭、精選裁判)
- 訴願與準司法決定 — 行政院、各部會與縣市政府訴願決定,公平會處分書、勞動部不當勞動行為裁決、保訓會復審/再申訴決定、金管會裁罰、工程會採購申訴、監察院案件、律師懲戒決議
- 立法資料 — 每一條歷次修正的條文與立法理由、立法歷程、立法院議案(含審查中草案)與公報紀錄、法規命令草案預告
- 統計與量刑 — 司法統計年報/月報、法務統計、《犯罪狀況及其分析》、司法院量刑資訊系統的刑度統計
- 法學文獻 — 司法院專題研究報告(含司法研究年報)、國圖期刊論文索引、GRB 研究計畫、開放取用法學期刊
- 其他規範 — 地方自治法規、條約協定與租稅協定、證交所/櫃買中心/期交所規章
以 Python 搭配 MCP Python SDK 寫成。純工具 wrapper,只連線下方「資料來源與統計」列出的官方網站(政府機關,以及國家圖書館、中研院、國立大學、證券交易所等公共機構),不發送任何其他網路請求;釋字/憲判字資料為內建離線打包。
| 功能 | 說明 |
|---|---|
| 26 個 MCP 工具 | 裁判書搜尋/全文/歷審、法規查詢(含英譯與修法追蹤)、釋字/憲判字查詢、引用關係圖譜、憲法法庭卷宗、行政函釋與審查基準、判解、訴願與準司法決定、立法理由與立法紀錄、統計與量刑、法學文獻、地方法規與條約 |
| 離線快取 | 871 筆大法官解釋與憲判字(含理由書全文,以及從官網 PDF 擷取的大法官意見書全文)從本地資料即時回傳 |
| 引用關係圖譜 | 從理由書抽取所有引用的釋字/憲判字(往前追溯),或列出後來引用某件的釋字/憲判字(往後追溯),追溯憲法學說演變 |
| 全文搜尋 | 裁判書關鍵字搜尋 + 釋字爭點/理由書全文搜尋 |
| 混合請求策略 | 預設用 httpx 直打(~0.25s);司法院 F5 WAF 或其他官網的 JavaScript 檢查擋下時,自動改用 Playwright 瀏覽器後繼續 |
pip install mcp-taiwan-legal-dbDebian / Ubuntu / WSL 注意:系統 Python 受 PEP 668 保護,直接
pip install會被擋。請改用:
pipx install mcp-taiwan-legal-db(推薦,自動建隔離 venv,CLI tool 標準裝法)- 或
pip install --user --break-system-packages mcp-taiwan-legal-db
Windows / 企業部署:建議用 uv 或 pipx 裝成獨立工具,不碰系統 Python 的 site-packages:
uv tool install mcp-taiwan-legal-db uv tool update-shell # 把工具目錄加進 PATH,重開終端機後生效套件目錄只讀不寫:查詢快取、WAF cookies 與每週更新的法規代碼表都寫在每位使用者自己的目錄(Windows:
%LOCALAPPDATA%\mcp-taiwan-legal-db;macOS / Linux:~/.cache/mcp-taiwan-legal-db),所以裝到C:\Program Files等全使用者共用位置也能用。要改位置可設環境變數MCP_TAIWAN_LEGAL_DB_HOME。
裝完後 entry point mcp-taiwan-legal-db 會在 PATH 上。接到 Claude Code(任何專案都能用):
claude mcp add taiwan-legal-db mcp-taiwan-legal-db --scope user接著 /mcp 重啟連線、Claude 就會在自然語言查詢時自動用 26 個 MCP tool。
Chromium:司法院 WAF(伺服器第一次啟動、還沒有 cookies 時就會用到,見WAF 處理機制),以及文化部訴願、NCC、雲林縣等需要瀏覽器的來源,會在第一次需要時自動下載安裝(約 150MB,僅一次)。無法連外下載的環境請預先安裝:
uvx --from mcp-taiwan-legal-db playwright install chromium # 僅在查詢需要瀏覽器時啟動,平時 idle內政部、衛福部、勞動部訴願與醫事懲戒需要通過官網驗證碼,預設不查詢。啟用前請確認符合各網站的使用規定與相關法令,使用責任由使用者自行承擔。
關閉時查到這些來源(例如 source="內政部"、source="訴願"),工具不連官網,只回「此來源預設關閉」和官網網址,請自行到官網查詢。要啟用,設定環境變數 MCP_TAIWAN_LEGAL_DB_ENABLE_CAPTCHA_SOURCES=1 後重新啟動;內政部、衛福部另外需要本機 OCR 依賴 [captcha]:
pip install "mcp-taiwan-legal-db[captcha]"
claude mcp add taiwan-legal-db --scope user -e MCP_TAIWAN_LEGAL_DB_ENABLE_CAPTCHA_SOURCES=1 -- mcp-taiwan-legal-dbClaude Code plugin 不啟用這些來源,也不帶 [captcha];要用請改照上面自行安裝。
下面是 clone 來修程式 / 跑測試的流程:
# 1. Clone repo
git clone https://github.com/lawchat-oss/mcp-taiwan-legal-db.git
cd mcp-taiwan-legal-db
# 2. 建立並初始化虛擬環境
python3 -m venv .venv
.venv/bin/pip install --upgrade pip
.venv/bin/pip install -e .
# 3. 安裝 Playwright Chromium(供需要瀏覽器的官方來源使用)
.venv/bin/playwright install chromium
# 4. 驗證伺服器可以啟動並註冊 26 個工具
.venv/bin/python -c "
import asyncio
from mcp_server.server import mcp
print('Server:', mcp.name)
tools = asyncio.run(mcp.list_tools())
print('Tools:', [t.name for t in tools])
assert len(tools) == 26, f'Expected 26 tools, got {len(tools)}'
print('✓ Setup OK')
"預期輸出:
Server: 台灣法律資料庫
Tools: ['search_judgments', 'get_judgment', 'query_regulation', 'get_pcode', 'search_regulations', 'get_interpretation', 'search_interpretations', 'get_citations', 'search_agency_interpretations', 'get_agency_interpretation', 'search_precedents', 'get_precedent', 'search_administrative_decisions', 'get_administrative_decision', 'get_legislative_history', 'search_constitutional_docket', 'get_constitutional_case_file', 'search_legislative_records', 'get_legislative_record', 'search_statistics', 'get_statistics', 'get_sentencing_statistics', 'search_legal_literature', 'get_legal_literature', 'search_other_regulations', 'get_other_regulation']
✓ Setup OK
上面沒報錯就完成了。Repo 根目錄已經帶一份 .mcp.json,任何在此資料夾內開的 Claude Code session 會自動載入這個 server,不需要額外註冊。
26 個 MCP 工具,全部唯讀,全部只連線官方公開資料庫(見「資料來源與統計」)。
| 工具 | 用途 | 典型呼叫 |
|---|---|---|
search_judgments |
搜尋司法院裁判書資料庫 | search_judgments(keyword="預售屋 遲延交屋", case_type="民事") |
get_judgment |
依 JID 或 URL 取得單筆判決全文與歷審清單 | get_judgment(jid="TPSM,114,台上,3753,20251112,1") |
query_regulation |
查詢法規條文(單條、區間、跨號多條)、章節目錄、修法沿革、官方英譯 | query_regulation(law_name="民法", article_no="184~186,247-1") |
get_pcode |
將法規名稱解析為 pcode(法規代號) | get_pcode(law_name="律師法") |
search_regulations |
以關鍵字搜尋 11,700+ 部法規,或列出某日以後修正公布的法規 | search_regulations(keyword="勞動") |
| 工具 | 用途 | 典型呼叫 |
|---|---|---|
get_interpretation |
大法官解釋/憲判字全文(離線快取) | get_interpretation("釋字748", reasoning_keyword="婚姻") |
search_interpretations |
搜尋釋字/憲判字(爭點 + 理由書全文) | search_interpretations(keyword="集會自由") |
get_citations |
引用關係圖譜(往前或往後追溯) | get_citations("釋字748", include_context=True) |
search_constitutional_docket |
受理中、排定言詞辯論、徵求法庭之友意見的案件 | search_constitutional_docket(status="amicus") |
get_constitutional_case_file |
卷內文書:聲請書、答辯書、鑑定意見、法庭之友意見書、言詞辯論筆錄等 | get_constitutional_case_file("113年憲判字第8號") |
| 工具 | 用途 | 典型呼叫 |
|---|---|---|
search_agency_interpretations |
搜尋各機關行政函釋與智慧局審查基準(51 個官方來源,即時查詢;標出停止適用) | search_agency_interpretations(keyword="加班費", agency="勞動部") |
get_agency_interpretation |
取得函釋全文(主旨、說明、相關法條、編註、效力標示) | get_agency_interpretation("moj:FE393340") |
search_precedents |
搜尋決議、法律問題座談、停止適用判例、司法解釋(院字/院解字)、大法庭裁定、精選裁判 | search_precedents(keyword="借名登記", category="決議") |
get_precedent |
取得判解全文(含編註,例如「不再援用」) | get_precedent("D:A,20170214,001") |
| 工具 | 用途 | 典型呼叫 |
|---|---|---|
search_administrative_decisions |
搜尋訴願決定(行政院、各部會、縣市政府)與準司法機關的決定、處分 | search_administrative_decisions(keyword="個人資料", source="行政院") |
get_administrative_decision |
取得決定書/處分書全文(由官網 HTML 或 PDF 擷取) | get_administrative_decision("ey:A-115-000633") |
| 工具 | 用途 | 典型呼叫 |
|---|---|---|
get_legislative_history |
某一條文歷次制定、修正時的條文與立法理由,附最近一次修正的立法歷程 | get_legislative_history("勞動基準法", "24") |
search_legislative_records |
搜尋立法院議案(含審查中草案)、立法院公報、法規命令草案預告 | search_legislative_records("勞動基準法", kind="bills") |
get_legislative_record |
取得議案、公報紀錄或草案預告全文 | get_legislative_record("bill:202110226160000") |
| 工具 | 用途 | 典型呼叫 |
|---|---|---|
search_statistics |
搜尋司法統計年報/月報、法務統計、《犯罪狀況及其分析》 | search_statistics(keyword="收結", source="司法統計") |
get_statistics |
取得統計表內容或報告全文 | get_statistics("moj:INF_COMMON_P/807") |
get_sentencing_statistics |
司法院量刑資訊系統的刑度統計(判決數、刑度平均與分布) | get_sentencing_statistics(crime="竊盜") |
search_legal_literature |
搜尋司法院專題研究報告、國圖期刊論文索引、GRB 研究計畫、開放取用法學期刊 | search_legal_literature("量刑", source="司法研究年報") |
get_legal_literature |
取得書目、摘要與全文(有公開全文時) | get_legal_literature("ncl:A15001353") |
| 工具 | 用途 | 典型呼叫 |
|---|---|---|
search_other_regulations |
搜尋全國法規資料庫以外的規範:地方自治法規、條約協定、交易所規章 | search_other_regulations("違章建築", source="臺北市") |
get_other_regulation |
取得條文(單條、區間、多條;未分條的文件回全文) | get_other_regulation("taichung:GL001385", article_no="3") |
search_judgments
搜尋司法院判決系統。支援:
- 精確案號查詢(快,HTTP GET):設定
case_word+case_number+year_from - 全文關鍵字搜尋:設定
keyword - 裁判主文篩選:
main_text="被告應將 移轉"+keyword="借名登記"→ 找被告敗訴的借名登記案 - 可依
court、case_type(民事/刑事/行政/懲戒)、year_from/year_to過濾 - 結果自動依法院層級排序(最高 → 高等 → 地方)
- 資料涵蓋範圍:民國 89 年(2000)起接近完整,81–88 年(1992–1999)僅零星收錄,80 年(1991)以前查無。這是司法院系統本身的收錄範圍,本工具不做任何年份裁切
重要:要查某個特定案號時,一定要用 case_word+case_number,不要放進 keyword。
# ✅ 正確 — 查 114 台上 3753 最高法院
search_judgments(case_word="台上", case_number="3753", year_from=114, court="最高法院")
# ✅ 正確 — 全文搜尋
search_judgments(keyword="預售屋 遲延交屋")
# ❌ 錯 — 把案號放進 keyword
search_judgments(keyword="114年度台上字第3753號")get_judgment
取得單筆判決的結構化全文。
- 輸入:
jid(從search_judgments結果取得)或url - 輸出:
{case_id, court, date, main_text, facts, reasoning, cited_statutes, cited_cases, full_text, source_url, history, history_note} - HTTP GET data.aspx 取得全文
- 全文快取 30 天;歷審清單會隨上訴變動,另外只快取 24 小時
get_judgment(jid="TPSM,114,台上,3753,20251112,1")
# → history: 臺中地院 111 易 203 → 臺中高分院 113 上易 80 → … 各審級裁判(含 jid、url)history 是司法院依案號串起的歷審清單,引用判決前先看後面還有沒有上級審裁判、是否已被廢棄或發回。pending_supreme_court=true 表示案件目前在最高法院/最高行政法院審理中;清單最後一筆之後沒有更高審級,不等於已經確定(可能仍在上訴期間內,或上級審裁判尚未上網)。
單筆判決可能超過 1 萬 token。建議先用 search_judgments 取得 metadata,只在使用者明確需要時才抓全文。
query_regulation
查詢全國法規資料庫的條文:單條、區間或跨號多條,一次最多 50 條。不指定條號時不回傳條文,只回傳章節目錄(structure,各編章節的標題與起始條號)與條號範圍;整部法規動輒上千條,一次全給只會塞滿 agent 的 context。
# 單一條文
query_regulation(law_name="民法", article_no="184")
# 區間、跨號多條,可混用(也接受「第184條」「247之1」)
query_regulation(law_name="民法", article_no="184~198")
query_regulation(law_name="民法", article_no="184,185,247-1")
# 不指定條號:章節目錄與條號範圍
query_regulation(law_name="律師法")
# 附修法沿革;指定條號時另回傳該條歷次條文(article_history)
query_regulation(law_name="勞動基準法", article_no="24", include_history=True)
# 官方英譯(約 970 部法律與部分命令)
query_regulation(law_name="勞動基準法", article_no="24", language="en")回傳的 law 另含 last_amended(最新公布日)與 category(主管機關分類);有特殊施行日時含 effective_date/effective_note(如「自公布後六個月施行」「施行日期由行政院定之」),引用新修正條文前先看這兩欄確認是否已施行。這些欄位來自每週更新的 law_meta.json。
language="en" 回傳官方英譯本與 english_version_date;英譯常落後中文修正,版本較舊時 note 會提醒,法律效力以中文為準。英譯檔第一次查詢時下載到使用者資料目錄(約 16 MB),每週更新。
指定條號並開啟 include_history 時,article_history.revisions 會列出該條每次制定、增訂、修正、刪除的日期與當時條文,可直接前後對照。只讀取修法沿革中動到該條的歷史版本(例如民法第 184 條只需 36 個版本中的 5 個),版本清單與歷史版本全文都會快取;讀取失敗的版本會列在 failed_versions 並標 partial。
支援 law_name(自動解析 pcode,縮寫如「勞基法」也可)或直接傳 pcode。超過 50 條時回傳 has_more 與續查起點;指定了卻不存在的單條列在 missing。from_no/to_no 等同 article_no="起~迄"。
search_regulations
以名稱關鍵字搜尋法規,每頁 50 筆,現行法規排在已廢止之前。每筆含 last_amended 與 category,可用來追蹤修法:
search_regulations(keyword="勞動")
search_regulations(keyword="消費", exclude_abolished=True)
# 某日以後新制定/修正公布的法規(新到舊),可再依主管機關篩選
search_regulations(amended_since="2026-09-01")
search_regulations(amended_since="115-07-01", category="勞動部")get_interpretation
取得大法官解釋(釋字第 1–813 號)或憲法法庭裁判(憲判字)全文。預設層從本地 JSON 快取即時回傳。
分層設計(節省 context):
| 層級 | 觸發條件 | 離線? |
|---|---|---|
| 預設層(字號/日期/爭點/解釋文) | 永遠回傳 | ✓ |
| 理由書片段 | reasoning_keyword="關鍵字" |
✓ |
| 理由書全文(不按字數截斷) | include_reasoning=True |
✓ |
| 意見書片段 | opinions_keyword="關鍵字" |
✓ |
| 意見書全文 | include_opinions=True |
✓ |
| 單份意見書全文 | opinion_document="許宗力" |
✓ |
| 從指定位置讀到文末(相容舊參數) | opinions_offset=15000 |
✓ |
# 預設層(離線,~0ms)
get_interpretation("釋字748")
# 理由書中搜尋關鍵字
get_interpretation("釋字748", reasoning_keyword="婚姻自由")
# 在意見書中定位特定大法官
get_interpretation("釋字758", opinions_keyword="湯德宗")
# 只讀某位大法官的完整意見書
get_interpretation("釋字758", opinion_document="許宗力")
# 需要從指定字元位置開始時,回傳該位置以後的全部文字
get_interpretation("釋字777", opinion_document="吳陳鐶", opinions_offset=15000)
# 新制憲判字
get_interpretation("111年憲判字第1號")建議先用 keyword 片段模式定位,只在需要時才開全文模式。
search_interpretations
搜尋大法官解釋與憲判字。關鍵字同時匹配標題、爭點、理由書全文。
# 全文搜尋(搜爭點 + 理由書)
search_interpretations(keyword="集會自由")
# 篩選年度(新制)
search_interpretations(keyword="言論自由", year=112)
# 列舉最後 10 筆釋字
search_interpretations(number_from=804, number_to=813)get_citations
從理由書中抽取所有引用的釋字/憲判字字號。追溯方向:查詢指定裁判引用了哪些先前裁判。
get_citations("釋字748")
# → citations: [釋字第242號, 釋字第362號, 釋字第365號, ...]
# 附上引用前後 80 字片段
get_citations("釋字748", include_context=True)
# 往後追溯:後來哪些釋字/憲判字的主文或理由書引用了這件
get_citations("釋字748", direction="cited_by")
# → cited_by: [釋字第763號, 釋字第791號, ...]並列寫法「釋字第 477 號、第 747 號及第 762 號」會逐一收錄。cited_by 比對本地收錄的全部案件(不含意見書與資料包建置後才公布的新案);要找引用某件的法院判決,改用 search_judgments(keyword="釋字第748號")。
search_constitutional_docket / get_constitutional_case_file
get_interpretation 只有已公布的裁判;這兩個工具查憲法法庭官網公開的案件進度與卷內文書(即時查詢):
status |
內容 |
|---|---|
pending(預設) |
已受理、審理中的案件(受理日期、聲請人(人民以甲乙丙代稱)、案號、主案/併案、案由) |
hearing |
已排定或已舉行言詞辯論、說明會的案件 |
amicus |
目前公開徵求法庭之友意見的案件 |
search_constitutional_docket(keyword="勞動") # 受理中、案由含「勞動」的案件
search_constitutional_docket(status="amicus") # 正在徵求法庭之友意見的案件
get_constitutional_case_file("113年憲判字第8號") # 列出卷內全部公開文件與言詞辯論公告
get_constitutional_case_file("113年憲判字第8號", keyword="人性尊嚴") # 只列出內容含關鍵字的文件並附片段
get_constitutional_case_file(document_id="492306") # 讀單一文件全文(PDF 擷取)case_id 可以是憲判字、釋字、受理中案號(如「114年度憲立字第3號」)或 search_constitutional_docket 回傳的 id。關鍵字比對的是官方擷取的無標點文字,限憲判字與受理中案件;掃描檔的 OCR 可能有錯字,法庭之友意見書官方只公開前 20 頁。案件清單與卷宗頁在本機快取一天。
search_agency_interpretations / get_agency_interpretation
各機關函釋分散在各自的系統,沒有共用 API。這個工具在查詢當下同時向下列官方系統查詢(共 51 個來源;外交部、退輔會、核安會、國發會,以及 NCC、客委會、僑委會、運動部、關務署新頒釋函、陸委會主站廣告函釋,只在 agency 指名時查),合併後依發文日期排序;同一件函釋在多個來源出現時只保留一筆(以機關自己的系統為準):
| 來源 | 內容 |
|---|---|
| 法務部主管法規查詢系統 | 行政函釋、法規諮詢意見 |
| 勞動部勞動法令查詢系統 | 行政函釋、解釋令 |
| 衛生福利法規檢索系統 | 行政函釋 |
| 環境部主管法規查詢系統 | 行政函釋 |
| 工程會政府採購法規解釋函令 | 採購法令解釋令、函 |
| 財政部各稅法令函釋檢索系統 | 稅務法令彙編、新頒令釋 |
| 財政部主管法規查詢系統 | 財政部與關務署、國有財產署、國庫署的核釋令與行政規則 |
| 經濟部主管法規查詢系統 | 經濟部本部及水利署、標準檢驗局、國際貿易署等的解釋令與行政規則 |
| 經濟部商業發展署 商工行政法規 | 公司法、商業登記法、商業會計法、有限合夥法函釋 |
| 經濟部智慧財產局 | 著作權解釋令函;專利審查基準(網頁版全文)、商標審查基準(PDF) |
| 經濟部標準檢驗局 | 解釋函令(商品檢驗、度量衡等) |
| 行政院人事行政總處 | 人事法令解釋(公務員任用、給與、休假等) |
| 行政院消費者保護處 | 消費者保護法函釋與法規諮詢意見(只比對標題與摘要) |
| 監察院陽光法令主題網 | 政治獻金法、公職人員利益衝突迴避法、財產申報法的主管機關函釋(只比對標題) |
| 內政部戶政司、國土管理署、地政司、消防署 | 戶籍與國籍、建築管理與都市計畫、地政(含已停止適用)、消防法令解釋 |
| 交通部法規系統 | 行政解釋(令、函、公告) |
| 中央銀行法規系統 | 行政令函 |
| 考試院主管法規共用系統 | 銓敘部、保訓會、考選部、考試院行政函釋 |
| 各部會主管法規共用系統 | 金管會、教育部、農業部、內政部、文化部、國科會、原民會、海委會、公平會、陸委會、中選會(含行政函釋)、主計總處的行政規則(解釋令、函收在這一類,結果會混有一般行政規則);外交部、退輔會、核安會、國發會只在指名時查 |
| NCC | NCC 法規查詢系統的行政函釋,含個別函復;指名 agency="NCC" |
| 客委會、僑委會、運動部 | 行政規則;指名才查,未證實現行/停止兩態完整,不輸出「適用中」 |
| 關務署新頒釋函 | CSRF 表單查詢;只比對標題,日期條件未套用 |
| 陸委會主站廣告函釋 | 只涵蓋「廣告規範」類別中的函與參考意見,標題比對;不代表全部主站函文 |
| 臺北市法規查詢系統 | 臺北市政府解釋令函,以及該系統收錄的中央機關函釋 |
| 新北市法規查詢系統 | 新北市政府與中央機關函釋(依筆數取前 5 類列出,其餘只列筆數) |
| 司法院法學資料檢索系統 | 跨機關行政函釋(司法院、法務部及其他機關) |
| 行政院公報 | 各機關依行政程序法第 159 條第 2 項第 2 款發布的解釋性規定(數位部法規系統目前仍無法完成自動驗證,公報只能補到依法公告的部分) |
# 全部來源
search_agency_interpretations(keyword="個人資料", year_from=113, year_to=114)
# 指定機關(可用逗號分隔多個;簡稱如「金管會」「衛福部」也可以)
search_agency_interpretations(keyword="加班費", agency="勞動部")
search_agency_interpretations(keyword="私募", agency="金管會")
search_agency_interpretations(keyword="時效取得", agency="地政司")
search_agency_interpretations(keyword="考績", agency="銓敘部")
search_agency_interpretations(keyword="專利要件", agency="專利") # 智慧局審查基準只比對章名
search_agency_interpretations(keyword="加班費", agency="人事總處")
search_agency_interpretations(keyword="關係人", agency="陽光法令")
# 用發文字號找
search_agency_interpretations(doc_number="法律字第11403512580號")
# 讀全文(id 取自搜尋結果)
get_agency_interpretation("moj:FE393340")效力標示:結果與全文的 status 是官網對該筆資料的標示,引用前必看。
| status | 意思 |
|---|---|
停止適用 |
官網標示已停止適用或廢止;status_note 附停止日期、依據的函或原標示(例如「本筆資料,依據…號函,自…停止適用」) |
部分停止適用 |
交通部的標示 |
適用中 |
只在官網有「現行/停止適用」兩態欄位的來源出現(勞動部、衛福部、考試院系統、環境部、地政司、各部會主管法規共用系統的行政規則);財政部法令彙編收錄的函釋也標「適用中」(經重新研審保留適用,彙編後才廢止的官網不另標示) |
沒有 status |
官網沒有標示或沒標示,不代表仍然有效。戶政司、消防署、智慧局、行政院公報等官網完全沒有效力欄位;法務部、工程會、司法院法學檢索、臺北市、央行、交通部只標停止的,沒標的不確定 |
官網偶有漏標或重複登錄(例如人事總處同一件函有一筆標停止、一筆沒標),引用前請讀全文、留意 notes(編註)與後續函釋。
回傳的 categories 列出每個來源/類別的總筆數與是否有下一頁;某個來源暫時連不上時,該類別帶 error,其他來源照常回傳。全文省略正本、副本受文者清單。國土管理署與智慧局著作權函釋官方只提供全量清單,第一次查詢會下載到使用者資料目錄(分別約 16 MB、13 MB),之後每週/每天更新一次。每個來源各自分頁(多數每頁 20 筆,部分 10 或 25 筆)。消防署只能查摘要,函文是掃描 PDF 附件。
search_precedents / get_precedent
查司法院法學資料檢索系統裡、裁判書系統(search_judgments)查不到的判解:
| 類別 | 內容 |
|---|---|
| 決議 | 最高法院民刑事庭會議決議、最高行政法院聯席會議決議(108 年大法庭制度施行前) |
| 法律問題座談 | 各級法院法律座談會、公證法律問題研討、懲戒法律問題座談 |
| 停止適用判例 | 依法院組織法第 57 條之 1 停止適用、已無裁判全文的判例(僅存判例要旨) |
| 司法解釋 | 大理院解釋、最高法院解釋、司法院院字/院解字解釋 |
| 大法庭 | 最高法院、最高行政法院大法庭裁定 |
| 精選裁判 | 司法院編輯、附「裁判要旨」的各級法院裁判;reference_value=true 表示該院選為「具參考價值」或「足資討論」 |
| 具參考價值裁判 | 只查上述 reference_value=true 的裁判(須指定才查) |
search_precedents(keyword="借名登記") # 決議、座談、判例、司法解釋、大法庭、精選裁判
search_precedents(keyword="情事變更", category="決議,司法解釋")
search_precedents(keyword="借名登記", category="具參考價值裁判")
get_precedent("D:A,20170214,001") # 最高法院 106 年度第 3 次民事庭會議引用決議、判例前請看 fields 裡的編註(例如「不再援用」)。站方每類最多提供前 500 筆,筆數多時請加關鍵字或年度縮小範圍。
search_administrative_decisions / get_administrative_decision
不指定 source 時查下列預設來源:
| 來源 | 內容 |
|---|---|
| 行政院訴願審議委員會 | 訴願決定書(PDF 全文;108 年以前收辦的案件是 HTML,id 為院臺訴字號碼,如 ey:1070210137) |
| 公平交易委員會 | 處分書及不處分決議書(約 5,800 件,PDF 全文;關鍵字中的空白會被當成詞組的一部分) |
| 勞動部不當勞動行為裁決委員會 | 不當勞動行為裁決(搜尋結果沒有日期,讀全文才有) |
| 公務人員保障暨培訓委員會 | 復審、再申訴決定(不含年金改革案件) |
| 金管會、銀行局、證期局、保險局 | 裁罰案件(四個網站合併;總數為估計) |
以下來源要在 source 指定才查:
source |
內容 |
|---|---|
| 「工程會」「採購申訴」 | 採購申訴審議判斷(官方沒有關鍵字檢索,用案號如「訴1130123」或年度查;內文只公開判斷理由) |
| 「監察院」(或「調查報告」「糾正」「彈劾」「糾舉」) | 調查報告、糾正案、彈劾案、糾舉案(官網回應慢,單次可能數十秒) |
| 「律師懲戒」 | 律師懲戒、懲戒覆審決議(需姓名或案號這類精確關鍵字) |
| 機關或縣市名,如「臺北市」「新北市」「國防部」「交通部」「法務部」「金管會」「退輔會」;「訴願」= 全部訴願來源 | 各部會(法務部、外交部、國防部、交通部、金管會、中央銀行、退輔會、國科會、數位部、工程會、原民會、經濟部、農業部、教育部、文化部、環境部、勞動部、內政部、衛福部、中選會、人事總處)與縣市政府(臺北市、新北市、臺中市、高雄市、彰化縣、花蓮縣、金門縣、苗栗縣、臺東縣、嘉義市、嘉義縣、宜蘭縣、新竹縣、基隆市)訴願決定。部分網站只能比對標題、只給頁數,差異見各來源的 note |
search_administrative_decisions(keyword="個人資料", source="行政院")
search_administrative_decisions(doc_number="公處字第115060號") # 依字號精確查詢
search_administrative_decisions(keyword="資遣", source="不當勞動行為")
search_administrative_decisions(keyword="洗錢", source="裁罰") # 金管會裁罰案件
search_administrative_decisions(keyword="長照", source="監察院")
search_administrative_decisions(keyword="違規停車", source="臺北市,新北市")
get_administrative_decision("ey:A-115-000633") # 由 PDF 擷取全文官網公開的決定書照原樣提供:多數機關已遮蔽當事人姓名(○○),部分舊案(行政院 108 年以前收辦、法務部約 112 年以前)與原民會的決定書官網未遮蔽,本工具也不另外遮蔽。內政部、衛福部、勞動部訴願與醫事懲戒預設關閉(見預設關閉的來源);啟用後勞動部採公開語音驗證功能,內政部、衛福部採本機圖形 OCR(需 [captcha])。文化部使用 Playwright。內政部/環境部未填年份時依官網查本年度;衛福部亦預設本年度。教育部/農業部限前五頁;基隆、中選會只查標題,人事總處只比對使用者指定的一頁。財政部、桃園目前連線失敗,臺南驗證仍未能穩定完成,未新增。律師懲戒決議的被付懲戒律師姓名是官方公開資訊。source="醫事懲戒" 查目前上架的醫事懲戒公告(預設西醫師,可用「牙醫師」等關鍵字前綴改類別),只比對姓名、縣市、證書字號;掃描決議只回傳 PDF。PDF 無法擷取文字時(多為 2008 年以前的公平會舊檔或掃描檔)回傳 pdf_url 讓使用者自行開啟。
get_legislative_history
從立法院法律系統取得某一條文每次制定、修正時的條文與立法理由(民國 59 年以後的修正才有理由)。適合回答「這條為什麼這樣規定」「當初修法的目的」;query_regulation(include_history=True) 回傳的是條文變遷,這裡多了立法理由。
get_legislative_history("勞動基準法", "24") # 73 年制定、105、107 年修正,各版條文與理由
get_legislative_history("民法", "1030-1") # 民法在立法院系統分編收錄,會自動對應到「民法第四編親屬」
get_legislative_history("刑法", "339-4") # 簡稱會轉成正式名稱「中華民國刑法」另附 latest_amendment_process:整部法律最近一次修正的一讀、委員會審查、二讀、三讀日期與公報頁次(不一定修到本條)。其中 gazette_pdf_id 傳給 get_legislative_record 可讀該次會議的公報紀錄,找立法者原意。
search_legislative_records / get_legislative_record
kind |
內容 |
|---|---|
bills(預設) |
立法院議案(法律案草案、修正草案)。status="pending" 審查中(預設只看本屆,屆期不連續)、all 全部、passed 已三讀;每筆含提案人、提案日期、會期、進度與關係文書 PDF(含條文對照表) |
gazette |
立法院公報(院會、委員會、公聽會紀錄,含委員與官員發言),全文檢索並附命中片段 |
drafts |
行政院公報刊登的法規命令訂定、修正草案預告(含陳述意見截止日期) |
search_legislative_records("勞動基準法", kind="bills") # 本屆審查中的勞基法修正草案
search_legislative_records("勞動基準法第五十五條", kind="gazette") # 找立法者原意:法律名稱+條次
search_legislative_records("個人資料", kind="drafts") # 各部會辦法、細則的草案預告
get_legislative_record("bill:202110226160000") # 議案全文與審議進度
search_legislative_records("條例", kind="join", status="pending") # JOIN 法律草案預告;closed 查已結束
# JOIN 的諮詢狀態不代表法律效力。全文含預告內文及選中的一份草案/對照表 PDF;其餘附件列連結。每頁 20 筆(drafts 10 筆),全文不按字數截斷。議案的審議進度會變,全文不長期快取。
search_statistics / get_statistics
來源(source) |
內容 |
|---|---|
| 司法統計 | 司法院司法統計年報:各級法院各類案件收結、終結情形、上訴、發回更審等統計表(year 指定民國年,預設最新一年) |
| 月報 | 司法院司法統計月報:指定年度最新一個月的統計表 |
| 法務統計 | 法務部常用統計表:偵查、起訴、定罪、執行、矯正等(每月滾動更新,只快取一天) |
| 犯罪狀況 | 法務部司法官學院《犯罪狀況及其分析》年度報告(篇章 PDF+數據 XLSX) |
search_statistics(keyword="收結", source="司法統計")
search_statistics(keyword="詐欺", source="犯罪狀況")
get_statistics("moj:INF_COMMON_P/807") # 地方檢察署執行裁判確定有罪人數關鍵字只比對表名或報告標題。統計表以「|」分欄的文字回傳。
get_sentencing_statistics
司法院「事實型量刑資訊系統」的刑度統計:符合條件的判決數,以及各刑種的平均、最高、最低刑度與分布。涵蓋殺人、強盜搶奪、傷害、不能安全駕駛、肇事逃逸、詐欺、竊盜、毒品、槍砲、妨害性自主 10 類案件。這是過去判決的統計,不是量刑基準。
get_sentencing_statistics() # 列出罪名與法院
get_sentencing_statistics(crime="竊盜") # 統計,並回傳可選的法條(law_options)與量刑因子(factor_options)
get_sentencing_statistics(crime="竊盜", law="第320條第1項", court="臺北地院", factors="累犯=是")只用公開頁面呈現的彙總統計;官網只開放給院內使用者的個案清單與判決明細不呼叫。
search_legal_literature / get_legal_literature
只用官方與開放取用來源,不含付費資料庫:
來源(source) |
內容 |
|---|---|
| 司法研究年報 | 司法院專題研究報告(含司法研究年報),全文按章分檔 |
| 期刊 | 國家圖書館臺灣期刊論文索引:各法學期刊論文的書目與摘要;作者授權者有全文 |
| GRB | 政府研究資訊系統:國科會與各部會補助的研究計畫摘要(報告全文需在官網下載) |
| 開放期刊 | 中研院法學期刊、政大法學評論、臺大法學論叢(全文取自官網;臺大限可定位卷期且標為全文/定稿的 PDF,摘要不當全文) |
search_legal_literature("量刑", source="司法研究年報")
search_legal_literature("勞動派遣", source="期刊", year_from=105)
get_legal_literature("ncl:A15001353") # 書目、摘要;有授權時附全文引用時請附作者、篇名、刊名卷期與年份。國家圖書館授權的全文只供個人查閱,本工具不寫入快取,請勿轉存或散布。全文不按字數截斷。
search_other_regulations / get_other_regulation
全國法規資料庫法律命令清單以外、query_regulation 查不到的規範:
| 類別 | 來源 |
|---|---|
| 地方自治法規 | 臺北市、新北市、桃園市、臺中市、臺南市、高雄市、基隆市、新竹縣市、苗栗縣、彰化縣、南投縣、嘉義縣市、屏東縣、宜蘭縣、花蓮縣、臺東縣、澎湖縣、金門縣、連江縣、雲林縣(只收現行法規;雲林遇到驗證時使用瀏覽器) |
| 條約及協定 | 全國法規資料庫條約(只比對名稱)、外交部條約協定資料庫(部分舊約是掃描檔,只有 PDF 連結)、財政部所得稅協定 |
| 交易所規章 | 臺灣證券交易所、證券櫃檯買賣中心、臺灣期貨交易所(櫃買、期交所規章取自證基會法規系統,僅供查閱、不得轉載) |
search_other_regulations("違章建築", source="臺北市")
search_other_regulations("日本 所得稅", source="條約") # 條約可用「國家 主題」
search_other_regulations("營業細則", source="證交所")
get_other_regulation("taichung:GL001385", article_no="3") # 臺中市殯葬管理自治條例第 3 條不填 source 會同時查全部 28 個來源,建議指定。多數來源把整串關鍵字當成一個詞,請一次給一個詞。分條的規範依 article_no 回傳 articles,寫法同 query_regulation(單條、區間、多條,一次最多 50 條),不給條號時只回傳條號範圍;要點、條約等未分條的文件回傳 full_text。
「查民法第 184 條」
「搜尋跟預售屋遲延交屋有關的最高法院判決」
「釋字 748 的理由書重點是什麼」
「哪些大法官解釋討論過集會自由」
「釋字 748 引用了哪些先前的釋字」
「查 111 年憲判字第 1 號」
「勞動部對加班費有哪些函釋」
「財政部對股利的函釋,哪些已經停止適用」
「公務員未休假加班費,人事總處怎麼解釋」
「工程會對不發還押標金有什麼解釋」
「最高法院有沒有關於借名登記的決議」
「查院解字第 3829 號」
「行政院有哪些個資相關的訴願決定」
「勞基法第 24 條當初為什麼這樣修」
「這件最高法院判決的前審是哪幾件?有沒有發回?」
「勞基法第 24 條的英文版」
「列出 115 年 7 月以後修正公布的勞動部主管法規」
「勞基法現在有哪些審查中的修正草案」
「死刑案的法庭之友意見書有哪些提到人性尊嚴」
「憲法法庭現在受理了哪些勞動相關的案件」
「臺北地院竊盜累犯通常判多久」
「司法研究年報有沒有關於量刑的研究」
「臺北市有關違章建築的自治法規」
「金管會最近對洗錢防制缺失的裁罰」
依你使用的 Claude client 選對應的段落。
Claude Code 會自動載入專案根目錄的 .mcp.json。這個 repo 已經內建一份:
{
"mcpServers": {
"taiwan-legal-db": {
"command": ".venv/bin/python",
"args": ["-m", "mcp_server.server"]
}
}
}零設定:cd 進 repo 之後跑 claude 就好。MCP server 列表會看到 taiwan-legal-db,而且此資料夾不會有其他多餘的 server。
跟隊友分享:.mcp.json 已經 commit 進 repo。任何人 clone 下來跟著 Quick Start 跑完,就會自動完成 MCP 註冊。
加到其他專案(你想在另一個資料夾用這個 MCP):用 claude mcp add 以 project scope 加入:
cd /path/to/your/other/project
claude mcp add taiwan-legal-db --scope project -- \
/absolute/path/to/mcp-taiwan-legal-db/.venv/bin/python \
-m mcp_server.server這會在你另一個專案的根目錄寫出一份 .mcp.json。想在每個專案都能用,把 --scope project 改成 --scope user。
Claude Desktop 使用一個全域設定檔:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Windows (Microsoft Store / WinGet / MSIX 安裝):
C:\Users\<YourName>\AppData\Local\Packages\Claude_pzs8sxrjxfjjc\LocalCache\Roaming\Claude\claude_desktop_config.json
最快開啟方式:在 Claude Desktop 點選單列(不是視窗)→ Settings → Developer → Edit Config。檔案若不存在 Claude Desktop 會自動建立。
在 mcpServers 下加入以下內容(跟已有內容合併):
{
"mcpServers": {
"taiwan-legal-db": {
"command": "/absolute/path/to/mcp-taiwan-legal-db/.venv/bin/python",
"args": ["-m", "mcp_server.server"],
"cwd": "/absolute/path/to/mcp-taiwan-legal-db"
}
}
}把 /absolute/path/to/mcp-taiwan-legal-db 換成你的實際 clone 路徑。cwd 欄位必填,Python 才找得到 mcp_server 套件。
存檔後,完全關閉並重新開啟 Claude Desktop(不是只關視窗 — macOS 用 ⌘Q、Windows 右鍵工具列圖示 → Quit)。設定檔只會在重啟時重新載入。
Claude Cowork 跑在 Claude Desktop 裡面,共用同一個 claude_desktop_config.json — 沒有另外的 Cowork 設定檔。任何你在 Claude Desktop 註冊的 MCP server 會自動透過 Claude Desktop SDK 橋接進 Cowork 的沙盒 VM。
設定步驟:
- 照上面 Claude Desktop 段落把
taiwan-legal-db加進claude_desktop_config.json - 完全關閉並重新開啟 Claude Desktop — 同時也會重啟 Cowork
- 開一個 Cowork session,
taiwan-legal-db的工具就可以用了
注意:Cowork 目前在 Claude Pro / Max / Team / Enterprise 方案都可以用,且只能存取你明確授權的資料夾。MCP server 本身跑在你的 host 上(不是 Cowork VM 裡面),透過 Desktop SDK bridge 溝通,所以不管你授權哪個資料夾給 Cowork,它都存取得到內建的資料檔。
任何符合 Model Context Protocol 規範 的 MCP client 都可以使用這個 server。啟動指令永遠是:
.venv/bin/python -m mcp_server.server
⋯⋯加上 cwd 設定為 repo 根目錄(Python 才找得到 mcp_server 套件)。設定位置請參考你使用的 client 的文件,找 mcpServers JSON 區塊寫在哪裡。
想用 A2A agent 驅動這些工具?請見 examples/agno-bindu/ — 一個社群貢獻的 A2A agent 範例。
ModuleNotFoundError: No module named 'mcp_server'
→ 你沒有在 venv 裡面跑 pip install -e .。回到 Quick Start 步驟 2。
FileNotFoundError: data/pcode_all.json
→ 內建的 mcp_server/data/pcode_all.json 不見或被刪了。用 git checkout mcp_server/data/pcode_all.json 還原,或觸發重新下載:
.venv/bin/python -m mcp_server.updaterMCP client 回報「伺服器啟動失敗」 → 直接跑 Quick Start 步驟 3 的驗證指令。若失敗,代表 import chain 壞了 — 看 traceback。若通過,問題在 MCP client 的啟動設定(路徑或 cwd 錯了)。
「官網瀏覽器連線或啟動失敗」
→ 需要瀏覽器的來源第一次使用時會自動下載 Chromium;無法連外下載的環境請手動安裝:uvx --from mcp-taiwan-legal-db playwright install chromium(開發環境:.venv/bin/playwright install chromium)。
「官網瀏覽器查詢逾時,可能仍停在驗證頁」「官網驗證尚未完成」 → 該官網的檢查這次沒有通過,稍後再試。這不代表查無資料。
「此來源預設關閉」 → 這個來源需要通過官網驗證碼,預設不查詢,請到回應裡的官網網址自行查詢,或見預設關閉的來源。
「此公開來源需要本機 OCR」
→ 已啟用預設關閉的來源,但內政部、衛福部還缺 [captcha] 額外依賴:pip install "mcp-taiwan-legal-db[captcha]"。
ssl.SSLCertVerificationError: ... Missing Subject Key Identifier
→ 這是 OpenSSL 3.6+ 對 TWCA Global Root CA 的廣泛 rejection,不是 certifi 舊的問題。本 repo 透過 truststore 套件讓 Python 改用作業系統原生的 trust store(macOS Security framework、Windows CryptoAPI、Linux 系統 CA),所有路徑都保留完整 SSL 驗證(verify=True),不使用 verify=False。這在 macOS、Windows 以及 OpenSSL <3.6 的 Linux 都能正常工作。OpenSSL 3.6+ 的 Linux 環境(Fedora 40+、未來的 Ubuntu LTS)目前可能仍有問題,歡迎 issue 回報。
司法院 judgment.judicial.gov.tw 部署了 F5 BIG-IP ASM WAF,純 HTTP 請求可能被擋(回固定 245 bytes 的 "Request Rejected")。
本專案採混合策略:
- 伺服器啟動時,使用者資料目錄還沒有
.judicial_cookies.json的話,會在背景先開一次 Playwright(缺 Chromium 時自動安裝),讓第一筆查詢不必等 - Playwright 以 headless Chromium 開啟查詢頁,讓網站自己的 JS challenge 跑完,再取瀏覽器拿到的 cookies;不計算、不偽造 token
- cookies 持久化到使用者資料目錄的
.judicial_cookies.json(0600 權限),之後的查詢用 httpx 帶這些 cookies 直接請求(~0.25s);沒有設定期限,用到被擋為止 - 偵測到被擋(response 含
Request Rejected或 JS challenge markerbobcmn/TSPD)時重跑一次 Playwright,再重試一次
cons.judicial.gov.tw(釋字)跟 law.moj.gov.tw(法規)沒這個問題,不經過 WAF 流程。
查詢時連網的都是台灣政府機關與公共機構的公開資料庫,伺服器本身不建資料庫,只在使用者查詢的當下向官方網站取資料:
| 來源 | 網域 | 用途 |
|---|---|---|
| 司法院裁判書系統 | judgment.judicial.gov.tw | 裁判書搜尋、全文與歷審清單(FJUD/Default_AD.aspx、data.aspx、controls/GetJudHistory.ashx) |
| 全國法規資料庫 | law.moj.gov.tw | 法規條文與修法沿革(LawClass/*)、官方英譯與法規施行日等資料(api/*)、條約協定 |
| 司法院憲法法庭 | cons.judicial.gov.tw | 資料包建置後才公布的憲判字(其餘釋字/憲判字為離線資料)、受理案件與卷內文書 |
| 司法院法學資料檢索系統 | legal.judicial.gov.tw | 決議、法律問題座談、停止適用判例、司法解釋、大法庭、精選裁判、跨機關行政函釋 |
| 司法院 司法統計 | www.judicial.gov.tw | 司法統計年報、月報 |
| 司法院事實型量刑資訊系統 | intellisen.judicial.gov.tw | 量刑統計(公開彙總) |
| 司法院電子出版品 | jirs.judicial.gov.tw | 專題研究報告、司法研究年報 |
| 法務部主管法規查詢系統 | mojlaw.moj.gov.tw | 行政函釋、法規諮詢意見 |
| 勞動部勞動法令查詢系統 | laws.mol.gov.tw | 行政函釋、解釋令 |
| 衛生福利法規檢索系統 | mohwlaw.mohw.gov.tw | 行政函釋 |
| 工程會政府採購法規解釋函令 | planpe.pcc.gov.tw | 採購法令解釋令、函 |
| 財政部各稅法令函釋檢索系統 | ttc.mof.gov.tw | 稅務法令彙編、新頒令釋 |
| 經濟部商業發展署 | gcis.nat.gov.tw | 商工行政法規函釋 |
| 財政部主管法規查詢系統 | law-out.mof.gov.tw | 財政部、關務署、國有財產署、國庫署核釋令與行政規則 |
| 經濟部主管法規查詢系統 | law.moea.gov.tw | 經濟部本部與所屬機關解釋令、行政規則 |
| 經濟部標準檢驗局 | www.bsmi.gov.tw | 解釋函令 |
| 行政院人事行政總處 | law.dgpa.gov.tw | 人事法令解釋 |
| 行政院消費者保護處 | www.ey.gov.tw | 消保法函釋 |
| 監察院陽光法令主題網 | sunshine.cy.gov.tw | 政治獻金法、利益衝突迴避法、財產申報法函釋 |
| 經濟部智慧財產局 | www.tipo.gov.tw | 著作權解釋令函(開放資料)、專利與商標審查基準 |
| 內政部戶政司 | www.ris.gov.tw | 戶政法令解釋 |
| 內政部國土管理署 | www.nlma.gov.tw | 解釋函彙編 |
| 內政部地政司 | www.land.moi.gov.tw | 地政法令解釋 |
| 內政部消防署 | law.nfa.gov.tw | 消防法令解釋 |
| 環境部主管法規查詢系統 | oaout.moenv.gov.tw | 行政函釋 |
| 考試院主管法規共用系統 | law.exam.gov.tw | 銓敘部、保訓會、考選部、考試院函釋 |
| 各部會主管法規共用系統 | law.fsc.gov.tw、edu.law.moe.gov.tw、law.moa.gov.tw、glrs.moi.gov.tw、law.moc.gov.tw、law.nstc.gov.tw、law.cip.gov.tw、law.oac.gov.tw、law.ftc.gov.tw、law.mac.gov.tw、law.cec.gov.tw、law.dgbas.gov.tw、law.mofa.gov.tw、law.vac.gov.tw、erss.nusc.gov.tw、theme.ndc.gov.tw、law.hakka.gov.tw、law.ocac.gov.tw、law.sports.gov.tw | 金管會、教育部、農業部、內政部、文化部、國科會、原民會、海委會、公平會、陸委會、中選會、主計總處、外交部、退輔會、核安會、國發會、客委會、僑委會、運動部的行政規則(解釋令、函) |
| NCC 法規查詢系統 | ncclaw.ncc.gov.tw | 行政函釋、個別函復 |
| 財政部關務署 | web.customs.gov.tw | 新頒釋函 |
| 大陸委員會 | www.mac.gov.tw | 大陸廣告規範專區的函與參考意見 |
| 交通部法規系統 | motclaw.motc.gov.tw | 行政解釋 |
| 中央銀行法規系統 | www.law.cbc.gov.tw | 行政令函、訴願決定 |
| 臺北市法規查詢系統 | laws.gov.taipei | 函釋、訴願決定、地方法規 |
| 新北市法規查詢系統 | web.law.ntpc.gov.tw | 函釋、訴願決定、地方法規 |
| 行政院公報資訊網 | gazette.nat.gov.tw | 各機關解釋性規定、法規命令草案預告 |
| 行政院訴願審議委員會 | appeal.ey.gov.tw | 訴願決定書 |
| 公平交易委員會 | www.ftc.gov.tw | 處分書及不處分決議書 |
| 行政院公共工程委員會 | web.pcc.gov.tw、www.pcc.gov.tw | 採購申訴審議判斷、訴願決定 |
| 勞動部不當勞動行為裁決委員會 | uflb.mol.gov.tw | 裁決決定 |
| 公務人員保障暨培訓委員會 | web13.csptc.gov.tw | 復審、再申訴決定 |
| 金管會、銀行局、證期局、保險局 | www.fsc.gov.tw、www.banking.gov.tw、www.sfb.gov.tw、www.ib.gov.tw | 裁罰案件、金管會訴願決定 |
| 監察院 | www.cy.gov.tw | 調查報告、糾正案、彈劾案、糾舉案 |
| 法務部律師查詢系統 | lawyerbc.moj.gov.tw | 律師懲戒決議 |
| 衛福部醫事管理系統 | ma.mohw.gov.tw | 醫事懲戒公告 |
| 各部會訴願決定 | www.moj.gov.tw、www.mofa.gov.tw、law.mnd.gov.tw、nseweb.motc.gov.tw、www.vac.gov.tw、www.nstc.gov.tw、moda.gov.tw、law.cip.gov.tw、eportal2.moea.gov.tw、appeal.moa.gov.tw、appeal.moe.gov.tw、aamis-web.moenv.gov.tw、appealweb.mol.gov.tw、appeal.moc.gov.tw、themedata.culture.tw、aarc.moi.gov.tw、service.mohw.gov.tw、web.cec.gov.tw、www.dgpa.gov.tw | 法務部、外交部、國防部、交通部、退輔會、國科會、數位部、原民會、經濟部、農業部、教育部、環境部、勞動部、文化部、內政部、衛福部、中選會、人事總處訴願決定 |
| 縣市政府訴願決定 | appeal.taichung.gov.tw、web.law.ntpc.gov.tw、law.kcg.gov.tw、www.chcg.gov.tw、glrs.hl.gov.tw、law.kinmen.gov.tw、www.miaoli.gov.tw、www.taitung.gov.tw、general.chiayi.gov.tw、www.cyhg.gov.tw、www.e-land.gov.tw、gdd.hsinchu.gov.tw、www.klcg.gov.tw | 臺中市、新北市、高雄市、彰化縣、花蓮縣、金門縣、苗栗縣、臺東縣、嘉義市、嘉義縣、宜蘭縣、新竹縣、基隆市訴願決定(臺北市見上) |
| 立法院法律系統 | lis.ly.gov.tw | 立法沿革、立法理由、立法歷程與公報頁 |
| 立法院議事暨公報資訊網 | ppg.ly.gov.tw | 議案、立法院公報 |
| 公共政策網路參與平臺 | join.gov.tw | 法律草案預告 |
| 法務部 法務統計資訊網 | www.rjsd.moj.gov.tw | 常用統計表 |
| 法務部司法官學院 | www.cprc.moj.gov.tw | 《犯罪狀況及其分析》 |
| 國家圖書館 臺灣期刊論文索引 | tpl.ncl.edu.tw | 期刊論文書目、摘要、授權全文 |
| 政府研究資訊系統 GRB | www.grb.gov.tw、grbdef.stpi.niar.org.tw | 研究計畫書目與摘要 |
| 中研院法律學研究所 | www.iias.sinica.edu.tw | 中研院法學期刊全文 |
| 政治大學法學院 | review.law.nccu.edu.tw | 政大法學評論全文 |
| 臺灣大學法律學院 | www.law.ntu.edu.tw | 臺大法學論叢全文 |
| 縣市法規查詢系統 | law.tycg.gov.tw、law.taichung.gov.tw、outlaw.kcg.gov.tw、law01.tainan.gov.tw、exlaw.klcg.gov.tw、hclaw.hsinchu.gov.tw、law.hccg.gov.tw、law.miaoli.gov.tw、lawsearch.chcg.gov.tw、glrs.nantou.gov.tw、law.cyhg.gov.tw、law.chiayi.gov.tw、ptlaw.pthg.gov.tw、glrslaw.e-land.gov.tw、glrs.hl.gov.tw、law.taitung.gov.tw、law.penghu.gov.tw、law.kinmen.gov.tw、law.matsu.gov.tw、law.yunlin.gov.tw | 自治條例、自治規則等地方法規(臺北市、新北市見上) |
| 外交部條約協定資料庫 | no06.mofa.gov.tw | 條約協定 |
| 財政部 | www.mof.gov.tw | 所得稅協定 |
| 臺灣證券交易所 法規分享知識庫 | twse-regulation.twse.com.tw | 證交所規章 |
| 證券暨期貨法令判解查詢系統 | www.selaw.com.tw | 櫃買中心、期交所規章 |
各來源的網址、查詢方式、限制與目前未收錄的來源見 SOURCES.md。
get_judgment 接受使用者傳入的 URL,mcp_server/config.py:ALLOWED_DOMAINS 以硬編碼 allow-list 限制只能是裁判書與法規兩個網域;其他工具只連上表固定網址,不接受任意 URL。下列網站的 robots.txt 不允許爬蟲(或排除特定路徑),本工具對它們只做使用者觸發的單次查詢,不批次抓取:司法院法學資料檢索系統(legal.judicial.gov.tw)、衛福部法規檢索系統(mohwlaw.mohw.gov.tw)、行政院訴願網站(appeal.ey.gov.tw)、立法院議事暨公報資訊網(ppg.ly.gov.tw)、內政部地政司(www.land.moi.gov.tw)、臺北市法規查詢系統的訴願決定全文路徑(laws.gov.taipei)、全國法規資料庫的條約查詢(law.moj.gov.tw)、財政部的 /download/ 檔案(www.mof.gov.tw)、行政院人事行政總處網站(www.dgpa.gov.tw)。證券暨期貨法令判解查詢系統(www.selaw.com.tw)載明非經授權不得轉載,櫃買中心、期交所規章只供查閱,結果都附提醒。函釋、決議、訴願決定、處分書等皆屬公文,依著作權法第 9 條不受著作權保護;期刊論文、研究報告與交易所規章則不在此列,請依各來源的使用規定引用。國家圖書館授權的全文只供個人查閱,本工具一律不寫入快取。
個資與存取限制:本工具只在使用者查詢時即時轉取官網公開的內容,不另外遮蔽;除了本機的查詢快取(見快取),不另建資料庫;部分訴願決定(行政院 108 年以前收辦、法務部約 112 年以前、原民會)官網未遮蔽當事人姓名,結果照原樣呈現。本工具只查公開、免登入資料;可在新的瀏覽器工作階段中處理 JavaScript/Cloudflare 檢查;需要通過驗證碼的來源預設關閉,由使用者自行啟用。每次只完成使用者指定的查詢與全文讀取,驗證失敗會回報錯誤,不當成查無資料;不登入、不使用員工或院內權限、不批次抓取。司法院量刑資訊系統只用公開頁面的彙總統計,官網只開放給院內使用者的個案判決清單一律不呼叫。完整說明見免責聲明。
裁判書年份涵蓋範圍:本工具即時代理司法院系統,沒有自己的資料庫,有效年份 = 司法院收錄範圍。實測(以「竊盜」為關鍵字計數)民國 89 年(2000)起每年數萬筆,81–88 年(1992–1999)合計約 2,000 筆,80 年(1991)以前為零。司法院公告其開放資料檔「收錄範圍與裁判書查詢系統相同」,因此沒有更早的公開來源。查詢 2000 年以前的裁判請預期查無或零星。
憲法法庭資料(釋字/憲判字)不在查詢時連網取得 — 它是離線打包的(old_cases.json/new_cases.json/opinions.zip),來源為 cons.judicial.gov.tw,由維護腳本離線重建。詳見 SOURCES.md。
| 資料集 | 筆數 | 含理由書 | 含意見書 | 檔案大小 |
|---|---|---|---|---|
| 舊制釋字(old_cases.json) | 813 | 734 | 472 | 7.4 MB |
| 新制憲判字(new_cases.json) | 58 | 58 | 57 | 2.0 MB |
| 大法官意見書全文(opinions.zip) | 1,541 份 | — | 1,541 份有全文 | 10.8 MB |
釋字 401 號以後與憲判字的大法官意見書,官網只以 PDF 附件公開,已擷取文字打包進 opinions.zip,查詢回傳的 opinion_documents 會列出每份意見書的標題、官網 PDF 連結與字數。其中 22 份 PDF 的字型無法解碼或頁面為圖片(主要是釋字 735–753 號的部分意見書),改以頁面影像逐字轉錄(回傳時標註 transcribed,引用前請核對官網 PDF)。意見書以憲法法庭網站公布的 PDF 為準;全國法規資料庫收錄的早期意見書是事後編修的版本(用字統一、修正筆誤、當事人姓名去識別化),兩者文字可能略有出入。重建方式見 scripts/build_opinions.py;官網公布新的憲判字後,用 scripts/build_new_cases.py 只補新案(含意見書)。
函釋、判解、決定書、文獻、統計、立法紀錄與憲法法庭文件回傳完整全文,不按字數截斷;法規與其他規範則依 article_no 只回傳指定的條文(一次最多 50 條),不回傳整部法規。官網搜尋分頁、關鍵字片段模式、附件數量與檔案大小限制仍在;沒有文字層的掃描檔提供原始連結。
| 資料類型 | TTL | 位置 |
|---|---|---|
| 判決全文 | 30 天 | 使用者資料目錄的 legal_mcp.db(SQLite,首次啟動時建立) |
| 搜尋結果 | 24 小時 | 同上 |
| 法規條文 | 7 天 | 同上 |
| pcode metadata | 30 天 | 同上 |
| 歷審清單 | 24 小時(與判決全文分開) | 同上 |
| 憲法法庭案件清單、卷宗頁 | 1 天 | 同上 |
| 單篇全文:決定書、立法理由、憲法法庭卷內文書、公報與草案預告、統計表、研究文獻 | 30 天 | 同上 |
| 函釋、判解全文(可能事後停止適用) | 7 天 | 同上 |
| 地方法規、條約、交易所規章 | 7 天 | 同上 |
| 法務統計常用統計表 | 1 天 | 同上 |
| 議案全文、國家圖書館授權全文 | 不快取 | — |
| 消保處、監察院陽光法令、標準檢驗局的函釋清單 | 1 天 | 記憶體(伺服器重啟即重抓) |
| 官方英譯、國土管理署解釋函、智慧局著作權函釋 | 每週更新(智慧局每天) | 使用者資料目錄的 en_laws.zip、en_orders.zip、nlma_interpcomp.json、tipo_copyright.xml |
| 釋字/憲判字 | 本地資料(不過期) | mcp_server/data/old_cases.json、new_cases.json、opinions.zip |
使用者資料目錄:Windows 為 %LOCALAPPDATA%\mcp-taiwan-legal-db,macOS / Linux 為 ~/.cache/mcp-taiwan-legal-db(有設 XDG_CACHE_HOME 則在其下),可用環境變數 MCP_TAIWAN_LEGAL_DB_HOME 改位置。全部清除:刪掉該目錄下的 legal_mcp.db。
伺服器啟動時會檢查 pcode_all.json 的時間戳。如果最後一次更新在最近的週六之前,會在背景觸發從 law.moj.gov.tw 官方 API 重新抓取,結果(連同 law_histories.json 與 law_meta.json)寫進使用者資料目錄,不動套件內建檔;讀取時內建檔與使用者副本取較新者。失敗會記為 warning,不會阻擋啟動。
手動更新:
.venv/bin/python -m mcp_server.updatermcp-taiwan-legal-db/
├── .gitignore
├── .mcp.json # 資料夾內 Claude Code session 自動註冊用
├── LICENSE # MIT(程式碼)
├── DATA_LICENSE # CC0 1.0(憲法法庭資料)
├── SOURCES.md # 資料來源說明
├── CITATION.cff # 學術引用格式
├── README.md # 本檔(繁體中文)
├── README.en.md # English version
├── pyproject.toml # 套件 metadata 與相依
└── mcp_server/
├── __init__.py
├── server.py # MCPServer 入口 — 定義 26 個 @mcp.tool() function
├── config.py # URL、法院代碼、快取 TTL、allowed domains
├── updater.py # 獨立的 pcode_all.json 更新 script
├── healthcheck.py # 官方來源即時健康檢查(python -m mcp_server.healthcheck)
├── cache/db.py # SQLite 快取層
├── data/
│ ├── pcode_all.json # 11,700+ 部法規(內建,~780 KB)
│ ├── law_histories.json # 修法沿革(內建,~9.6 MB)
│ ├── law_meta.json # 最新公布日、施行日註記、主管機關分類(內建,~1.2 MB)
│ ├── old_cases.json # 813 筆舊制釋字全文(內建,~7.4 MB)
│ ├── new_cases.json # 58 筆新制憲判字全文(內建,~2.0 MB)
│ └── opinions.zip # 大法官意見書全文,由官網 PDF 擷取(內建,~10.8 MB)
├── models/ # Judgment / Regulation dataclass
├── parsers/ # 判決與法規頁面的 HTML parser
├── tools/
│ ├── judicial_search.py # search_judgments
│ ├── judicial_doc.py # get_judgment(含歷審清單)
│ ├── regulations.py # query_regulation, get_pcode, search_regulations
│ ├── constitutional_court.py # get_interpretation, search_interpretations, get_citations
│ ├── constitutional_docket.py # search_constitutional_docket, get_constitutional_case_file
│ ├── agency_interpretations.py # search_agency_interpretations, get_agency_interpretation
│ ├── ip_guidelines.py # 智慧局專利、商標審查基準
│ ├── fint.py # search_precedents, get_precedent(司法院法學資料檢索系統)
│ ├── admin_decisions.py # search_administrative_decisions, get_administrative_decision
│ ├── quasi_judicial.py # 準司法機關決定(採購申訴、裁決、保訓會、金管會裁罰、監察院、律師懲戒、醫事懲戒)
│ ├── appeals.py # 各部會與縣市政府訴願決定
│ ├── legislative.py # get_legislative_history(立法院法律系統)
│ ├── legislative_records.py # search_legislative_records, get_legislative_record
│ ├── statistics.py # search_statistics, get_statistics
│ ├── sentencing.py # get_sentencing_statistics
│ ├── literature.py # search_legal_literature, get_legal_literature
│ ├── other_regulations.py # search_other_regulations, get_other_regulation
│ ├── tls.py # 未送中繼憑證網站用的 TWCA 中繼憑證
│ ├── pdf_text.py # PDF 文字擷取(意見書、決定書、處分書、卷內文書共用)
│ ├── waf_bypass.py # 司法院 F5 WAF:以 Playwright 取得 cookie,缺 Chromium 時自動安裝
│ ├── public_browser.py # 需要瀏覽器的官網(JavaScript/Cloudflare 檢查、單頁應用程式)
│ ├── public_captcha.py # 圖形驗證碼的本機 OCR([captcha] 額外依賴)
│ └── medical_discipline.py # 衛福部醫事懲戒公告
└── tests/ # pytest 測試
.venv/bin/pip install -e ".[dev]"
.venv/bin/pytest mcp_server/tests/ -v單元測試以 MockTransport 模擬官網,看不出官網改版。發版前、或有人回報某個來源查不到東西時,跑即時健康檢查:每個來源實際查一次、再取第一筆全文,並用幾件已知停止適用的函釋確認效力標示還讀得到。
.venv/bin/python -m mcp_server.healthcheck # 全部(約 150 項,幾分鐘)
.venv/bin/python -m mcp_server.healthcheck interpretations mof mol # 只查指定工具與來源
.venv/bin/python -m mcp_server.healthcheck status # 只查效力標示結果每列標 OK、THIN(取回的文字偏短)、EMPTY(查無結果)或 FAIL;有 EMPTY 或 FAIL 時 exit code 為 1。
由 LawChat 維護 — 一個台灣法律 AI 平台。
- 官網:lawchat.com.tw
- 聯絡:opensource@lawchat.com.tw
- 回報問題:GitHub Issues
Best-effort 維護 — 我們會盡量跟上 upstream(司法院、法務部)頁面變動,但不保證 issue 的回覆時效。
程式碼:MIT License
憲法法庭資料:CC0 1.0(公有領域貢獻)— 任何人皆可自由使用、修改及散布,無需取得授權或署名。學術引用格式請參考 CITATION.cff。
裁判書與法規資料來源:司法院、法務部(政府公開資料)。 憲法法庭資料來源:司法院憲法法庭(依中華民國著作權法第 9 條屬公有領域)。詳見 SOURCES.md。
非官方工具。 本工具與司法院、法務部或任何政府機關沒有隸屬關係,也未經其授權或背書。
本工具是爬蟲。 使用者每查詢一次,本工具就在使用者自己的電腦上向官網送出請求,擷取網頁、PDF 或網站前端使用的公開 API。部分網站的 robots.txt 不允許爬蟲;部分網站設有 JavaScript/Cloudflare 檢查,本工具會在本機以瀏覽器(Playwright)完成。需要通過驗證碼的來源(內政部、衛福部、勞動部訴願與醫事懲戒)預設不查詢;使用者自行啟用後,本工具會以本機 OCR 辨識圖形驗證碼、使用網站提供的語音驗證功能,或在驗證碼只於網頁前端檢查時直接送出查詢表單。這些都只用於使用者觸發的單次查詢:不登入、不使用員工或特定使用者的權限、不批次下載文件全文。少數網站沒有搜尋功能,查詢時會下載它公開的清單,在本機比對並短期快取。除了伺服器啟動時預先連線司法院裁判書系統、每週更新一次全國法規資料庫開放資料的法規代碼表,本工具不在背景抓取資料,也不建立資料庫。
使用者的責任。 請求由使用者的電腦與網路發出。使用者須自行確認並遵守各網站的使用規定與相關法令(包括著作權法、個人資料保護法),並自行承擔使用的結果。請勿修改或使用本工具大量、高頻率或自動化地抓取資料,也不要把查詢結果建成資料庫或轉載;標示不得轉載的來源(如證基會法規系統)與國家圖書館授權全文只供個人查閱。
個人資料。 部分官方文件(如訴願決定、懲戒決議)在官網公開當事人姓名,本工具照原樣回傳,不另外遮蔽。使用者處理其中的個人資料時,須符合個人資料保護法的蒐集目的與合理利用範圍。
資料正確性,不構成法律意見。 查詢結果以官網當下的內容為準,可能因快取(見上方 TTL 表)、官網改版、擷取錯誤或掃描檔辨識錯誤而不完整或不正確。本工具與其結果不構成法律意見;正式引用或作為依據前,請向官方來源核對。
不提供擔保。 本工具依 MIT 授權「按現狀」提供,不提供任何明示或默示的擔保。在法律許可的範圍內,維護者對使用本工具或其結果所生的損害不負賠償責任,包括資料錯誤、官網封鎖使用者的連線,以及因使用者的使用方式所生的爭議。
在本工具之上建構的服務。 本專案的設計是在每位使用者自己的電腦上執行。若把它架設成集中式服務,或據以建構 agent、應用程式(包含 examples/ 內的範例),所有對官網的請求、資料用途與對使用者的聲明,由建構者自行負責。
給網站管理者。 若機關或網站管理者對本工具的存取方式有疑慮,或希望停止收錄、改用其他方式,請在 GitHub Issues 提出或來信 opensource@lawchat.com.tw,我們會盡速配合調整或移除該來源。