lit-forge-mcp 0.14.4 → 0.15.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/README.md CHANGED
@@ -8,7 +8,9 @@
8
8
 
9
9
  Claude Desktop / Claude Code / Cursor など、MCP に対応した任意の AI クライアントで動作します。
10
10
 
11
- > **最新版ハイライト(v0.14.0)**: ホワイトハウス OMB/OIRA **PFEI (Principal Federal Economic Indicators) Schedule** を統合し、BLS 三大指標(雇用統計・CPI・PPI)の **発表予定** が自動取得対応に。あわせて `get_us_macro_latest` 4 → 7 系列へ拡張(コア CPI / コア PPI / 平均時給を追加)。
11
+ > **最新版ハイライト(v0.15.0)**: `get_economic_release_pulse` **DOL/ETA 新規失業保険申請件数**(週次・毎週木 08:30 ET)と **S&P Global PMI 速報**(製造業/サービス業 flash, 09:45 ET)を追加し、従来取りこぼしていた網羅性の穴を解消。
12
+ >
13
+ > **v0.14.0**: ホワイトハウス OMB/OIRA の **PFEI (Principal Federal Economic Indicators) Schedule** を統合し、BLS 三大指標(雇用統計・CPI・PPI)の **発表予定** が自動取得対応に。あわせて `get_us_macro_latest` を 4 → 7 系列へ拡張(コア CPI / コア PPI / 平均時給を追加)。
12
14
 
13
15
  Claude / GPT / Cursor との対話のなかで、たとえば次のような問いを 1 ターンで返せます:
14
16
 
@@ -62,7 +64,7 @@ Claude / GPT / Cursor との対話のなかで、たとえば次のような問
62
64
  | ツール名 | 説明 |
63
65
  |---|---|
64
66
  | `get_economic_events_today` | 当日 or 今週の経済イベント(FOMC・日銀金融政策決定会合・米雇用統計・CPI・GDP・中国 PMI 等)を重要度付きで返す。`category` で `macro` / `policy` に絞り込み可能。期間イベント(ジャクソンホール会議等)は `endDate` で複数日対応。半年分を手動キュレーション |
65
- | `get_economic_release_pulse` | **6 公式機関の発表予定を実取得**: BEA / NY 連銀 / FRB / **BLS(PFEI 経由)** / 内閣府 / 日銀 のカレンダーを並列取得し、本日・今週・今月の経済指標リリース予定を統合して返す。BLS 三大指標の発表予定は v0.14.0 でホワイトハウス OMB/OIRA PFEI Schedule 統合により対応 |
67
+ | `get_economic_release_pulse` | **公式機関の発表予定を実取得**: BEA / NY 連銀 / FRB / **BLS(PFEI 経由)** / **DOL/ETA(新規失業保険申請件数)** / **S&P Global(製造業・サービス業 PMI 速報)** / 内閣府 / 日銀 のカレンダーを並列取得し、本日・今週・今月の経済指標リリース予定を統合して返す。BLS 三大指標は v0.14.0 PFEI Schedule 統合、DOL/ETA・S&P Global v0.15.0 で追加(前者は木曜計算 + 祝日補正、後者は公式カレンダー手転記) |
66
68
  | `get_us_macro_latest` | **米マクロ 7 系列の最新発表値**: 雇用統計・失業率・CPI・コア CPI・PPI・コア PPI・平均時給 を BLS Public Data API v2 から 1 リクエストで取得。値 + 前月比 + 前年同月比を返す。API key 不要・無認証 1 日 25 リクエスト・6 時間キャッシュ |
67
69
 
68
70
  ### 地政学 — 2 ツール
@@ -4,6 +4,8 @@ import { describe, it, expect } from "vitest";
4
4
  import { parseCaoDate, parseCaoTime, parseCaoGdpTable, } from "../economic-release-pulse/adapters/cao.js";
5
5
  import { parseEmpireStateTable } from "../economic-release-pulse/adapters/nyfed.js";
6
6
  import { parseG17Releases } from "../economic-release-pulse/adapters/frb.js";
7
+ import { computeJoblessClaimsReleases } from "../economic-release-pulse/adapters/dol-eta.js";
8
+ import { spGlobalPmiToReleaseEvents } from "../economic-release-pulse/adapters/sp-global-pmi.js";
7
9
  import { jstParts, jstToday, jstDatePlus, isUsEasternDst, etToJst, } from "../economic-release-pulse/util.js";
8
10
  describe("parseCaoDate", () => {
9
11
  it("和暦括弧・曜日付きの内閣府形式をパースする", () => {
@@ -201,4 +203,63 @@ and December 16.
201
203
  expect(parseG17Releases("<p>no schedule here</p>")).toEqual([]);
202
204
  });
203
205
  });
206
+ describe("computeJoblessClaimsReleases", () => {
207
+ it("通常週は木曜 08:30 ET を JST に変換して返す(DST 期間 → 21:30 同日)", () => {
208
+ // 2026-05-21 は木曜(Memorial Day 前週で祝日補正なし)。
209
+ const events = computeJoblessClaimsReleases("2026-05-18", "2026-05-24");
210
+ expect(events).toEqual([
211
+ {
212
+ date: "2026-05-21",
213
+ time: "21:30",
214
+ country: "US",
215
+ name: "米 新規失業保険申請件数",
216
+ source: "DOL/ETA",
217
+ sourceUrl: "https://www.dol.gov/ui/data.pdf",
218
+ },
219
+ ]);
220
+ });
221
+ it("標準時(冬)は +14h で 22:30 JST 同日になる", () => {
222
+ // 2026-01-08 は木曜(標準時期間)。
223
+ const events = computeJoblessClaimsReleases("2026-01-05", "2026-01-11");
224
+ expect(events).toHaveLength(1);
225
+ expect(events[0]).toMatchObject({ date: "2026-01-08", time: "22:30" });
226
+ });
227
+ it("月内の全木曜を返す", () => {
228
+ // 2026-05 の木曜: 7 / 14 / 21 / 28。
229
+ const events = computeJoblessClaimsReleases("2026-05-01", "2026-05-31");
230
+ expect(events.map((e) => e.date)).toEqual([
231
+ "2026-05-07",
232
+ "2026-05-14",
233
+ "2026-05-21",
234
+ "2026-05-28",
235
+ ]);
236
+ });
237
+ it("感謝祭週は祝日オーバーライドで前日水曜に前倒しされる", () => {
238
+ // 2026-11-26(木・感謝祭)→ 2026-11-25(水)。標準時のため 22:30 JST。
239
+ const events = computeJoblessClaimsReleases("2026-11-23", "2026-11-29");
240
+ expect(events).toHaveLength(1);
241
+ expect(events[0]).toMatchObject({ date: "2026-11-25", time: "22:30" });
242
+ });
243
+ });
244
+ describe("spGlobalPmiToReleaseEvents", () => {
245
+ it("flash 発表日を製造業速報・サービス業速報の 2 件に展開する(09:45 ET → 22:45 JST 同日)", () => {
246
+ const events = spGlobalPmiToReleaseEvents();
247
+ // 確認済みの 2026-05-21 分(製造業 + サービス業)を検証。
248
+ const may21 = events.filter((e) => e.date === "2026-05-21");
249
+ expect(may21).toHaveLength(2);
250
+ expect(may21.map((e) => e.name).sort()).toEqual([
251
+ "米 サービス業PMI(速報)",
252
+ "米 製造業PMI(速報)",
253
+ ]);
254
+ for (const e of may21) {
255
+ expect(e).toMatchObject({
256
+ date: "2026-05-21",
257
+ time: "22:45",
258
+ country: "US",
259
+ source: "S&P Global",
260
+ sourceUrl: "https://www.pmi.spglobal.com/",
261
+ });
262
+ }
263
+ });
264
+ });
204
265
  //# sourceMappingURL=economic-release-pulse.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"economic-release-pulse.test.js","sourceRoot":"","sources":["../../../src/lib/__tests__/economic-release-pulse.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"economic-release-pulse.test.js","sourceRoot":"","sources":["../../../src/lib/__tests__/economic-release-pulse.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ReleaseAdapter, ReleaseEvent } from "../types.js";
2
+ export declare function computeJoblessClaimsReleases(fromEtYmd: string, toEtYmd: string): ReleaseEvent[];
3
+ export declare const dolEtaAdapter: ReleaseAdapter;
@@ -0,0 +1,77 @@
1
+ // DOL/ETA 新規失業保険申請件数アダプタ(v0.15.0 新設)。
2
+ //
3
+ // 米労働省 ETA(Employment and Training Administration)が毎週木曜 08:30 ET に
4
+ // 公表する Unemployment Insurance Weekly Claims(新規失業保険申請件数)の発表予定を返す。
5
+ // 発表元は BLS ではなく DOL/ETA で、pulse の既存アダプタ(BEA/NY 連銀/FRB/BLS(PFEI)/内閣府/日銀)の
6
+ // いずれもカバーしておらず、網羅性の穴になっていた(2026-05-21 取りこぼし)。
7
+ //
8
+ // 設計:
9
+ // - 週次・毎週木曜という規則性が高いため、PFEI のような長大な転記データではなく
10
+ // 「木曜を計算で生成」する方式(HTTP なし・常時成功)。
11
+ // - DOL の運用上、木曜が連邦祝日に当たる週は発表日がずれる(感謝祭週は前日水曜へ前倒し等)。
12
+ // その例外のみ JOBLESS_CLAIMS_OVERRIDES で補正する。
13
+ // - 08:30 ET → JST(DST 期間 21:30 / 標準時 22:30、同日内)は既存 etToJst を再利用。
14
+ import { etToJst, jstDatePlus } from "../util.js";
15
+ // 新規失業保険申請件数の公表時刻(ET)。
16
+ const RELEASE_TIME_ET = "08:30";
17
+ // 一次ソース(毎週の News Release PDF)。
18
+ const DOL_CLAIMS_URL = "https://www.dol.gov/ui/data.pdf";
19
+ // 連邦祝日で木曜発表がずれる週のオーバーライド。
20
+ // キー = 通常の木曜(ET 日付)、値 = 実際の発表日(ET 日付)。
21
+ // DOL 運用: 「木曜が連邦祝日に当たる週」は発表日が変わる。
22
+ // ⚠️ 半年に 1 回 DOL 公式日程(https://oui.doleta.gov/unemploy/claims.asp)で要確認・追記。
23
+ const JOBLESS_CLAIMS_OVERRIDES = {
24
+ // 感謝祭(4th Thu = 2026-11-26、連邦祝日)週は前日水曜に前倒し公表。
25
+ "2026-11-26": "2026-11-25",
26
+ };
27
+ function ymdToUtc(ymdStr) {
28
+ const [y, m, d] = ymdStr.split("-").map(Number);
29
+ return new Date(Date.UTC(y, m - 1, d));
30
+ }
31
+ function utcToYmd(dt) {
32
+ return dt.toISOString().slice(0, 10);
33
+ }
34
+ // [fromEtYmd, toEtYmd](ET 日付・両端含む)の範囲で、新規失業保険申請件数の
35
+ // 発表予定を ReleaseEvent[] に展開する純関数(テスト用 export)。
36
+ // 各週の木曜を生成し、祝日オーバーライドを適用して実際の発表日に補正する。
37
+ export function computeJoblessClaimsReleases(fromEtYmd, toEtYmd) {
38
+ const from = ymdToUtc(fromEtYmd);
39
+ const to = ymdToUtc(toEtYmd);
40
+ const out = [];
41
+ // オーバーライドで前後にずれた発表日も拾えるよう、開始を 1 週前にパディング。
42
+ const cursor = new Date(from);
43
+ cursor.setUTCDate(cursor.getUTCDate() - 7);
44
+ // 最初の木曜(getUTCDay: 0=日..4=木..6=土)まで進める。
45
+ cursor.setUTCDate(cursor.getUTCDate() + ((4 - cursor.getUTCDay() + 7) % 7));
46
+ // to から十分後ろまで木曜を走査(オーバーライドの後ろずれにも対応)。
47
+ const scanEnd = new Date(to);
48
+ scanEnd.setUTCDate(scanEnd.getUTCDate() + 7);
49
+ while (cursor <= scanEnd) {
50
+ const thursdayEtYmd = utcToYmd(cursor);
51
+ const actualEtYmd = JOBLESS_CLAIMS_OVERRIDES[thursdayEtYmd] ?? thursdayEtYmd;
52
+ const actual = ymdToUtc(actualEtYmd);
53
+ if (actual >= from && actual <= to) {
54
+ const { date, time } = etToJst(actualEtYmd, RELEASE_TIME_ET);
55
+ out.push({
56
+ date,
57
+ time,
58
+ country: "US",
59
+ name: "米 新規失業保険申請件数",
60
+ source: "DOL/ETA",
61
+ sourceUrl: DOL_CLAIMS_URL,
62
+ });
63
+ }
64
+ cursor.setUTCDate(cursor.getUTCDate() + 7);
65
+ }
66
+ return out;
67
+ }
68
+ export const dolEtaAdapter = {
69
+ key: "dol-eta",
70
+ label: "DOL/ETA(新規失業保険申請件数・週次)",
71
+ fetchEvents: async () => {
72
+ // pulse 側が today/week でフィルタするため、現在を中心に広めの窓で計算する。
73
+ const now = new Date();
74
+ return computeJoblessClaimsReleases(jstDatePlus(-10, now), jstDatePlus(21, now));
75
+ },
76
+ };
77
+ //# sourceMappingURL=dol-eta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dol-eta.js","sourceRoot":"","sources":["../../../../src/lib/economic-release-pulse/adapters/dol-eta.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ReleaseAdapter, ReleaseEvent } from "../types.js";
2
+ export declare function spGlobalPmiToReleaseEvents(): ReleaseEvent[];
3
+ export declare const spGlobalPmiAdapter: ReleaseAdapter;
@@ -0,0 +1,41 @@
1
+ // S&P Global 米 PMI 速報(flash)アダプタ(v0.15.0 新設)。
2
+ //
3
+ // 製造業・サービス業の flash PMI 発表予定を返す。S&P Global は民間データ会社で
4
+ // 官公庁カレンダー実取得の対象外だったため pulse の網羅性の穴になっていた。
5
+ // PFEI アダプタと同様、スクレイピングせず静的キュレ済みデータ
6
+ // (src/lib/sp-global-pmi-schedule-data.ts) を ReleaseEvent[] に展開する。
7
+ // HTTP fetch を行わないためキャッシュ不要・常に成功扱い。
8
+ import { etToJst } from "../util.js";
9
+ import { SP_GLOBAL_PMI_SCHEDULE } from "../../sp-global-pmi-schedule-data.js";
10
+ function ymd(year, month, day) {
11
+ return `${year}-${String(month).padStart(2, "0")}-${String(day).padStart(2, "0")}`;
12
+ }
13
+ // flash 発表 1 件を「製造業速報」「サービス業速報」の 2 イベントに展開する。
14
+ // 注: S&P Global の "Services" は ISM の「非製造業」とは別系列。混同回避のため
15
+ // サービス業表記にする。総合(Composite)速報は需要を見て後追加。
16
+ const PMI_NAMES = ["米 製造業PMI(速報)", "米 サービス業PMI(速報)"];
17
+ // 静的スケジュールを ReleaseEvent[] に展開する純関数(テスト用 export)。
18
+ export function spGlobalPmiToReleaseEvents() {
19
+ const out = [];
20
+ const { flashReleases, releaseTimeEt, sourceUrl } = SP_GLOBAL_PMI_SCHEDULE;
21
+ for (const r of flashReleases) {
22
+ const { date, time } = etToJst(ymd(r.year, r.month, r.day), releaseTimeEt);
23
+ for (const name of PMI_NAMES) {
24
+ out.push({
25
+ date,
26
+ time,
27
+ country: "US",
28
+ name,
29
+ source: "S&P Global",
30
+ sourceUrl,
31
+ });
32
+ }
33
+ }
34
+ return out;
35
+ }
36
+ export const spGlobalPmiAdapter = {
37
+ key: "sp-global-pmi",
38
+ label: "S&P Global(米 製造業/サービス業 PMI 速報)",
39
+ fetchEvents: async () => spGlobalPmiToReleaseEvents(),
40
+ };
41
+ //# sourceMappingURL=sp-global-pmi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sp-global-pmi.js","sourceRoot":"","sources":["../../../../src/lib/economic-release-pulse/adapters/sp-global-pmi.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,EAAE;AACF,oDAAoD;AACpD,2CAA2C;AAC3C,mCAAmC;AACnC,mEAAmE;AACnE,oCAAoC;AAGpC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAE9E,SAAS,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,GAAW;IACnD,OAAO,GAAG,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;AACrF,CAAC;AAED,8CAA8C;AAC9C,wDAAwD;AACxD,2CAA2C;AAC3C,MAAM,SAAS,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAU,CAAC;AAE9D,kDAAkD;AAClD,MAAM,UAAU,0BAA0B;IACxC,MAAM,GAAG,GAAmB,EAAE,CAAC;IAC/B,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,sBAAsB,CAAC;IAC3E,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,CAAC;QAC3E,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI;gBACJ,IAAI;gBACJ,OAAO,EAAE,IAAI;gBACb,IAAI;gBACJ,MAAM,EAAE,YAAY;gBACpB,SAAS;aACV,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAmB;IAChD,GAAG,EAAE,eAAe;IACpB,KAAK,EAAE,gCAAgC;IACvC,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC,0BAA0B,EAAE;CACtD,CAAC"}
@@ -8,6 +8,8 @@ import { bojAdapter } from "./adapters/boj.js";
8
8
  import { nyfedAdapter } from "./adapters/nyfed.js";
9
9
  import { frbAdapter } from "./adapters/frb.js";
10
10
  import { pfeiAdapter } from "./adapters/pfei.js";
11
+ import { dolEtaAdapter } from "./adapters/dol-eta.js";
12
+ import { spGlobalPmiAdapter } from "./adapters/sp-global-pmi.js";
11
13
  // 登録アダプタ。新ソース追加時はここに 1 行足す。
12
14
  // 次サイクル候補: 総務省統計局(日 CPI)、FOMC。
13
15
  const ADAPTERS = [
@@ -17,6 +19,8 @@ const ADAPTERS = [
17
19
  nyfedAdapter,
18
20
  frbAdapter,
19
21
  pfeiAdapter,
22
+ dolEtaAdapter,
23
+ spGlobalPmiAdapter,
20
24
  ];
21
25
  // date(YYYY-MM-DD) が [from, to] の範囲内か(文字列比較で OK)。
22
26
  function inRange(date, from, to) {
@@ -1 +1 @@
1
- {"version":3,"file":"pulse.js","sourceRoot":"","sources":["../../../src/lib/economic-release-pulse/pulse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pulse.js","sourceRoot":"","sources":["../../../src/lib/economic-release-pulse/pulse.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export type SpGlobalPmiFlashRelease = {
2
+ year: number;
3
+ month: number;
4
+ day: number;
5
+ confirmed: boolean;
6
+ };
7
+ export type SpGlobalPmiSchedule = {
8
+ source: string;
9
+ sourceUrl: string;
10
+ lastSyncedAt: string;
11
+ scopeStart: string;
12
+ scopeEnd: string;
13
+ releaseTimeEt: string;
14
+ comment: string;
15
+ flashReleases: readonly SpGlobalPmiFlashRelease[];
16
+ };
17
+ export declare const SP_GLOBAL_PMI_SCHEDULE: SpGlobalPmiSchedule;
@@ -0,0 +1,30 @@
1
+ // S&P Global 米 PMI 速報(flash)の発表日程データ(v0.15.0 新設)。
2
+ //
3
+ // 背景:
4
+ // - S&P Global(旧 Markit)は民間データ会社で、官公庁カレンダー実取得の対象外。
5
+ // pulse の網羅性の穴になっていた(新規失業保険申請件数とともに 2026-05-21 取りこぼし)。
6
+ // - 民間サイトのスクレイピングは ToS リスクがあるため、PFEI と同思想で
7
+ // 公式リリースカレンダーから手転記した静的データを返す(HTTP なし・常時成功)。
8
+ // - 米 flash PMI は製造業・サービス業を同日 09:45 ET に公表する。
9
+ //
10
+ // 運用:
11
+ // - 一次ソース: S&P Global PMI 公式リリースカレンダー(https://www.pmi.spglobal.com/)。
12
+ // - 半年に 1 回、公式カレンダーから flashReleases を更新し lastSyncedAt を当日に。
13
+ // - confirmed=false は「公式カレンダー未確認の暫定値」。確認できた日付のみ confirmed=true にする。
14
+ // ⚠️ 現時点では 2026-05 のみ確認済み。それ以降は要追記(捏造しないため空のまま)。
15
+ export const SP_GLOBAL_PMI_SCHEDULE = {
16
+ source: "S&P Global PMI",
17
+ sourceUrl: "https://www.pmi.spglobal.com/",
18
+ lastSyncedAt: "2026-05-21",
19
+ scopeStart: "2026-05-01",
20
+ scopeEnd: "2026-12-31",
21
+ releaseTimeEt: "09:45",
22
+ comment: "米 flash PMI(製造業・サービス業)の発表日。S&P Global 公式リリースカレンダーから手転記。" +
23
+ "09:45 ET 公表(DST 期間は 22:45 JST / 標準時は 23:45 JST、同日内)。" +
24
+ "confirmed=true のみが公式裏取り済み。2026-06 以降は未確認のため未収録(要追記)。",
25
+ flashReleases: [
26
+ // 2026-05 分のみ確認済み(発表日: 5/21 木)。
27
+ { year: 2026, month: 5, day: 21, confirmed: true },
28
+ ],
29
+ };
30
+ //# sourceMappingURL=sp-global-pmi-schedule-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sp-global-pmi-schedule-data.js","sourceRoot":"","sources":["../../src/lib/sp-global-pmi-schedule-data.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,EAAE;AACF,MAAM;AACN,qDAAqD;AACrD,2DAA2D;AAC3D,6CAA6C;AAC7C,gDAAgD;AAChD,gDAAgD;AAChD,EAAE;AACF,MAAM;AACN,wEAAwE;AACxE,8DAA8D;AAC9D,sEAAsE;AACtE,qDAAqD;AAoBrD,MAAM,CAAC,MAAM,sBAAsB,GAAwB;IACzD,MAAM,EAAE,gBAAgB;IACxB,SAAS,EAAE,+BAA+B;IAC1C,YAAY,EAAE,YAAY;IAC1B,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,YAAY;IACtB,aAAa,EAAE,OAAO;IACtB,OAAO,EACL,yDAAyD;QACzD,sDAAsD;QACtD,sDAAsD;IACxD,aAAa,EAAE;QACb,gCAAgC;QAChC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;KACnD;CACF,CAAC"}
@@ -1,16 +1,19 @@
1
- // 経済指標リリース予定 リアルタイム取得ツール(v0.11.0 新設、v0.12.0 で NY 連銀・FRB 追加、v0.14.0 で BLS(PFEI 経由)追加)。
1
+ // 経済指標リリース予定 リアルタイム取得ツール(v0.11.0 新設、v0.12.0 で NY 連銀・FRB 追加、
2
+ // v0.14.0 で BLS(PFEI 経由)追加、v0.15.0 で DOL/ETA・S&P Global PMI 追加)。
2
3
  //
3
4
  // 役割分担:
4
5
  // - 本ツール: 公式機関のリリースカレンダーを取得し、収録漏れの無い「網羅性」を担保
5
6
  // - get_economic_events_today: 手動キュレーション(★★★ 中心・半年 1 回更新・verify 済み)
6
7
  // 両者は補完関係。市況サマリーでは両方を併用するのが望ましい。
7
8
  //
8
- // 現行カバー範囲(v0.14.0):
9
+ // 現行カバー範囲(v0.15.0):
9
10
  // - BEA(米): GDP / 個人所得・支出(PCE)/ 貿易収支 / 企業収益 — 公式 JSON
10
11
  // - NY 連銀(米): 製造業景気指数(Empire State)— 公式 HTML
11
12
  // - FRB(米): 鉱工業生産(G.17)— 公式 HTML
12
13
  // - BLS(米): 雇用統計 / CPI / PPI — ホワイトハウス PFEI 公式スケジュール PDF
13
14
  // (BLS 公式の HTML/RSS は bot ブロックされるため PFEI 経由で取得)
15
+ // - DOL/ETA(米): 新規失業保険申請件数(週次・毎週木 08:30 ET)— 木曜計算 + 祝日補正
16
+ // - S&P Global(米): 製造業 / サービス業 PMI 速報(flash, 09:45 ET)— 公式カレンダー手転記
14
17
  // - 内閣府(日): 四半期別 GDP 速報 — 公式 HTML
15
18
  // - 日銀(日): 金融政策決定会合 / 主な意見 / 短観 / 議事要旨 — lit-forge 収録データ再利用
16
19
  // 次サイクル予定: 総務省統計局(日 CPI)/ FOMC。
@@ -26,7 +29,7 @@ const inputSchema = {
26
29
  .enum(["US", "JP", "EU", "GB", "CN"])
27
30
  .optional()
28
31
  .describe("国コード絞り込み: US=米国 / JP=日本 / EU / GB / CN。未指定で全件。" +
29
- "現行カバーは US(BEA・NY 連銀・FRB)と JP(内閣府・日銀)のみ"),
32
+ "現行カバーは US(BEA・NY 連銀・FRB・BLS・DOL/ETA・S&P Global)と JP(内閣府・日銀)のみ"),
30
33
  };
31
34
  export const getEconomicReleasePulseTool = {
32
35
  name: "get_economic_release_pulse",
@@ -37,9 +40,11 @@ export const getEconomicReleasePulseTool = {
37
40
  "`get_economic_events_today` は運営者が一次ソースで裏取りした手動キュレーション(★★★ 中心、半年 1 回更新)で、" +
38
41
  "収録対象を絞っているため取りこぼす『網羅性の穴』があります。" +
39
42
  "本ツールは公式カレンダーを実取得することでその穴を埋める**補完ツール**です。市況サマリーでは両方を併用してください。" +
40
- "【現行カバー範囲(v0.14.0)】" +
43
+ "【現行カバー範囲(v0.15.0)】" +
41
44
  "BEA(米 GDP / 個人所得・支出〔PCE〕/ 貿易収支 / 企業収益)、NY 連銀(米 製造業景気指数 Empire State)、" +
42
45
  "FRB(米 鉱工業生産 G.17)、**BLS**(雇用統計・CPI・PPI — ホワイトハウス PFEI 公式スケジュール経由)、" +
46
+ "**DOL/ETA**(米 新規失業保険申請件数 — 週次・毎週木 08:30 ET)、" +
47
+ "**S&P Global**(米 製造業/サービス業 PMI 速報 — flash, 09:45 ET。発表日は公式カレンダーから手転記)、" +
43
48
  "内閣府(四半期別 GDP 速報)、日銀(金融政策決定会合 / 主な意見 / 短観 / 議事要旨)。" +
44
49
  "総務省統計局(日 CPI)・FOMC は次サイクルで追加予定で、現時点では本ツールに含まれません。" +
45
50
  "【利用上の注意】" +
@@ -1 +1 @@
1
- {"version":3,"file":"get-economic-release-pulse.js","sourceRoot":"","sources":["../../src/tools/get-economic-release-pulse.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,EAAE;AACF,QAAQ;AACR,+CAA+C;AAC/C,sEAAsE;AACtE,mCAAmC;AACnC,EAAE;AACF,oBAAoB;AACpB,wDAAwD;AACxD,+CAA+C;AAC/C,mCAAmC;AACnC,2DAA2D;AAC3D,oDAAoD;AACpD,oCAAoC;AACpC,8DAA8D;AAC9D,gCAAgC;AAEhC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,yBAAyB,GAE1B,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EAAE,SAAS,EAAqB,MAAM,YAAY,CAAC;AAE1D,MAAM,WAAW,GAAG;IAClB,KAAK,EAAE,CAAC;SACL,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;SACvB,QAAQ,EAAE;SACV,QAAQ,CAAC,sCAAsC,CAAC;IACnD,OAAO,EAAE,CAAC;SACP,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;SACpC,QAAQ,EAAE;SACV,QAAQ,CACP,gDAAgD;QAC9C,wCAAwC,CAC3C;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAiB;IACvD,IAAI,EAAE,4BAA4B;IAClC,KAAK,EAAE,gCAAgC;IACvC,WAAW,EACT,gDAAgD;QAChD,0DAA0D;QAC1D,kCAAkC;QAClC,0EAA0E;QAC1E,gCAAgC;QAChC,8DAA8D;QAC9D,oBAAoB;QACpB,uEAAuE;QACvE,oEAAoE;QACpE,mDAAmD;QACnD,mDAAmD;QACnD,UAAU;QACV,8DAA8D;QAC9D,qDAAqD;IACvD,WAAW;IACX,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;QACpC,MAAM,cAAc,GAAG,CAAC,KAAK,IAAI,OAAO,CAAiB,CAAC;QAC1D,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC;YAC7C,KAAK,EAAE,cAAc;YACrB,OAAO,EAAE,OAAqC;SAC/C,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;YACf,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;YAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EACF,sCAAsC;gBACtC,+CAA+C;gBAC/C,uCAAuC;SAC1C,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"get-economic-release-pulse.js","sourceRoot":"","sources":["../../src/tools/get-economic-release-pulse.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,iEAAiE;AACjE,EAAE;AACF,QAAQ;AACR,+CAA+C;AAC/C,sEAAsE;AACtE,mCAAmC;AACnC,EAAE;AACF,oBAAoB;AACpB,wDAAwD;AACxD,+CAA+C;AAC/C,mCAAmC;AACnC,2DAA2D;AAC3D,oDAAoD;AACpD,2DAA2D;AAC3D,qEAAqE;AACrE,oCAAoC;AACpC,8DAA8D;AAC9D,gCAAgC;AAEhC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,yBAAyB,GAE1B,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EAAE,SAAS,EAAqB,MAAM,YAAY,CAAC;AAE1D,MAAM,WAAW,GAAG;IAClB,KAAK,EAAE,CAAC;SACL,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;SACvB,QAAQ,EAAE;SACV,QAAQ,CAAC,sCAAsC,CAAC;IACnD,OAAO,EAAE,CAAC;SACP,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;SACpC,QAAQ,EAAE;SACV,QAAQ,CACP,gDAAgD;QAC9C,+DAA+D,CAClE;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAiB;IACvD,IAAI,EAAE,4BAA4B;IAClC,KAAK,EAAE,gCAAgC;IACvC,WAAW,EACT,gDAAgD;QAChD,0DAA0D;QAC1D,kCAAkC;QAClC,0EAA0E;QAC1E,gCAAgC;QAChC,8DAA8D;QAC9D,oBAAoB;QACpB,uEAAuE;QACvE,oEAAoE;QACpE,8CAA8C;QAC9C,wEAAwE;QACxE,mDAAmD;QACnD,mDAAmD;QACnD,UAAU;QACV,8DAA8D;QAC9D,qDAAqD;IACvD,WAAW;IACX,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;QACpC,MAAM,cAAc,GAAG,CAAC,KAAK,IAAI,OAAO,CAAiB,CAAC;QAC1D,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC;YAC7C,KAAK,EAAE,cAAc;YACrB,OAAO,EAAE,OAAqC;SAC/C,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;YACf,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;YAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EACF,sCAAsC;gBACtC,+CAA+C;gBAC/C,uCAAuC;SAC1C,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "lit-forge-mcp",
3
- "version": "0.14.4",
3
+ "version": "0.15.0",
4
4
  "mcpName": "io.github.noblabs/lit-forge-mcp",
5
- "description": "MCP server (18 tools): NISA/iDeCo/retirement simulation, 28-indicator market snapshot, economic release calendars (BEA/NY Fed/FRB/BLS/Cabinet Office/BOJ), latest BLS macro values (7 series), and geopolitical calendar + pulse.",
5
+ "description": "MCP server (18 tools): NISA/iDeCo/retirement simulation, 28-indicator market snapshot, economic release calendars (BEA/NY Fed/FRB/BLS/DOL-ETA/S&P Global/Cabinet Office/BOJ), latest BLS macro values (7 series), and geopolitical calendar + pulse.",
6
6
  "type": "module",
7
7
  "license": "MIT",
8
8
  "homepage": "https://github.com/noblabs/lit-forge-mcp",