@djmima/pubmed-mcp 1.0.1 → 1.1.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.
- package/CHANGELOG.md +29 -1
- package/README.md +349 -326
- package/dist/auth.d.ts +5 -7
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +21 -15
- package/dist/auth.js.map +1 -1
- package/dist/cli/commands.d.ts.map +1 -1
- package/dist/cli/commands.js +3 -5
- package/dist/cli/commands.js.map +1 -1
- package/dist/http.d.ts +20 -0
- package/dist/http.d.ts.map +1 -0
- package/dist/http.js +86 -0
- package/dist/http.js.map +1 -0
- package/dist/index.d.ts +4 -4
- package/dist/index.js +21 -46
- package/dist/index.js.map +1 -1
- package/dist/pubmed/client.d.ts.map +1 -1
- package/dist/pubmed/client.js +49 -15
- package/dist/pubmed/client.js.map +1 -1
- package/dist/pubmed/types.d.ts +2 -1
- package/dist/pubmed/types.d.ts.map +1 -1
- package/dist/pubmed/types.js +2 -1
- package/dist/pubmed/types.js.map +1 -1
- package/dist/tools/convertArticleIds.d.ts.map +1 -1
- package/dist/tools/convertArticleIds.js +2 -1
- package/dist/tools/convertArticleIds.js.map +1 -1
- package/dist/tools/findRelatedArticles.d.ts +5 -0
- package/dist/tools/findRelatedArticles.d.ts.map +1 -1
- package/dist/tools/findRelatedArticles.js +10 -2
- package/dist/tools/findRelatedArticles.js.map +1 -1
- package/dist/tools/getArticleMetadata.d.ts.map +1 -1
- package/dist/tools/getArticleMetadata.js +2 -1
- package/dist/tools/getArticleMetadata.js.map +1 -1
- package/dist/tools/getCopyrightStatus.d.ts.map +1 -1
- package/dist/tools/getCopyrightStatus.js +2 -1
- package/dist/tools/getCopyrightStatus.js.map +1 -1
- package/dist/tools/getFullTextArticle.d.ts.map +1 -1
- package/dist/tools/getFullTextArticle.js +2 -1
- package/dist/tools/getFullTextArticle.js.map +1 -1
- package/dist/utils/ids.d.ts +17 -0
- package/dist/utils/ids.d.ts.map +1 -0
- package/dist/utils/ids.js +21 -0
- package/dist/utils/ids.js.map +1 -0
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,32 @@
|
|
|
5
5
|
|
|
6
6
|
## [Unreleased]
|
|
7
7
|
|
|
8
|
+
## [1.1.0] - 2026-11-04
|
|
9
|
+
|
|
10
|
+
### 変更
|
|
11
|
+
|
|
12
|
+
- **HTTP モードで `ALLOWED_SUBJECTS` を必須にしました。** 未設定または空のときは起動時に終了します。これまでは空のとき、認可サーバー(WorkOS AuthKit)で有効なトークンを取得できるユーザー全員が `/mcp` を使えました。
|
|
13
|
+
- HTTP モードで、`/mcp` への GET と DELETE に 405 を返すようにしました。ステートレスなサーバーには GET で開く SSE ストリームに送るものがなく、開いたままのストリームがサーバーインスタンスと Cloud Run のリクエストを占有していました。
|
|
14
|
+
|
|
15
|
+
### セキュリティ
|
|
16
|
+
|
|
17
|
+
- MCP サーバーが `.env` を起動時のカレントディレクトリから読み込んでいたのをやめ、パッケージ自身のルート(ソースからビルドした場合はリポジトリ直下)からだけ読み込むようにしました(CLI はもともとこの動作です)。MCP クライアントは開いているプロジェクトのディレクトリでサーバーを起動するため、そのプロジェクトの `.env` に `PORT` があると HTTP モードで起動し、`HTTPS_PROXY` と `NODE_TLS_REJECT_UNAUTHORIZED=0` があると NCBI への通信(API キーを含む)を第三者のプロキシが読み書きできました。
|
|
18
|
+
- ID を受け取るツール(`get_article_metadata`、`find_related_articles`、`get_copyright_status`、`get_full_text_article`、`convert_article_ids`)で、1 つの値に 1 つの ID だけを受け付けるようにしました。NCBI はカンマを ID の区切りとして扱うため、`"1,2,3"` のような値で 1 回あたりの上限を超える件数を取得できました。上限のなかった `find_related_articles` の `pmids` も 200 件までにしました。
|
|
19
|
+
- `lookup_article_by_citation` で、引用の各項目に含まれる `|` と改行を空白に置き換えるようにしました。どちらも ECitMatch の区切り文字なので、項目がずれたり別の引用として送られたりして、結果が別の引用に対応づけられるおそれがありました。
|
|
20
|
+
- NCBI へのリクエストに 60 秒のタイムアウトを設けました。応答のない接続で、ツールの呼び出し(HTTP モードではクライアントのリクエスト)が止まったままになることがなくなります。
|
|
21
|
+
- NCBI へのリクエストがリダイレクトされたときは、HTTPS で `*.ncbi.nlm.nih.gov` に向かうものだけをたどるようにしました。API キーはクエリ文字列に含まれ、リダイレクト先にも引き継がれます。
|
|
22
|
+
- エラーメッセージの中の API キーは、NCBI が返した本文のどこに現れても伏せるようにしました。ネットワークエラーには、API キーを含む axios のエラーオブジェクトを付けないようにしました。
|
|
23
|
+
- HTTP モードで、`exp` と `sub` のないアクセストークンを拒否するようにしました。
|
|
24
|
+
- HTTP モードで、リクエスト本文の JSON をトークンの検証後に解析するようにしました。不正な形式や大きすぎる本文などのエラーには、スタックトレースを含む HTML ではなく JSON を返し、`X-Powered-By` ヘッダーも送らないようにしました。Docker イメージでは `NODE_ENV=production` を設定し、依存パッケージのインストールスクリプトを実行しないようにしました。
|
|
25
|
+
- `@modelcontextprotocol/sdk`、`axios`、`express` の最低バージョンを、既知の脆弱性の修正を含むバージョンに上げました。
|
|
26
|
+
- GitHub Actions のアクションをコミット SHA で固定し、`actions/checkout` が認証情報を `.git` に残さないようにしました。
|
|
27
|
+
|
|
28
|
+
## [1.0.2] - 2026-11-03
|
|
29
|
+
|
|
30
|
+
### 変更
|
|
31
|
+
|
|
32
|
+
- README を英語にしました。日本語版は `README_ja.md` に移し、両方の冒頭に npm のバージョン・パッケージサイズ・ライセンス・Node.js のバージョン・CI のバッジと、言語の切り替えリンクを付けました。
|
|
33
|
+
|
|
8
34
|
## [1.0.1] - 2026-11-01
|
|
9
35
|
|
|
10
36
|
### 変更
|
|
@@ -23,6 +49,8 @@ npm パッケージ [`@djmima/pubmed-mcp`](https://www.npmjs.com/package/@djmima
|
|
|
23
49
|
- 同じツールをシェルから実行する `pubmed` CLI と、エージェント向けの Skill(`skills/pubmed-cli`)
|
|
24
50
|
- MIT License
|
|
25
51
|
|
|
26
|
-
[Unreleased]: https://github.com/DJMIMA/PubMed_MCP/compare/v1.0
|
|
52
|
+
[Unreleased]: https://github.com/DJMIMA/PubMed_MCP/compare/v1.1.0...HEAD
|
|
53
|
+
[1.1.0]: https://github.com/DJMIMA/PubMed_MCP/compare/v1.0.2...v1.1.0
|
|
54
|
+
[1.0.2]: https://github.com/DJMIMA/PubMed_MCP/compare/v1.0.1...v1.0.2
|
|
27
55
|
[1.0.1]: https://github.com/DJMIMA/PubMed_MCP/compare/v1.0.0...v1.0.1
|
|
28
56
|
[1.0.0]: https://github.com/DJMIMA/PubMed_MCP/releases/tag/v1.0.0
|