ukagaka-doc-mcp 0.8.1 → 0.10.0

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.
Files changed (41) hide show
  1. package/NOTICE.md +1 -0
  2. package/README.md +3 -2
  3. package/SPEC.md +21 -7
  4. package/data/index.json +2734 -34
  5. package/dist/build-index.d.ts +1 -1
  6. package/dist/build-index.js +8 -1
  7. package/dist/build-index.js.map +1 -1
  8. package/dist/constants.d.ts +25 -1
  9. package/dist/constants.d.ts.map +1 -1
  10. package/dist/constants.js +26 -1
  11. package/dist/constants.js.map +1 -1
  12. package/dist/index-builder.js +1 -1
  13. package/dist/index-builder.js.map +1 -1
  14. package/dist/parser/markdown.d.ts +1 -1
  15. package/dist/parser/markdown.js +1 -1
  16. package/dist/parser/mdbook.d.ts +62 -0
  17. package/dist/parser/mdbook.d.ts.map +1 -0
  18. package/dist/parser/mdbook.js +180 -0
  19. package/dist/parser/mdbook.js.map +1 -0
  20. package/dist/parser/minato-docs-parser.d.ts +3 -26
  21. package/dist/parser/minato-docs-parser.d.ts.map +1 -1
  22. package/dist/parser/minato-docs-parser.js +26 -104
  23. package/dist/parser/minato-docs-parser.js.map +1 -1
  24. package/dist/parser/pasta-docs-parser.d.ts +11 -0
  25. package/dist/parser/pasta-docs-parser.d.ts.map +1 -0
  26. package/dist/parser/pasta-docs-parser.js +31 -0
  27. package/dist/parser/pasta-docs-parser.js.map +1 -0
  28. package/dist/search/engine.d.ts +2 -0
  29. package/dist/search/engine.d.ts.map +1 -1
  30. package/dist/search/engine.js +18 -17
  31. package/dist/search/engine.js.map +1 -1
  32. package/dist/server.d.ts.map +1 -1
  33. package/dist/server.js +8 -2
  34. package/dist/server.js.map +1 -1
  35. package/dist/tools/get-doc.js +1 -1
  36. package/dist/tools/get-doc.js.map +1 -1
  37. package/dist/tools/search-docs.js +3 -3
  38. package/dist/tools/search-docs.js.map +1 -1
  39. package/dist/types.d.ts +2 -1
  40. package/dist/types.d.ts.map +1 -1
  41. package/package.json +4 -3
package/NOTICE.md CHANGED
@@ -18,6 +18,7 @@ documentation sources, including:
18
18
  - 里々 docs (ukatech/satori-docs)
19
19
  - 蒼空(aosora) Wiki
20
20
  - 湊 docs (mizuki-yura/minato docs/src)
21
+ - Pasta docs (ekicyou/pasta book/src)
21
22
 
22
23
  This generated data is not re-licensed under the MIT License by this
23
24
  repository. It remains subject to the terms, permissions, and restrictions of
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  伺か(Ukagaka)の技術ドキュメントを検索する MCP サーバーです。
4
4
 
5
- UKADOC・SSP ヘルプ・YAYA docs・里々 docs・蒼空 Wiki・湊 docs のスナップショットを同梱しており、stdio モード(デフォルト)では**ランタイムで外部ネットワークにアクセスしません**。
5
+ UKADOC・SSP ヘルプ・YAYA docs・里々 docs・蒼空 Wiki・湊 docs・Pasta docs のスナップショットを同梱しており、stdio モード(デフォルト)では**ランタイムで外部ネットワークにアクセスしません**。
6
6
 
7
7
  ## 使い方
8
8
 
@@ -86,6 +86,7 @@ npx ukagaka-doc-mcp --http --host 0.0.0.0 --port 9000 # listen 先を変更
86
86
  | 里々 docs([satori-docs](https://github.com/ukatech/satori-docs)) | 里々スクリプト・ssu のリファレンス |
87
87
  | 蒼空(aosora) Wiki | 蒼空 shiori/GHOST 開発ガイド |
88
88
  | 湊 docs([minato](https://mizuki-yura.github.io/minato/)) | 湊(Minato)SHIORI のリファレンス・里々/YAYA からの移行ガイド |
89
+ | Pasta docs([pasta](https://ekicyou.github.io/pasta/)) | Pasta SHIORI の Pasta DSL 文法・Lua API・デバッグ・内部設計 |
89
90
 
90
91
  `data/index.json` として同梱済みです。週1回 CI が自動更新します。
91
92
 
@@ -144,4 +145,4 @@ npm tarball に含まれるファイル:
144
145
 
145
146
  実装コードは **MIT License**(`LICENSE` 参照)。
146
147
 
147
- 同梱の `data/index.json` は UKADOC・SSP ヘルプ・YAYA docs・里々 docs・蒼空 Wiki・湊 docs を元に生成した外部由来データです。MIT License での再ライセンスは行っていません。利用・再配布時は上流の権利関係を別途確認してください(`NOTICE.md` 参照)。
148
+ 同梱の `data/index.json` は UKADOC・SSP ヘルプ・YAYA docs・里々 docs・蒼空 Wiki・湊 docs・Pasta docs を元に生成した外部由来データです。MIT License での再ライセンスは行っていません。利用・再配布時は上流の権利関係を別途確認してください(`NOTICE.md` 参照)。
package/SPEC.md CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  ### 3.1 対象ソース
20
20
 
21
- 本サーバーは以下の6ソースのみを対象とする。
21
+ 本サーバーは以下の7ソースのみを対象とする。
22
22
 
23
23
  1. UKADOC (`docs/ukadoc/manual/`)
24
24
  2. SSP ヘルプ (`docs/ukadoc/ssphelp_src/`、`https://ssp.shillest.net/ukadoc/ssphelp/`)
@@ -26,6 +26,7 @@
26
26
  4. 里々 docs (`docs/satori-docs/`、`https://github.com/ukatech/satori-docs`)
27
27
  5. 蒼空 Wiki (`https://github.com/kanadelab/aosora-shiori/wiki`)
28
28
  6. 湊 docs (`docs/minato/docs/src/`、`https://github.com/mizuki-yura/minato`)
29
+ 7. Pasta docs (`docs/pasta/book/src/`、`https://github.com/ekicyou/pasta`)
29
30
 
30
31
  ### 3.2 非スコープ
31
32
 
@@ -48,7 +49,8 @@
48
49
  4. 里々 docs をローカルMarkdownからパースする
49
50
  5. 蒼空 Wiki をGitHub Wiki取得してパースする
50
51
  6. 湊 docs をローカルMarkdownからパースする
51
- 7. 6ソースを統合して `data/index.json` を生成する
52
+ 7. Pasta docs をローカルMarkdownからパースする
53
+ 8. 7ソースを統合して `data/index.json` を生成する
52
54
 
53
55
  ### 4.2 ランタイム
54
56
 
@@ -64,7 +66,7 @@
64
66
  ### 5.1 Source
65
67
 
66
68
  ```ts
67
- type Source = 'ukadoc' | 'ssp_help' | 'yaya_docs' | 'satori_docs' | 'aosora_wiki' | 'minato_docs';
69
+ type Source = 'ukadoc' | 'ssp_help' | 'yaya_docs' | 'satori_docs' | 'aosora_wiki' | 'minato_docs' | 'pasta_docs';
68
70
  ```
69
71
 
70
72
  ### 5.2 Category
@@ -103,7 +105,13 @@ type Category =
103
105
  | 'minato_grammar'
104
106
  | 'minato_talk'
105
107
  | 'minato_other'
106
- | 'minato_migration';
108
+ | 'minato_migration'
109
+ | 'pasta_startup'
110
+ | 'pasta_grammar'
111
+ | 'pasta_lua'
112
+ | 'pasta_debug'
113
+ | 'pasta_reference'
114
+ | 'pasta_internals';
107
115
  ```
108
116
 
109
117
  ### 5.3 DocEntry
@@ -129,7 +137,7 @@ type DocEntry = {
129
137
  - `content` は全文でなければならない
130
138
  - `content` は保存時に要約化してはならない
131
139
  - `url` はそのエントリの元ページまたは元セクションを指さなければならない
132
- - `rawUrl` は元のソースが Markdown のソース(YAYA docs・里々 docs・蒼空 Wiki・湊 docs)の全エントリに付与し、元の Markdown を指さなければならない。元のソースが HTML のソース(UKADOC・SSP ヘルプ)には付与してはならない
140
+ - `rawUrl` は元のソースが Markdown のソース(YAYA docs・里々 docs・蒼空 Wiki・湊 docs・Pasta docs)の全エントリに付与し、元の Markdown を指さなければならない。元のソースが HTML のソース(UKADOC・SSP ヘルプ)には付与してはならない
133
141
 
134
142
  ### 5.4 SearchEntry
135
143
 
@@ -217,6 +225,12 @@ type IndexFile = {
217
225
  - `path` は mdBook のソースディレクトリ `docs/src/` からの相対パスから拡張子 `.md` を除いたもの(例: `minato:include`、`minato:README`)とする
218
226
  - 対象ページは上流サイトの目次 `docs/src/SUMMARY.md` から決め、カテゴリは `path` の先頭要素から決める
219
227
 
228
+ #### Pasta docs
229
+
230
+ - 1ページ1エントリとし、`pasta:{path}` とする(例: `pasta:grammar/markers`)
231
+ - `path` は mdBook のソースディレクトリ `book/src/` からの相対パスから拡張子 `.md` を除いたもの(例: `pasta:introduction`、`pasta:lua/modules/enc`)とする
232
+ - 対象ページは上流サイトの目次 `book/src/SUMMARY.md` から決め、カテゴリは `path` の先頭要素から決める
233
+
220
234
  ## 7. 収集・正規化仕様
221
235
 
222
236
  ### 7.1 リンク正規化
@@ -304,7 +318,7 @@ Wikiリンクは取得前に正規化しなければならない。
304
318
 
305
319
  `npm run build:index` は、以下をすべて満たしたときのみ成功してよい。
306
320
 
307
- - 必須6ソースの取得・パースが完了している
321
+ - 必須7ソースの取得・パースが完了している
308
322
  - 重複 `id` が存在しない
309
323
  - 無効ページが含まれていない
310
324
  - 各ソースが空でない
@@ -328,7 +342,7 @@ Wikiリンクは取得前に正規化しなければならない。
328
342
 
329
343
  ### 9.4 部分成功の禁止
330
344
 
331
- - UKADOC だけ成功、SSP ヘルプ/YAYA/里々/蒼空/湊失敗のような部分成功を正規成果物として出力してはならない
345
+ - UKADOC だけ成功、SSP ヘルプ/YAYA/里々/蒼空/湊/Pasta失敗のような部分成功を正規成果物として出力してはならない
332
346
  - ビルドは fail-open ではなく fail-closed でなければならない
333
347
 
334
348
  ## 10. ランタイム仕様