Skip to main content
Glama
fcukoksan
by fcukoksan

financial-law-mcp

日本の金融法令を取得する MCP サーバー。

Claude が金融規制の質問に回答する際、条文のハルシネーションを防止するために、e-Gov法令APIから原文を取得して裏取りさせます。

kentaroajisaka/tax-law-mcp をベースに、金融法令に特化してフォーク。

特徴

  • 法令取得 — e-Gov法令API v2 から条文をMarkdown形式で取得

  • 法令検索 — キーワードで法令を横断検索

  • 9ドメイン対応 — 金商法・資金決済法・銀行法・貸金業法・保険業法・信託法/信託業法・犯収法/出資法・会計規則・割賦販売法

  • 略称対応 — 「金商法」「業府令」「資決法」「犯収法」等の実務略称で指定可能

  • 段階的拡張 — ドメイン追加でさらに法令を拡張可能

Related MCP server: e-Gov Law MCP Server

MCP ツール

ツール

説明

get_law

e-Gov法令APIから条文を取得。法令名 + 条番号で指定

search_law

キーワードで法令を検索(全法令横断)

list_laws

対応法令・略称の一覧を表示

get_guideline

金融庁ガイドライン・監督指針を取得。HTML版はセクション検索対応

list_guidelines

対応ガイドライン・監督指針の一覧を表示

対応法令

金融商品取引法関連

法令

略称

金融商品取引法

金商法

金融商品取引法施行令

金商令

金融商品取引業等に関する内閣府令

業府令

企業内容等の開示に関する内閣府令

開示府令

有価証券の取引等の規制に関する内閣府令

取引規制府令

会計規則

法令

略称

財務諸表等の用語、様式及び作成方法に関する規則

財規

連結財務諸表の用語、様式及び作成方法に関する規則

連結財規

資金決済法関連

法令

略称

資金決済に関する法律

資決法 / 資金決済法

資金決済に関する法律施行令

資決令

銀行法関連

法令

略称

銀行法

銀法

銀行法施行令

銀行令

貸金業法関連

法令

略称

貸金業法

貸金法

貸金業法施行令

貸金令

保険業法関連

法令

略称

保険業法

保業法

保険業法施行令

保業令

信託法・信託業法関連

法令

略称

信託法

信託業法

その他

法令

略称

犯罪による収益の移転防止に関する法律

犯収法

出資の受入れ、預り金及び金利等の取締りに関する法律

出資法

割賦販売法

割販法

セットアップ

npx(推奨)

{
  "mcpServers": {
    "financial-law": {
      "command": "npx",
      "args": ["-y", "financial-law-mcp"]
    }
  }
}

Claude Code: claude mcp add financial-law -- npx -y financial-law-mcp

ローカル(ソースから)

git clone https://github.com/YOUR_USERNAME/financial-law-mcp.git
cd financial-law-mcp
npm install
npm run build
{
  "mcpServers": {
    "financial-law": {
      "command": "node",
      "args": ["/path/to/financial-law-mcp/dist/index.js"]
    }
  }
}

リモート(Vercel)

vercel deploy
{
  "mcpServers": {
    "financial-law": {
      "url": "https://<your-deployment>.vercel.app/mcp"
    }
  }
}

使い方の例

条文の取得

「金融商品取引法第2条を取得して」

get_law(law_name="金商法", article="2")

内閣府令の取得

「開示府令の第19条を見せて」

get_law(law_name="開示府令", article="19")

資金決済法の取得

「資金決済法第2条の5を取得して」

get_law(law_name="資決法", article="2の5")

法令検索

「暗号資産に関する法令を検索して」

search_law(keyword="暗号資産")

ハルシネーション防止ワークフロー

  1. Claude が金融規制の質問に仮回答を作成

  2. 引用した条文を get_law で取得

  3. 引用したガイドライン・監督指針を get_guideline で取得

  4. 実際の原文と仮回答を照合し、誤りがあれば修正

  5. 2-4 を収束するまで繰り返す(最大4ラウンド)

対応ガイドライン・監督指針

ガイドライン(留意事項)

ガイドライン

略称

形式

金融商品取引法等ガイドライン

金商GL

PDF

企業内容等開示ガイドライン

開示GL

PDF

フェア・ディスクロージャー・ルールガイドライン

FDGL

PDF

財務諸表等規則ガイドライン

財規GL

PDF

連結財務諸表規則ガイドライン

連結財規GL

PDF

監督指針(HTML版 — セクション検索対応)

監督指針

略称

金融商品取引業者等向けの総合的な監督指針

金商監督指針

主要行等向けの総合的な監督指針

主要行監督指針

中小・地域金融機関向けの総合的な監督指針

中小監督指針

保険会社向けの総合的な監督指針

保険監督指針

貸金業者向けの総合的な監督指針

貸金監督指針

信託会社等に関する総合的な監督指針

信託監督指針

監督指針の使い方

「金商業者等監督指針のIII-2-3を見せて」

get_guideline(guideline_name="金商監督指針", section="III-2-3")

今後の拡張予定

  • 金融庁ガイドライン・監督指針取得(Phase 2で実装済み)

  • 金融庁Q&A取得

  • 日証協自主規制規則

  • 東証上場規程

  • 金融庁パブリックコメント

  • PDF版ガイドラインのテキスト抽出

出典

謝辞

ライセンス

MIT

Available Tools

5 tools
get_guidelineA

金融庁のガイドライン・監督指針・Q&Aを取得する。

対応ガイドライン(略称→正式名称): 金商GL → 金融商品取引法等ガイドライン(PDF→テキスト抽出) 開示GL → 企業内容等開示ガイドライン(PDF→テキスト抽出) FDGL → フェア・ディスクロージャー・ルールガイドライン(PDF→テキスト抽出) 財規GL → 財務諸表等規則ガイドライン(PDF→テキスト抽出) 金商監督指針 → 金融商品取引業者等向けの総合的な監督指針(HTML) 主要行監督指針 → 主要行等向けの総合的な監督指針(HTML) 保険監督指針 → 保険会社向けの総合的な監督指針(HTML) 貸金監督指針 → 貸金業者向けの総合的な監督指針(HTML) 信託監督指針 → 信託会社等に関する総合的な監督指針(HTML) 定義QA → 金融商品取引法第2条に規定する定義に関するQ&A(PDF→テキスト抽出) インサイダーQA → インサイダー取引規制に関するQ&A(PDF→テキスト抽出)

HTML版・PDF版ともにセクション番号での検索に対応。

ParametersJSON Schema
NameRequiredDescriptionDefault
sectionNoセクション番号やキーワードで検索。例: "III-2-3", "29-1", "問2", "Q2"。ガイドラインの特定箇所を取得する場合に指定。
guideline_nameYesガイドライン名または略称。例: "金商監督指針", "金商GL", "開示GL", "定義QA", "インサイダーQA"

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries full burden. It discloses that PDF guidelines are text-extracted and that section search is supported, adding behavioral nuance beyond a simple retrieval. It does not explain the return format or error handling, but for a read-only getter, it provides reasonable transparency.

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

Conciseness4/5

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

The description is front-loaded with the purpose, followed by a structured list. Although lengthy, the bullet-style mapping and search capability note are each useful and directly support correct parameter usage. It is concise for the amount of information conveyed.

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

Completeness4/5

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

For a two-parameter getter with no output schema, the description covers the essential usage: supported resources, input naming conventions, and search behavior. It omits details like return format or queuing, but these are less critical given the tool's simple retrieval nature.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3. The description adds value by enumerating all valid guideline names and their formal equivalents, which goes beyond the schema's brief examples. This effectively serves as a dynamic enum for the guideline_name parameter.

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

Purpose5/5

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

The description clearly states the tool retrieves FSA guidelines, supervisory guidelines, and Q&A, using a specific verb (取得する) and resource. It also provides a comprehensive mapping of abbreviations to formal names, which distinguishes it from sibling tools like get_law and search_law that target legal texts.

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

Usage Guidelines4/5

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

The description lists all supported guideline types and notes that section search works for both HTML and PDF versions, giving clear context on when to use the tool. However, it does not explicitly mention exclusions or alternatives (e.g., when to use get_law instead), though the scope is obvious from the resource list.

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

get_lawA

日本の金融法令から特定の条文を取得する。e-Gov法令API v2を使用。

対応法令(略称→正式名称): 金商法→金融商品取引法, 金商令→金融商品取引法施行令, 業府令→金融商品取引業等に関する内閣府令, 開示府令→企業内容等の開示に関する内閣府令, 取引規制府令→有価証券の取引等の規制に関する内閣府令, 財規→財務諸表等の用語、様式及び作成方法に関する規則, 連結財規→連結財務諸表の用語、様式及び作成方法に関する規則, 資金決済法/資決法→資金決済に関する法律, 銀行法/銀法, 貸金法→貸金業法, 保業法→保険業法, 信託法, 信託業法, 犯収法→犯罪による収益の移転防止に関する法律, 出資法, 割販法→割賦販売法

法令名またはlaw_id(e-Gov法令ID)で指定可能。

ParametersJSON Schema
NameRequiredDescriptionDefault
itemNo号番号(省略時は項全体)。例: 1, 2
formatNo出力形式。"markdown"=条文全文(デフォルト), "toc"=目次のみ(トークン節約)
articleYes条文番号。例: "2", "21の2", "27の2", "第2条"
law_nameYes法令名、略称、またはe-Gov法令ID。例: "金融商品取引法", "金商法", "業府令", "資金決済法", "323AC0000000025"
paragraphNo項番号(省略時は条文全体)。例: 1, 2

TDQS

A3.8/5.0
Behavior3/5

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

注釈が一切ないため説明文が行動特性の説明を担う。e-Gov API v2の使用と対応法令の範囲は開示されているが、認証要件、レート制限、条文未存在時のエラーハンドリングなどは触れられていない。読み取り操作であることは「取得」から推測できるが、追加の行動情報は限定的。

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

Conciseness4/5

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

最初の一文で目的を明確にし、その後の対応法令リストは箇条書きで簡潔に整理されている。無駄な記述は少なく、必要な情報に絞られている。リストは長いが、実際に法令名を扱う上で必須の情報である。

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

Completeness3/5

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

出力スキーマが存在せず、注釈もないため、説明文が返却値やエラー時動作を補足する役割を期待されるが、formatパラメータが出力形式(markdown/toc)を説明しており、ある程度補われている。しかし、search_lawやget_guidelineとの関連性や、特定条文の取得に特化しているという文脈が明示されておらず、兄弟ツールとの関係性の説明が不足している。

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

Parameters4/5

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

スキーマの説明カバレッジは100%で、パラメータの構文や例が記載されている。説明文は特にlaw_nameについて、略称(金商法、業府令等)から正式名称への対応マップを提供し、さらにlaw_id形式の例(323AC0000000025)を示すことで、スキーマの記述を大きく補強している。

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

Purpose5/5

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

冒頭で「日本の金融法令から特定の条文を取得する」と明示されており、動詞とリソースが具体的で、e-Gov法令APIの利用も明記されている。兄弟ツールであるsearch_law(検索)、list_laws(一覧取得)、get_guideline(ガイドライン取得)と明確に区別される。

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

Usage Guidelines3/5

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

対応法令の略称とlaw_id指定方法が示され、利用時に参考になる。しかし、いつこのツールを使うべきか(例: 条文番号が分かっている場合)や、search_lawやlist_lawsを使うべき状況との使い分けは明示されておらず、暗黙的な使用法に留まる。

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

list_guidelinesA

対応している金融庁ガイドライン・監督指針の一覧を表示する。種別で絞り込み可能。

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNo種別で絞り込み。guideline=ガイドライン(留意事項), supervisory=監督指針, jimu=事務ガイドライン, qa=Q&A, all=全て
show_aliasesNotrueの場合、略称→正式名称の対応表も表示する

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It adds minimal context beyond the schema by noting '対応している' (supported) and that filtering by type is possible, but it does not describe the output structure, pagination, sorting, or whether the list is exhaustive. For a read-only listing tool, the safety profile is obvious, but other behavioral traits remain undisclosed.

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

Conciseness5/5

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

The description is two short sentences, front-loaded with the core purpose and a brief mention of filtering. Every word contributes; there is no repetition or filler, making it appropriately concise and easy to parse.

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

Completeness3/5

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

Given the tool's simplicity and full schema coverage, the description is adequate but not complete. It does not mention the output format or fields of the list, and the optional show_aliases behavior is only in the schema. However, for a basic listing tool, this level of detail may be sufficient, so it earns an average score.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description repeats the type filtering capability already in the schema but adds no new semantic detail. It does not elaborate on the show_aliases parameter or explain values beyond the enum descriptions, so the description adds minimal value over the schema.

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

Purpose5/5

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

The description clearly states the tool displays a list of supported FSA guidelines and supervisory notices, using specific verb '表示する' (display) and resource '一覧' (list). It also mentions filtering by type, which distinguishes it from sibling tools like get_law or search_law that likely retrieve specific documents or search full text.

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

Usage Guidelines3/5

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

The description implies when to use the tool (when you need a list of guidelines), but it does not explicitly distinguish it from list_laws or other alternatives. There is no mention of when not to use it or when to prefer a sibling tool, so the usage context is clear but lacks exclusions or alternative recommendations.

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

list_lawsA

このMCPサーバーが対応している金融法令の一覧を表示する。ドメイン(分野)で絞り込み可能。略称の一覧も表示可能。

ParametersJSON Schema
NameRequiredDescriptionDefault
domainNo表示するドメイン。省略時は全ドメイン。kinsho=金商法系, shikin=資金決済法系, ginko=銀行法系, kashikin=貸金業法系, hoken=保険業法系, shintaku=信託法系, hanshuu=犯収法等, kaikei=会計規則, kappu=割賦販売法系
show_aliasesNotrueの場合、略称→正式名称の対応表も表示する

TDQS

A4.2/5.0
Behavior4/5

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

No annotations are present, so the description carries the burden. It discloses the core behavior (listing laws), filtering capability, and alias display. It does not explicitly state read-only status, but as a list operation that is implied. The description is transparent enough for this simple tool.

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

Conciseness5/5

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

The description is two concise sentences in Japanese, front-loading the main purpose and then mentioning optional filtering and alias display. Every sentence earns its place with no redundancy.

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

Completeness4/5

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

For a simple list tool with no required parameters and well-documented schema, the description is sufficient. It doesn't describe the output format, but since it's a list and no output schema exists, this is acceptable. A minor gap is not noting the default all-domain behavior, though that is covered in the schema.

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

Parameters3/5

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

The schema has 100% parameter description coverage, with detailed explanations for 'domain' (including enum values) and 'show_aliases'. The description only restates these capabilities without adding new semantic details, so baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool lists financial laws supported by the server, with domain filtering and optional alias display. This distinguishes it from siblings like 'get_law', 'search_law', and 'list_guidelines', which target specific laws, search operations, or guidelines respectively.

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

Usage Guidelines4/5

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

The description provides clear context: use this to view the available laws, filter by domain, or show alias mappings. It does not explicitly name alternatives or exclusions, but the purpose is unambiguous given the sibling tools, so no additional guidance is needed.

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

search_lawA

法令をキーワードで検索する。法令名が分からない場合に使用。e-Gov法令API v2を使用。金融法令に限らず全法令を横断検索可能。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo取得件数(デフォルト10、最大20)
keywordYes検索キーワード。例: "金融商品取引", "暗号資産", "前払式支払手段", "インサイダー", "公開買付"
law_typeNo法令種別で絞り込み。Act=法律, CabinetOrder=政令(施行令), MinisterialOrdinance=府省令(内閣府令等)

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses the use of e-Gov API v2, indicating external dependency, and states the cross-search scope. It does not mention read-only nature, rate limits, or result behavior, but these are somewhat implied by the search action.

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

Conciseness5/5

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

Three concise sentences, front-loaded with the primary action. No redundant information.

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

Completeness4/5

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

For a simple search tool with 3 parameters and no output schema, the description covers purpose, usage scenario, scope, and API source. It lacks details on return format, but that is not critical given the simplicity. It is reasonably complete.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema documents all parameters: keyword, limit, law_type. The description adds context that the keyword is used when the law name is unknown, but does not add further parameter-level detail beyond the schema.

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

Purpose5/5

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

The description states '法令をキーワードで検索する' (search laws by keyword) with a specific verb and resource. It also clarifies the use case (when law name is unknown) and distinguishes it from siblings like get_law by indicating it is for unknown names, and mentions cross-searching all laws.

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

Usage Guidelines4/5

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

It explicitly says '法令名が分からない場合に使用' (use when law name is unknown), providing a clear condition for use. It also notes it covers all laws, not just financial, which helps select it over potentially narrower tools. However, it does not explicitly mention when not to use or name alternative tools.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv0.2.0
    • First observedget_guideline
    • First observedget_law
    • First observedlist_guidelines
    • First observedlist_laws
    • First observedsearch_law

TDQS

A4.1/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: get_law retrieves a specific legal provision, search_law performs keyword searches across laws, list_laws enumerates supported laws, get_guideline fetches specific guidelines, and list_guidelines shows available guidelines. There is no meaningful overlap between these operations.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern: get_law, search_law, list_laws, get_guideline, list_guidelines. The verbs (get/search/list) and nouns (law/guideline) are uniform and clearly indicate the action and resource type.

Tool Count5/5

Five tools is well-scoped for a domain-specific legal reference server. The set covers retrieval, search, and listing for both laws and guidelines without unnecessary duplication or bloat.

Completeness4/5

The server covers core read-only operations for both laws and guidelines, but lacks a search_guidelines tool. While users can list and retrieve guidelines, they cannot search guideline content by keyword, which is a minor but notable gap compared to the law side.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    A Model Context Protocol server that lets Claude (and any MCP client) cite actual Canadian financial-services regulations: OSFI, PIPEDA, FINTRAC, Quebec Law 25.
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server that enables LLMs to search and retrieve Japanese government subsidy and grant information via natural language, wrapping the Jグランツ public API.
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    MCP server for Japanese public business data, enabling AI agents to validate and look up corporate numbers, search bank/branch codes, and check national holidays. Runs locally with no telemetry; live corporate registry data requires a free NTA app ID.
    8
    MIT