building-standards-act-mcp 1.9.2 → 1.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -138,13 +138,13 @@ npm run build
138
138
 
139
139
  | ツール | 説明 |
140
140
  | ------------------- | --------------------------------------------------------------------------------------------------------------- |
141
- | `get_law` | 条番号を指定して条文を取得する。`format=text` は本文と参照一覧(`references`)を合わせて `max_chars`(既定 100,000)で制限し、本文の続きは `offset` で取得 |
142
- | `get_full_law` | 法令の全文を取得する。`max_chars`(既定 100,000)で区切り、続きは `offset` で取る |
141
+ | `get_law` | 条番号を指定して条文を取得する。`format=text` は本文と参照一覧(`references`)を合わせて `max_chars`(最大 24,000、既定 20,000)で制限。長い条の項・表の行は `find` で探し、返った `matches` と `offset` を使う。続きは `next_offset` を指定(続きは `find` を外す) |
142
+ | `get_full_law` | 法令の全文を取得する。`max_chars`(最大 48,000、既定 30,000)で区切り、続きは `offset` で取る |
143
143
  | `search_law` | 法令名(タイトル)で建築関連法令を検索する。略称マップと e-Gov API の両方を検索。条文本文の検索は `search_articles` |
144
144
  | `search_articles` | 条文本文をキーワードで全文検索する(e-Gov `/keyword`)。半角スペース区切りで AND 検索。AND・OR・NOT は演算子ではなく検索語として扱われる。全角スペースは半角に直して送る。法令名で絞り込み可。条番号は `get_law` で確定する |
145
- | `get_kokuji` | 建築基準法が技術基準を委任している告示の全文を取得する(省エネ告示は国交省 PDF から直接取得) |
145
+ | `get_kokuji` | 建築基準法が技術基準を委任している告示の全文を取得する(省エネ告示は国交省 PDF から直接取得)。`max_chars`(最大 48,000、既定 30,000)で区切り、続きは `offset` で取る |
146
146
  | `check_law_updates` | 法令の改正状況を e-Gov API で確認する。`since`(既定は 12 か月前)より後の改正だけを「改正あり」にする |
147
- | `get_laws_batch` | 複数条文を一括取得(最大20件)。`max_chars_per_item`(最大 30,000、既定 8,000)で切り詰め、`max_total_chars`(既定 40,000)を超える後続本文は省略。長い条(例: 建築基準法施行規則 第1条の3)は `get_law` で個別に取得 |
147
+ | `get_laws_batch` | 複数条文を一括取得(最大20件)。`max_chars_per_item`(最大 20,000、既定 8,000)で切り詰め、`max_total_chars`(最大 24,000、既定 20,000)を超える後続本文は省略。上限を超える指定は入力エラー。長い条(例: 建築基準法施行規則 第1条の3)は `get_law` で個別に取得 |
148
148
  | `verify_citation` | AIの回答に含まれる法令引用を検証する(条文存在確認・テキスト照合、最大10件) |
149
149
  | `suggest_related` | 指定した条文の関連法令・委任先・同法令内参照を自動抽出して提案する |
150
150
  | `analyze_article` | 条文の構造解析メタデータ(項数・号数・参照統計・プレビュー)をJSON形式で返す |
@@ -159,11 +159,20 @@ npm run build
159
159
  | `law_name` | 法令名(正式名称または略称) | `建築基準法`, `建基法` |
160
160
  | `article_number` | 条文番号(附則・別表にも対応) | `第20条`, `附則`, `別表第一` |
161
161
  | `format` | 出力形式(`text` または `structured`、省略時は `text`) | `structured` |
162
- | `max_chars` | 本文と参照一覧(`references`)を合わせた最大文字数(1,000〜500,000、既定 100,000)。`format=text` のみ | `8000` |
162
+ | `max_chars` | 本文と参照一覧(`references`)を合わせた最大文字数(1,000〜24,000、既定 20,000)。`format=text` のみ | `8000` |
163
163
  | `offset` | 本文内の開始位置(既定 0)。`format=text` のみ。続きは `next_offset` を指定 | `8000` |
164
+ | `find` | この条の本文から探す語(1〜100文字)。空白を無視し、全角・半角を区別せずに検索。一致を含む行から表示。`format=text` のみ適用 | `非常用の昇降機` |
164
165
 
165
166
  `offset` は見出し・参照・出典を含まない本文内の文字位置です。`get_laws_batch` の `next_offset` をそのまま指定できます。
166
167
 
168
+ `format=text` の上限は、`structuredContent` を含む応答全体が約5万字に収まる値です。`max_chars` の上限を超える指定は入力エラーになります。
169
+
170
+ 長い条の中の項・表の行を探すときは `find` に語を渡し、`offset` を自分で推測しないでください。検索語は `search_articles` と同じ空白正規化を通した後、本文とともにコードポイントごとに NFKC 正規化し、すべての空白(全角スペースを含む)を除いて照合します。`matches` は本文全体での一致開始位置の先頭20件、`matches_total` は一致の総件数です。位置は正規化前の元本文の UTF-16 文字位置で返します。
171
+
172
+ `find` と `offset` を併用すると、`offset` 以上の最初の一致を選びます。たとえば `offset=matches[1]` で2件目へ移動できます。該当する一致が後ろにない場合は最初の一致に戻ります。返る `offset` は選択した一致を含む行の先頭です。一致の終端が行頭から `max_chars` の余裕を除いた範囲に収まらない場合は、一致位置から表示します。ページ末尾は従来どおり改行を優先するため、改行や大量の空白をまたぐ一致は複数ページに分かれることがあります。続きは `find` を外し、返った `next_offset` をそのまま渡してください。
173
+
174
+ 一致がないときは「この条に『検索語』は見つかりませんでした。」と本文全体の文字数を返し、本文は返しません。`article.text` は空文字列、`matches` は空配列、`matches_total` は0、`next_offset` は `null` です。`format=structured` では `find`・`max_chars`・`offset` を適用しません。
175
+
167
176
  参照一覧はページ内の本文に現れる参照に絞ったうえで、本文と参照のJSONの長さの合計が `max_chars` に収まる順序どおりの先頭部分だけを表示し、表示が0件なら `article` の `references` キーを省略します。参照を省略した場合は `references_total` と `references_truncated: true`、表示件数の案内を返し、関連法令の一覧は `suggest_related` でも確認できます。
168
177
 
169
178
  #### `get_full_law`
@@ -171,8 +180,8 @@ npm run build
171
180
  | パラメータ | 説明 | 例 |
172
181
  | ----------- | --------------------------------------------- | ---------------------------- |
173
182
  | `law_name` | 法令名(正式名称または略称) | `建築基準法施行令`, `建基令` |
174
- | `max_chars` | 1 回に返す最大文字数(既定 100,000) | `50000` |
175
- | `offset` | 続きを取るときの開始位置(末尾の案内に出る値) | `100000` |
183
+ | `max_chars` | 1 回に返す最大文字数(1,000〜48,000、既定 30,000) | `30000` |
184
+ | `offset` | 続きを取るときの開始位置(末尾の案内に出る値) | `30000` |
176
185
 
177
186
  #### `search_law`
178
187
 
@@ -196,8 +205,8 @@ npm run build
196
205
  | パラメータ | 説明 | 例 |
197
206
  | ------------- | ------------------------------------- | ------------------------------ |
198
207
  | `kokuji_name` | 告示名 | `耐火構造の構造方法を定める件` |
199
- | `max_chars` | 1 回に返す最大文字数(既定 100,000) | `50000` |
200
- | `offset` | 続きを取るときの開始位置 | `100000` |
208
+ | `max_chars` | 1 回に返す最大文字数(1,000〜48,000、既定 30,000) | `30000` |
209
+ | `offset` | 続きを取るときの開始位置 | `30000` |
201
210
 
202
211
  #### `check_law_updates`
203
212
 
@@ -213,8 +222,10 @@ npm run build
213
222
  | パラメータ | 説明 | 例 |
214
223
  | ---------- | ---------------------------------------------------------------------- | --- |
215
224
  | `requests` | 取得対象の配列。各要素に `law_name`, `article_number`, `format` を指定 | — |
216
- | `max_chars_per_item` | 条文ごとの最大文字数(1,000〜30,000、既定 8,000)。構造化形式はJSONの長さを基準に項単位で切り詰め | `8000` |
217
- | `max_total_chars` | 応答全体のJSONの最大文字数(10,000〜500,000、既定 40,000)。超過する後続本文は省略 | `40000` |
225
+ | `max_chars_per_item` | 条文ごとの最大文字数(1,000〜20,000、既定 8,000)。構造化形式はJSONの長さを基準に項単位で切り詰め | `8000` |
226
+ | `max_total_chars` | 応答全体のJSONの最大文字数(10,000〜24,000、既定 20,000)。超過する後続本文は省略。上限を超える指定は入力エラー | `20000` |
227
+
228
+ 上限は、`structuredContent` を含む応答全体が約5万字に収まる値です。
218
229
 
219
230
  切り詰めたテキストの続きは、案内された `offset` を `get_law` に指定して取得します。本文を省略した結果は `omitted: true` と省略一覧で示します。取得の成功・失敗件数は本文の省略によって変わりません。
220
231
 
@@ -0,0 +1,5 @@
1
+ /** Find normalized matches in the original text's UTF-16 coordinates. */
2
+ export declare function findAllMatches(text: string, query: string): {
3
+ start: number;
4
+ end: number;
5
+ }[];
@@ -0,0 +1,31 @@
1
+ import { normalizeKeyword } from "./egov-client.js";
2
+ function normalizeCharacter(character) {
3
+ return character.normalize("NFKC").replace(/\s/g, "");
4
+ }
5
+ /** Find normalized matches in the original text's UTF-16 coordinates. */
6
+ export function findAllMatches(text, query) {
7
+ const needle = Array.from(normalizeKeyword(query), normalizeCharacter).join("");
8
+ if (needle.length === 0)
9
+ return [];
10
+ let normalized = "";
11
+ const starts = [];
12
+ const ends = [];
13
+ let offset = 0;
14
+ for (const character of text) {
15
+ const value = normalizeCharacter(character);
16
+ normalized += value;
17
+ for (let i = 0; i < value.length; i++) {
18
+ starts.push(offset);
19
+ ends.push(offset + character.length);
20
+ }
21
+ offset += character.length;
22
+ }
23
+ const matches = [];
24
+ let position = normalized.indexOf(needle);
25
+ while (position !== -1) {
26
+ matches.push({ start: starts[position], end: ends[position + needle.length - 1] });
27
+ position = normalized.indexOf(needle, position + needle.length);
28
+ }
29
+ return matches;
30
+ }
31
+ //# sourceMappingURL=text-find.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-find.js","sourceRoot":"","sources":["../../src/lib/text-find.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,SAAS,kBAAkB,CAAC,SAAiB;IAC3C,OAAO,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACxD,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,KAAa;IACxD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,kBAAkB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEnC,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,SAAS,IAAI,IAAI,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC5C,UAAU,IAAI,KAAK,CAAC;QACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC;IAC7B,CAAC;IAED,MAAM,OAAO,GAAqC,EAAE,CAAC;IACrD,IAAI,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;QACnF,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -3,7 +3,10 @@
3
3
  * - Error sanitization (Measure 5: hide internal details from client)
4
4
  * - Audit logging (Measure 6: log tool invocations and results)
5
5
  */
6
- export declare const DEFAULT_MAX_CHARS = 100000;
6
+ export declare const ARTICLE_DEFAULT_MAX_CHARS = 20000;
7
+ export declare const ARTICLE_MAX_CHARS_LIMIT = 24000;
8
+ export declare const TEXT_DEFAULT_MAX_CHARS = 30000;
9
+ export declare const TEXT_MAX_CHARS_LIMIT = 48000;
7
10
  /** Paginate UTF-16 text without cutting a surrogate pair. */
8
11
  export declare function paginateText(text: string, offset: number, maxChars: number): {
9
12
  text: string;
@@ -7,7 +7,10 @@ import { logger } from "./logger.js";
7
7
  import { recordToolCall } from "./metrics.js";
8
8
  import { LawNotFoundError, ArticleNotFoundError, KokujiNotFoundError, } from "./errors.js";
9
9
  import { EgovApiError } from "./errors.js";
10
- export const DEFAULT_MAX_CHARS = 100_000;
10
+ export const ARTICLE_DEFAULT_MAX_CHARS = 20_000;
11
+ export const ARTICLE_MAX_CHARS_LIMIT = 24_000;
12
+ export const TEXT_DEFAULT_MAX_CHARS = 30_000;
13
+ export const TEXT_MAX_CHARS_LIMIT = 48_000;
11
14
  function paginate(text, offset, maxChars, atLineBoundary) {
12
15
  const total_chars = text.length;
13
16
  if (offset >= total_chars && total_chars > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"tool-helpers.js","sourceRoot":"","sources":["../../src/lib/tool-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-helpers.js","sourceRoot":"","sources":["../../src/lib/tool-helpers.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  /** Must match package.json `version`; a unit test enforces this. */
2
- export declare const SERVER_VERSION = "1.9.2";
2
+ export declare const SERVER_VERSION = "1.10.1";
@@ -1,3 +1,3 @@
1
1
  /** Must match package.json `version`; a unit test enforces this. */
2
- export const SERVER_VERSION = "1.9.2";
2
+ export const SERVER_VERSION = "1.10.1";
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/lib/version.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/lib/version.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,MAAM,CAAC,MAAM,cAAc,GAAG,QAAQ,CAAC"}
package/dist/server.js CHANGED
@@ -15,16 +15,16 @@ const SERVER_NAME = "building-standards-act-mcp";
15
15
  const INSTRUCTIONS = `あなたは建築確認申請の法規照合アシスタントです。
16
16
 
17
17
  ## 利用可能なツール
18
- - get_law: 条番号を指定して条文を取得(例: 建築基準法 第20条、附則、別表第一)。format=text は本文と参照一覧(references)を合わせて max_chars(既定100,000)で制限し、本文の続きは offset で取得。参照の省略時は references_total と references_truncated で通知
18
+ - get_law: 条番号を指定して条文を取得(例: 建築基準法 第20条、附則、別表第一)。format=text は本文と参照一覧(references)を合わせて max_chars(1,000〜24,000、既定20,000)で制限し、本文の続きは offset で取得。参照の省略時は references_total と references_truncated で通知。長い条の中の項・表の行を探すときは find に語を渡し、返った matches と offset を使う。offset を自分で推測しない。続きを読むときは find を外し、next_offset をそのまま渡す。
19
19
  - 別表: 「別表第一」「別表第二」等で数値基準を含む別表を取得可能
20
20
  - 改正附則: 「附則(令和○年政令第○号)」で特定改正の経過措置を取得可能。法令番号は check_law_updates で確認
21
- - get_full_law: 法令全文を取得(例: 建築基準法施行令)
21
+ - get_full_law: 法令全文を取得(例: 建築基準法施行令)。max_chars(1,000〜48,000、既定30,000)で区切り、続きは offset で取得
22
22
  - search_law: 法令名(タイトル)を検索する。条文本文の検索には search_articles を使う
23
23
  - search_articles: 条文本文を検索する。半角スペース区切りで AND 検索。AND・OR・NOT は演算子ではなく検索語として扱われる。全角スペースは半角に直して送る。keyword 必須、law_title で法令名・略称による絞り込みが可能。条番号は返らないので get_law で確定する
24
- - get_kokuji: 告示の全文を国土交通省の告示データベース(PDF)から動的に取得する。正式名称またはキーワードで指定可能(例: 耐火構造の構造方法を定める件)。
24
+ - get_kokuji: 告示の全文を国土交通省の告示データベース(PDF)から動的に取得する。正式名称またはキーワードで指定可能(例: 耐火構造の構造方法を定める件)。max_chars(1,000〜48,000、既定30,000)で区切り、続きは offset で取得。
25
25
  ※ 国交省データベースに未収録の告示は取得できません。取得失敗時は類似告示を提案します
26
26
  - check_law_updates: 法令の改正状況を確認する(法令名指定で単体チェック、グループ指定でバッチチェック、show_historyで改正履歴表示)
27
- - get_laws_batch: 複数の法令・条文を一括取得する(最大20件、e-Govから条単位取得)。max_chars_per_item(1,000〜30,000、既定8,000)と max_total_chars(既定40,000)で応答量を制限。長い条(例: 建築基準法施行規則 第1条の3)は get_law で個別に取得
27
+ - get_laws_batch: 複数の法令・条文を一括取得する(最大20件、e-Govから条単位取得)。max_chars_per_item(1,000〜20,000、既定8,000)と max_total_chars(10,000〜24,000、既定20,000)で応答量を制限。上限を超える指定は入力エラー。長い条(例: 建築基準法施行規則 第1条の3)は get_law で個別に取得
28
28
  - verify_citation: AIの回答に含まれる法令引用を検証する(条文存在確認・テキスト照合、最大10件)
29
29
  - suggest_related: 指定した条文の関連法令・委任先・同法令内参照を自動抽出して提案する
30
30
  - analyze_article: 条文の構造解析メタデータ(項数・号数・参照統計・プレビュー)をJSON形式で返す
@@ -3,7 +3,7 @@ import { resolveLawId } from "../lib/law-resolver.js";
3
3
  import { getLawData } from "../lib/egov-client.js";
4
4
  import { parseFullLaw } from "../lib/egov-parser.js";
5
5
  import { LawNotFoundError } from "../lib/errors.js";
6
- import { DEFAULT_MAX_CHARS, paginateText, TOOL_ANNOTATIONS, wrapToolHandler, } from "../lib/tool-helpers.js";
6
+ import { TEXT_DEFAULT_MAX_CHARS, TEXT_MAX_CHARS_LIMIT, paginateText, TOOL_ANNOTATIONS, wrapToolHandler, } from "../lib/tool-helpers.js";
7
7
  const schema = {
8
8
  law_name: z
9
9
  .string()
@@ -13,9 +13,9 @@ const schema = {
13
13
  .number()
14
14
  .int()
15
15
  .min(1_000)
16
- .max(500_000)
17
- .default(DEFAULT_MAX_CHARS)
18
- .describe("1回に取得する最大文字数(1,000〜500,000)。省略時は100,000文字。"),
16
+ .max(TEXT_MAX_CHARS_LIMIT)
17
+ .default(TEXT_DEFAULT_MAX_CHARS)
18
+ .describe("1回に取得する最大文字数(1,000〜48,000)。省略時は30,000文字。"),
19
19
  offset: z
20
20
  .number()
21
21
  .int()
@@ -29,7 +29,7 @@ export function registerGetFullLawTool(server) {
29
29
  description: "法令の全文を取得する。条番号を指定せず法令全体のテキストを返す。",
30
30
  inputSchema: schema,
31
31
  annotations: TOOL_ANNOTATIONS,
32
- }, wrapToolHandler("get_full_law", async ({ law_name, max_chars = DEFAULT_MAX_CHARS, offset = 0, }) => {
32
+ }, wrapToolHandler("get_full_law", async ({ law_name, max_chars = TEXT_DEFAULT_MAX_CHARS, offset = 0, }) => {
33
33
  const resolved = await resolveLawId(law_name);
34
34
  if (!resolved) {
35
35
  throw new LawNotFoundError(law_name);
@@ -1 +1 @@
1
- {"version":3,"file":"get-full-law.js","sourceRoot":"","sources":["../../src/tools/get-full-law.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,gBAAgB,EAChB,eAAe,GAChB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,MAAM,GAAG;IACb,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,GAAG,CAAC,GAAG,CAAC;SACR,QAAQ,CACP,mCAAmC,CACpC;IACH,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,KAAK,CAAC;SACV,GAAG,CAAC,OAAO,CAAC;SACZ,OAAO,CAAC,iBAAiB,CAAC;SAC1B,QAAQ,CAAC,4CAA4C,CAAC;IACzD,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,OAAO,CAAC,CAAC,CAAC;SACV,QAAQ,CAAC,6CAA6C,CAAC;CAC3D,CAAC;AAEF,MAAM,UAAU,sBAAsB,CAAC,MAAiB;IACtD,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE,kCAAkC;QAC/C,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,gBAAgB;KAC9B,EACD,eAAe,CAAC,cAAc,EAAE,KAAK,EAAE,EACrC,QAAQ,EAAE,SAAS,GAAG,iBAAiB,EAAE,MAAM,GAAG,CAAC,GACpD,EAAE,EAAE;QACH,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAErD,MAAM,KAAK,GAAG;YACZ,IAAI,QAAQ,CAAC,KAAK,KAAK;YACvB,SAAS,QAAQ,CAAC,OAAO,EAAE;YAC3B,EAAE;YACF,QAAQ;YACR,EAAE;YACF,eAAe;SAChB,CAAC;QACF,IAAI,QAAQ,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;YACtC,KAAK,CAAC,IAAI,CACR,4CAA4C,CAC7C,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE9B,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;SACvF,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"get-full-law.js","sourceRoot":"","sources":["../../src/tools/get-full-law.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,YAAY,EACZ,gBAAgB,EAChB,eAAe,GAChB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,MAAM,GAAG;IACb,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,GAAG,CAAC,GAAG,CAAC;SACR,QAAQ,CACP,mCAAmC,CACpC;IACH,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,KAAK,CAAC;SACV,GAAG,CAAC,oBAAoB,CAAC;SACzB,OAAO,CAAC,sBAAsB,CAAC;SAC/B,QAAQ,CAAC,0CAA0C,CAAC;IACvD,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,OAAO,CAAC,CAAC,CAAC;SACV,QAAQ,CAAC,6CAA6C,CAAC;CAC3D,CAAC;AAEF,MAAM,UAAU,sBAAsB,CAAC,MAAiB;IACtD,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE,kCAAkC;QAC/C,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,gBAAgB;KAC9B,EACD,eAAe,CAAC,cAAc,EAAE,KAAK,EAAE,EACrC,QAAQ,EAAE,SAAS,GAAG,sBAAsB,EAAE,MAAM,GAAG,CAAC,GACzD,EAAE,EAAE;QACH,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAErD,MAAM,KAAK,GAAG;YACZ,IAAI,QAAQ,CAAC,KAAK,KAAK;YACvB,SAAS,QAAQ,CAAC,OAAO,EAAE;YAC3B,EAAE;YACF,QAAQ;YACR,EAAE;YACF,eAAe;SAChB,CAAC;QACF,IAAI,QAAQ,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;YACtC,KAAK,CAAC,IAAI,CACR,4CAA4C,CAC7C,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE9B,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;SACvF,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACJ,CAAC"}
@@ -6,7 +6,7 @@ import { extractPdfText } from "../lib/pdf-extractor.js";
6
6
  import { extractLatestAmendment } from "../lib/kokuji-amendment.js";
7
7
  import { searchLaws, getLawData } from "../lib/egov-client.js";
8
8
  import { parseFullLaw } from "../lib/egov-parser.js";
9
- import { DEFAULT_MAX_CHARS, paginateText, TOOL_ANNOTATIONS, wrapToolHandler, } from "../lib/tool-helpers.js";
9
+ import { TEXT_DEFAULT_MAX_CHARS, TEXT_MAX_CHARS_LIMIT, paginateText, TOOL_ANNOTATIONS, wrapToolHandler, } from "../lib/tool-helpers.js";
10
10
  const registry = new KokujiRegistry();
11
11
  const schema = {
12
12
  kokuji_name: z
@@ -17,9 +17,9 @@ const schema = {
17
17
  .number()
18
18
  .int()
19
19
  .min(1_000)
20
- .max(500_000)
21
- .default(DEFAULT_MAX_CHARS)
22
- .describe("1回に取得する最大文字数(1,000〜500,000)。省略時は100,000文字。"),
20
+ .max(TEXT_MAX_CHARS_LIMIT)
21
+ .default(TEXT_DEFAULT_MAX_CHARS)
22
+ .describe("1回に取得する最大文字数(1,000〜48,000)。省略時は30,000文字。"),
23
23
  offset: z
24
24
  .number()
25
25
  .int()
@@ -104,7 +104,7 @@ export function registerGetKokujiTool(server) {
104
104
  description: "建築基準法が技術基準を委任している告示の全文を取得する。国土交通省の告示データベース(PDF)から取得し、見つからない場合はe-Gov APIで検索を試みる。",
105
105
  inputSchema: schema,
106
106
  annotations: TOOL_ANNOTATIONS,
107
- }, wrapToolHandler("get_kokuji", async ({ kokuji_name, max_chars = DEFAULT_MAX_CHARS, offset = 0, }) => {
107
+ }, wrapToolHandler("get_kokuji", async ({ kokuji_name, max_chars = TEXT_DEFAULT_MAX_CHARS, offset = 0, }) => {
108
108
  const textResult = (text) => ({
109
109
  content: [{ type: "text", text: paginateText(text, offset, max_chars).text }],
110
110
  });
@@ -1 +1 @@
1
- {"version":3,"file":"get-kokuji.js","sourceRoot":"","sources":["../../src/tools/get-kokuji.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-kokuji.js","sourceRoot":"","sources":["../../src/tools/get-kokuji.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,12 @@
1
1
  import { z } from "zod";
2
2
  import { resolveLawId } from "../lib/law-resolver.js";
3
3
  import { fetchParsedArticle } from "../lib/article-fetcher.js";
4
+ import { findAllMatches } from "../lib/text-find.js";
4
5
  import { LawNotFoundError, ArticleNotFoundError } from "../lib/errors.js";
5
- import { DEFAULT_MAX_CHARS, paginateAtLineBoundary, TOOL_ANNOTATIONS, wrapToolHandler, } from "../lib/tool-helpers.js";
6
+ import { ARTICLE_DEFAULT_MAX_CHARS, ARTICLE_MAX_CHARS_LIMIT, paginateAtLineBoundary, TOOL_ANNOTATIONS, wrapToolHandler, } from "../lib/tool-helpers.js";
6
7
  import { parsedArticleSchema, structuredArticleSchema, } from "../lib/article-schemas.js";
8
+ const MAX_LISTED_MATCHES = 20;
9
+ const FIND_LINE_MARGIN = 100;
7
10
  const schema = {
8
11
  law_name: z
9
12
  .string()
@@ -21,15 +24,21 @@ const schema = {
21
24
  .number()
22
25
  .int()
23
26
  .min(1_000)
24
- .max(500_000)
25
- .default(DEFAULT_MAX_CHARS)
26
- .describe("本文と参照一覧(references)を合わせた最大文字数(1,000〜500,000)。省略時は100,000文字。format=text のみ適用。"),
27
+ .max(ARTICLE_MAX_CHARS_LIMIT)
28
+ .default(ARTICLE_DEFAULT_MAX_CHARS)
29
+ .describe("本文と参照一覧(references)を合わせた最大文字数(1,000〜24,000)。省略時は20,000文字。format=text のみ適用。"),
27
30
  offset: z
28
31
  .number()
29
32
  .int()
30
33
  .min(0)
31
34
  .default(0)
32
35
  .describe("本文の取得開始位置(0から始まる文字位置)。続きは案内された offset を指定。format=text のみ適用。"),
36
+ find: z
37
+ .string()
38
+ .min(1)
39
+ .max(100)
40
+ .optional()
41
+ .describe("この条の本文から探す語。指定すると最初の一致を含む行から本文を返し、一致位置の一覧を matches に入れる。空白は無視し、全角・半角の違いは区別しない。長い条の中の項・表の行を探すときに使い、offset を推測しない。format=text のみ適用。続きは find を外して next_offset を指定。"),
33
42
  };
34
43
  const outputSchema = {
35
44
  law_title: z.string(),
@@ -41,6 +50,9 @@ const outputSchema = {
41
50
  offset: z.number().optional(),
42
51
  next_offset: z.number().nullable().optional(),
43
52
  truncated: z.boolean().optional(),
53
+ find: z.string().optional(),
54
+ matches: z.array(z.number()).optional(),
55
+ matches_total: z.number().optional(),
44
56
  references_total: z.number().optional(),
45
57
  references_truncated: z.boolean().optional(),
46
58
  note: z.string().optional(),
@@ -54,11 +66,11 @@ const outputSchema = {
54
66
  export function registerGetLawTool(server) {
55
67
  server.registerTool("get_law", {
56
68
  title: "条文取得",
57
- description: "条番号を指定して法令の条文を取得する。附則・別表にも対応。略称・正式名称のいずれでも指定可能。format=structured で条→項→号の階層構造をJSON形式で取得可能。",
69
+ description: "条番号を指定して法令の条文を取得する。附則・別表にも対応。略称・正式名称のいずれでも指定可能。format=structured で条→項→号の階層構造をJSON形式で取得可能。format=text の上限は、structuredContent を含む応答全体が約5万字に収まる値。長い条の中の項・表の行は find で探し、offset を推測しない。",
58
70
  inputSchema: schema,
59
71
  annotations: TOOL_ANNOTATIONS,
60
72
  outputSchema,
61
- }, wrapToolHandler("get_law", async ({ law_name, article_number, format, max_chars = DEFAULT_MAX_CHARS, offset = 0, }) => {
73
+ }, wrapToolHandler("get_law", async ({ law_name, article_number, format, max_chars = ARTICLE_DEFAULT_MAX_CHARS, offset = 0, find, }) => {
62
74
  const resolved = await resolveLawId(law_name);
63
75
  if (!resolved) {
64
76
  throw new LawNotFoundError(law_name);
@@ -99,8 +111,23 @@ export function registerGetLawTool(server) {
99
111
  throw new ArticleNotFoundError(article_number, resolved.title);
100
112
  }
101
113
  const { references: articleReferences, ...articleWithoutReferences } = article;
102
- const page = paginateAtLineBoundary(article.text, offset, max_chars);
103
- const pageReferences = offset > 0 || page.next_offset !== null
114
+ const matches = find === undefined ? undefined : findAllMatches(article.text, find);
115
+ const match = matches?.find((item) => item.start >= offset) ?? matches?.[0];
116
+ const noMatch = matches?.length === 0;
117
+ let pageStart = offset;
118
+ if (match) {
119
+ const lineStart = article.text.lastIndexOf("\n", match.start - 1) + 1;
120
+ pageStart = match.end - lineStart > max_chars - FIND_LINE_MARGIN ? match.start : lineStart;
121
+ }
122
+ const page = noMatch
123
+ ? { text: "", total_chars: article.text.length, offset, next_offset: null }
124
+ : paginateAtLineBoundary(article.text, pageStart, max_chars);
125
+ const findInfo = matches === undefined ? {} : {
126
+ find,
127
+ matches: matches.slice(0, MAX_LISTED_MATCHES).map((item) => item.start),
128
+ matches_total: matches.length,
129
+ };
130
+ const pageReferences = noMatch ? undefined : page.offset > 0 || page.next_offset !== null
104
131
  ? articleReferences?.filter((ref) => page.text.includes(ref.raw_text))
105
132
  : articleReferences;
106
133
  let references = pageReferences;
@@ -118,14 +145,22 @@ export function registerGetLawTool(server) {
118
145
  }
119
146
  const referencesTotal = pageReferences?.length ?? 0;
120
147
  const referencesTruncated = (references?.length ?? 0) < referencesTotal;
121
- const lines = [
148
+ const lines = noMatch ? [
149
+ `【${resolved.title}】${article.article_title}`,
150
+ `この条に『${find}』は見つかりませんでした。(本文全体 ${page.total_chars} 文字。空白を無視し、全角・半角を区別せずに探しました)`,
151
+ ] : [
122
152
  `【${resolved.title}】${article.article_title}`,
123
153
  article.article_caption ? article.article_caption : "",
124
154
  "",
155
+ ...(matches === undefined ? [] : [
156
+ `(『${find}』の一致 ${matches.length} 件。offset=${page.offset} から表示。一致位置: ${findInfo.matches?.join(", ")})`,
157
+ ]),
125
158
  page.text,
126
159
  ].filter((line) => line !== undefined);
127
160
  if (page.next_offset !== null) {
128
- lines.push(`(続きがあります。offset=${page.next_offset} を指定して続きを取得してください。本文全体 ${page.total_chars} 文字)`);
161
+ lines.push(find === undefined
162
+ ? `(続きがあります。offset=${page.next_offset} を指定して続きを取得してください。本文全体 ${page.total_chars} 文字)`
163
+ : `(続きがあります。find を外し offset=${page.next_offset} を指定して続きを取得してください。本文全体 ${page.total_chars} 文字)`);
129
164
  }
130
165
  if (references && references.length > 0) {
131
166
  const refLabels = {
@@ -165,6 +200,7 @@ export function registerGetLawTool(server) {
165
200
  offset: page.offset,
166
201
  next_offset: page.next_offset,
167
202
  truncated: page.next_offset !== null,
203
+ ...findInfo,
168
204
  ...(referencesTruncated ? {
169
205
  references_total: referencesTotal,
170
206
  references_truncated: true,
@@ -1 +1 @@
1
- {"version":3,"file":"get-law.js","sourceRoot":"","sources":["../../src/tools/get-law.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-law.js","sourceRoot":"","sources":["../../src/tools/get-law.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,9 @@ import { paginateAtLineBoundary, TOOL_ANNOTATIONS, wrapToolHandler, } from "../l
6
6
  import { structuredArticleSchema } from "../lib/article-schemas.js";
7
7
  const MAX_REQUESTS = 20;
8
8
  const DEFAULT_MAX_CHARS_PER_ITEM = 8_000;
9
- const DEFAULT_MAX_TOTAL_CHARS = 40_000;
9
+ const MAX_CHARS_PER_ITEM_LIMIT = 20_000;
10
+ const DEFAULT_MAX_TOTAL_CHARS = 20_000;
11
+ const MAX_TOTAL_CHARS_LIMIT = 24_000;
10
12
  const schema = {
11
13
  requests: z
12
14
  .array(z.object({
@@ -26,16 +28,16 @@ const schema = {
26
28
  .number()
27
29
  .int()
28
30
  .min(1_000)
29
- .max(30_000)
31
+ .max(MAX_CHARS_PER_ITEM_LIMIT)
30
32
  .default(DEFAULT_MAX_CHARS_PER_ITEM)
31
- .describe("条文ごとの最大文字数(1,000〜30,000)。省略時は8,000文字。"),
33
+ .describe("条文ごとの最大文字数(1,000〜20,000)。省略時は8,000文字。"),
32
34
  max_total_chars: z
33
35
  .number()
34
36
  .int()
35
37
  .min(10_000)
36
- .max(500_000)
38
+ .max(MAX_TOTAL_CHARS_LIMIT)
37
39
  .default(DEFAULT_MAX_TOTAL_CHARS)
38
- .describe("応答全体のJSONの最大文字数(10,000〜500,000)。省略時は40,000文字。超過分の本文は省略。"),
40
+ .describe("応答全体のJSONの最大文字数(10,000〜24,000)。省略時は20,000文字。超過分の本文は省略。"),
39
41
  };
40
42
  const outputSchema = {
41
43
  total: z.number(),
@@ -69,7 +71,7 @@ const outputSchema = {
69
71
  export function registerGetLawsBatchTool(server) {
70
72
  server.registerTool("get_laws_batch", {
71
73
  title: "条文一括取得",
72
- description: "複数の法令・条文を一括取得する。各条文をe-Govから個別に条単位取得する。最大20件。長い条(例: 建築基準法施行規則 第1条の3)は get_law で個別に取得。",
74
+ description: "複数の法令・条文を一括取得する。各条文をe-Govから個別に条単位取得する。最大20件。上限は、structuredContent を含む応答全体が約5万字に収まる値。長い条(例: 建築基準法施行規則 第1条の3)は get_law で個別に取得。",
73
75
  inputSchema: schema,
74
76
  annotations: TOOL_ANNOTATIONS,
75
77
  outputSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"get-laws-batch.js","sourceRoot":"","sources":["../../src/tools/get-laws-batch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-laws-batch.js","sourceRoot":"","sources":["../../src/tools/get-laws-batch.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "building-standards-act-mcp",
3
- "version": "1.9.2",
3
+ "version": "1.10.1",
4
4
  "description": "MCP server for Japanese building regulations — fetches law text from e-Gov API v2 to prevent AI hallucination in building permit reviews",
5
5
  "repository": {
6
6
  "type": "git",