heor-agent-mcp 1.10.2 → 1.11.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.
@@ -0,0 +1,69 @@
1
+ /**
2
+ * GUARD / GLOBE Most-Favored-Nation (MFN) reference basket.
3
+ *
4
+ * Source: CMS proposed payment models (GUARD = Medicare Part D MFN,
5
+ * GLOBE = Medicare Part B MFN). The basket is the set of OECD countries
6
+ * that meet BOTH:
7
+ * - PPP-adjusted GDP per capita ≥ 60% of the US
8
+ * - Total GDP ≥ $400 billion
9
+ *
10
+ * Under CMS's proposed rules, the US net price for an MFN-eligible drug
11
+ * is bounded by the minimum net price observed across this basket.
12
+ *
13
+ * The list below is reproduced from CMS Notice of Proposed Rulemaking
14
+ * (effective dates per the v1.11.0 design log #27). The criteria are
15
+ * public; if CMS changes the threshold, bump MFN_BASKET_REVISION below.
16
+ *
17
+ * 19 countries total — never assume "country X is in the basket" without
18
+ * checking against this constant.
19
+ */
20
+ /** ISO 3166-1 alpha-2 country codes used as basket keys throughout. */
21
+ export type CountryIso2 = "AT" | "BE" | "CZ" | "DK" | "FR" | "DE" | "IE" | "IT" | "NL" | "NO" | "ES" | "SE" | "CH" | "GB" | "AU" | "JP" | "KR" | "CA" | "IL";
22
+ /**
23
+ * Bump this string whenever CMS revises the basket criteria or country
24
+ * list. Caller-facing tools should stamp this on every emitted dossier
25
+ * section so a 2027 reader can tell which CMS rule version applied.
26
+ */
27
+ export declare const MFN_BASKET_REVISION = "2026-03";
28
+ /**
29
+ * Verbatim 19-country GUARD/GLOBE basket. Order matches the CMS
30
+ * publication groupings (Europe → Asia-Pacific → North America → other).
31
+ */
32
+ export declare const MFN_BASKET_2026: readonly CountryIso2[];
33
+ /** Country display names — used in dossier-section rendering. */
34
+ export declare const MFN_COUNTRY_NAMES: Readonly<Record<CountryIso2, string>>;
35
+ /**
36
+ * Returns the reference set of countries for MFN ceiling computation,
37
+ * with optional exclusions. Caller might exclude e.g. countries with no
38
+ * marketed product, or override the basket for sensitivity analysis.
39
+ *
40
+ * Default = the full 19-country basket. Excluding any country shrinks
41
+ * the basket; the function never adds countries beyond MFN_BASKET_2026.
42
+ */
43
+ export declare function getMfnReferenceCountries(opts?: {
44
+ excluded_countries?: readonly CountryIso2[];
45
+ }): readonly CountryIso2[];
46
+ /**
47
+ * Computes the projected MFN ceiling from a partial price map.
48
+ *
49
+ * Per CMS GUARD/GLOBE rules, the ceiling is the minimum net price in
50
+ * the reference basket EXCLUDING the US (which is the market being
51
+ * priced). If the caller supplies basket prices including a US entry,
52
+ * we strip it before taking the min.
53
+ *
54
+ * Returns null when no basket prices were supplied — the caller can
55
+ * then render "Insufficient basket data" rather than fabricating a
56
+ * ceiling from zero datapoints.
57
+ *
58
+ * Negative or non-finite prices are rejected (TypeError) — pricing data
59
+ * with bad sign would silently lower the ceiling and mislead a payer
60
+ * discussion.
61
+ */
62
+ export declare function computeMfnCeiling(basket_prices: Partial<Record<CountryIso2, number>>, opts?: {
63
+ excluded_countries?: readonly CountryIso2[];
64
+ }): {
65
+ ceiling: number | null;
66
+ contributing_countries: CountryIso2[];
67
+ missing_countries: CountryIso2[];
68
+ };
69
+ //# sourceMappingURL=mfnBasket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mfnBasket.d.ts","sourceRoot":"","sources":["../../src/data/mfnBasket.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,uEAAuE;AACvE,MAAM,MAAM,WAAW,GACnB,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,CAAC;AAET;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAE7C;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,WAAW,EAwBxC,CAAC;AAEX,iEAAiE;AACjE,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAoBnE,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,CAAC,EAAE;IAC9C,kBAAkB,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;CAC7C,GAAG,SAAS,WAAW,EAAE,CAGzB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAC/B,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,EACnD,IAAI,CAAC,EAAE;IAAE,kBAAkB,CAAC,EAAE,SAAS,WAAW,EAAE,CAAA;CAAE,GACrD;IACD,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,sBAAsB,EAAE,WAAW,EAAE,CAAC;IACtC,iBAAiB,EAAE,WAAW,EAAE,CAAC;CAClC,CA4BA"}
@@ -0,0 +1,130 @@
1
+ /**
2
+ * GUARD / GLOBE Most-Favored-Nation (MFN) reference basket.
3
+ *
4
+ * Source: CMS proposed payment models (GUARD = Medicare Part D MFN,
5
+ * GLOBE = Medicare Part B MFN). The basket is the set of OECD countries
6
+ * that meet BOTH:
7
+ * - PPP-adjusted GDP per capita ≥ 60% of the US
8
+ * - Total GDP ≥ $400 billion
9
+ *
10
+ * Under CMS's proposed rules, the US net price for an MFN-eligible drug
11
+ * is bounded by the minimum net price observed across this basket.
12
+ *
13
+ * The list below is reproduced from CMS Notice of Proposed Rulemaking
14
+ * (effective dates per the v1.11.0 design log #27). The criteria are
15
+ * public; if CMS changes the threshold, bump MFN_BASKET_REVISION below.
16
+ *
17
+ * 19 countries total — never assume "country X is in the basket" without
18
+ * checking against this constant.
19
+ */
20
+ /**
21
+ * Bump this string whenever CMS revises the basket criteria or country
22
+ * list. Caller-facing tools should stamp this on every emitted dossier
23
+ * section so a 2027 reader can tell which CMS rule version applied.
24
+ */
25
+ export const MFN_BASKET_REVISION = "2026-03";
26
+ /**
27
+ * Verbatim 19-country GUARD/GLOBE basket. Order matches the CMS
28
+ * publication groupings (Europe → Asia-Pacific → North America → other).
29
+ */
30
+ export const MFN_BASKET_2026 = [
31
+ // Europe (14)
32
+ "AT",
33
+ "BE",
34
+ "CZ",
35
+ "DK",
36
+ "FR",
37
+ "DE",
38
+ "IE",
39
+ "IT",
40
+ "NL",
41
+ "NO",
42
+ "ES",
43
+ "SE",
44
+ "CH",
45
+ "GB",
46
+ // Asia-Pacific (3)
47
+ "AU",
48
+ "JP",
49
+ "KR",
50
+ // North America (1)
51
+ "CA",
52
+ // Other OECD (1)
53
+ "IL",
54
+ ];
55
+ /** Country display names — used in dossier-section rendering. */
56
+ export const MFN_COUNTRY_NAMES = {
57
+ AT: "Austria",
58
+ BE: "Belgium",
59
+ CZ: "Czechia",
60
+ DK: "Denmark",
61
+ FR: "France",
62
+ DE: "Germany",
63
+ IE: "Ireland",
64
+ IT: "Italy",
65
+ NL: "Netherlands",
66
+ NO: "Norway",
67
+ ES: "Spain",
68
+ SE: "Sweden",
69
+ CH: "Switzerland",
70
+ GB: "United Kingdom",
71
+ AU: "Australia",
72
+ JP: "Japan",
73
+ KR: "South Korea",
74
+ CA: "Canada",
75
+ IL: "Israel",
76
+ };
77
+ /**
78
+ * Returns the reference set of countries for MFN ceiling computation,
79
+ * with optional exclusions. Caller might exclude e.g. countries with no
80
+ * marketed product, or override the basket for sensitivity analysis.
81
+ *
82
+ * Default = the full 19-country basket. Excluding any country shrinks
83
+ * the basket; the function never adds countries beyond MFN_BASKET_2026.
84
+ */
85
+ export function getMfnReferenceCountries(opts) {
86
+ const excluded = new Set(opts?.excluded_countries ?? []);
87
+ return MFN_BASKET_2026.filter((c) => !excluded.has(c));
88
+ }
89
+ /**
90
+ * Computes the projected MFN ceiling from a partial price map.
91
+ *
92
+ * Per CMS GUARD/GLOBE rules, the ceiling is the minimum net price in
93
+ * the reference basket EXCLUDING the US (which is the market being
94
+ * priced). If the caller supplies basket prices including a US entry,
95
+ * we strip it before taking the min.
96
+ *
97
+ * Returns null when no basket prices were supplied — the caller can
98
+ * then render "Insufficient basket data" rather than fabricating a
99
+ * ceiling from zero datapoints.
100
+ *
101
+ * Negative or non-finite prices are rejected (TypeError) — pricing data
102
+ * with bad sign would silently lower the ceiling and mislead a payer
103
+ * discussion.
104
+ */
105
+ export function computeMfnCeiling(basket_prices, opts) {
106
+ const reference = getMfnReferenceCountries(opts);
107
+ const contributing = [];
108
+ const missing = [];
109
+ let min = null;
110
+ for (const c of reference) {
111
+ const price = basket_prices[c];
112
+ if (price === undefined || price === null) {
113
+ missing.push(c);
114
+ continue;
115
+ }
116
+ if (!Number.isFinite(price) || price < 0) {
117
+ throw new TypeError(`computeMfnCeiling: basket price for ${c} must be a non-negative finite number, got ${String(price)}`);
118
+ }
119
+ contributing.push(c);
120
+ if (min === null || price < min) {
121
+ min = price;
122
+ }
123
+ }
124
+ return {
125
+ ceiling: contributing.length > 0 ? min : null,
126
+ contributing_countries: contributing,
127
+ missing_countries: missing,
128
+ };
129
+ }
130
+ //# sourceMappingURL=mfnBasket.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mfnBasket.js","sourceRoot":"","sources":["../../src/data/mfnBasket.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAwBH;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,SAAS,CAAC;AAE7C;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAA2B;IACrD,cAAc;IACd,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,mBAAmB;IACnB,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,oBAAoB;IACpB,IAAI;IACJ,iBAAiB;IACjB,IAAI;CACI,CAAC;AAEX,iEAAiE;AACjE,MAAM,CAAC,MAAM,iBAAiB,GAA0C;IACtE,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,OAAO;IACX,EAAE,EAAE,aAAa;IACjB,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,OAAO;IACX,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,aAAa;IACjB,EAAE,EAAE,gBAAgB;IACpB,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,OAAO;IACX,EAAE,EAAE,aAAa;IACjB,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,QAAQ;CACb,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CAAC,IAExC;IACC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,kBAAkB,IAAI,EAAE,CAAC,CAAC;IACzD,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,iBAAiB,CAC/B,aAAmD,EACnD,IAAsD;IAMtD,MAAM,SAAS,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,YAAY,GAAkB,EAAE,CAAC;IACvC,MAAM,OAAO,GAAkB,EAAE,CAAC;IAClC,IAAI,GAAG,GAAkB,IAAI,CAAC;IAE9B,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,SAAS,CACjB,uCAAuC,CAAC,8CAA8C,MAAM,CAAC,KAAK,CAAC,EAAE,CACtG,CAAC;QACJ,CAAC;QACD,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,GAAG,KAAK,IAAI,IAAI,KAAK,GAAG,GAAG,EAAE,CAAC;YAChC,GAAG,GAAG,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI;QAC7C,sBAAsB,EAAE,YAAY;QACpC,iBAAiB,EAAE,OAAO;KAC3B,CAAC;AACJ,CAAC"}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * MFN price-sensitivity sweep for the cost-effectiveness model (design log #27).
3
+ *
4
+ * Given a basket-driven MFN ceiling and the drug's current US net price,
5
+ * sweep the price across that range at N discrete points and report the
6
+ * ICER at each. Cheaper alternative to a full PSA re-run — produces a
7
+ * curve users can read directly: "at the MFN ceiling, ICER drops to $X;
8
+ * the WTP crossover happens at price $Y."
9
+ *
10
+ * Why a deterministic sweep rather than another Monte Carlo CEAC?
11
+ *
12
+ * - The MFN scenario is an exogenous price shock, not statistical
13
+ * uncertainty. Treating it as a CEAC over a uniform distribution
14
+ * conflates two distinct questions.
15
+ * - A 11-point sweep is ~11 model runs vs PSA's 1000+. Ships fast.
16
+ * - The output (ICER per price point + crossover price) is more
17
+ * payer-readable than another CEAC slide.
18
+ *
19
+ * If a true MFN-stressed PSA is needed later, this module stays — it's
20
+ * the deterministic complement.
21
+ */
22
+ import type { CEModelParams } from "../providers/types.js";
23
+ export type CEModelInputs = CEModelParams;
24
+ export interface MfnSensitivityInputs {
25
+ /** Lower bound of the price sweep — typically min(basket excluding US). */
26
+ min_basket: number;
27
+ /** Upper bound — typically the drug's current US net price. */
28
+ current_us_price: number;
29
+ /** Number of price points to sweep (default 11 → step every 10% of range). */
30
+ n_points?: number;
31
+ /**
32
+ * Willingness-to-pay threshold(s) for crossover detection. When the
33
+ * ICER curve crosses any of these as price falls, we record the
34
+ * approximate crossover price. Defaults match the WTP catalog used
35
+ * elsewhere in this module: NHS £30K, US $100K, US $150K.
36
+ */
37
+ wtp_thresholds?: number[];
38
+ }
39
+ export interface MfnSensitivityPoint {
40
+ drug_price: number;
41
+ /** ICER at this price; Infinity when delta_qaly <= 0. */
42
+ icer: number;
43
+ }
44
+ export interface MfnCrossover {
45
+ wtp: number;
46
+ /**
47
+ * Approximate price where ICER = wtp. Null when the ICER never
48
+ * crosses the threshold over the sweep range (cost-effective at
49
+ * every point, or cost-INeffective at every point).
50
+ */
51
+ crossover_price: number | null;
52
+ }
53
+ export interface MfnSensitivityResult {
54
+ /** Echoes inputs so the caller can stamp the output for audit. */
55
+ range: {
56
+ min_basket: number;
57
+ current_us_price: number;
58
+ n_points: number;
59
+ };
60
+ /** ICER per price point, ordered low-price → high-price. */
61
+ curve: MfnSensitivityPoint[];
62
+ /** Crossover prices per WTP threshold (linear interpolation between points). */
63
+ crossovers: MfnCrossover[];
64
+ /** ICER at the MFN ceiling itself (min_basket); first point in `curve`. */
65
+ icer_at_ceiling: number;
66
+ /** ICER at the unstressed US price; last point in `curve`. */
67
+ icer_at_current: number;
68
+ }
69
+ /**
70
+ * Run the price sweep. The caller injects a `runModel` callback so this
71
+ * module stays decoupled from the Markov / PartSA implementations and
72
+ * is trivially mockable in tests.
73
+ *
74
+ * Returns sorted by ascending price. Crossover prices use linear
75
+ * interpolation between adjacent points — accurate enough for the
76
+ * payer-conversation purpose; not a root-finding bisection.
77
+ */
78
+ export declare function runMfnSensitivity(baseParams: CEModelInputs, inputs: MfnSensitivityInputs, runModel: (params: CEModelInputs) => {
79
+ icer: number;
80
+ }): MfnSensitivityResult;
81
+ //# sourceMappingURL=mfnSensitivity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mfnSensitivity.d.ts","sourceRoot":"","sources":["../../src/models/mfnSensitivity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,MAAM,MAAM,aAAa,GAAG,aAAa,CAAC;AAE1C,MAAM,WAAW,oBAAoB;IACnC,2EAA2E;IAC3E,UAAU,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,gBAAgB,EAAE,MAAM,CAAC;IACzB,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ;;;;OAIG;IACH,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,oBAAoB;IACnC,kEAAkE;IAClE,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1E,4DAA4D;IAC5D,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC7B,gFAAgF;IAChF,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,2EAA2E;IAC3E,eAAe,EAAE,MAAM,CAAC;IACxB,8DAA8D;IAC9D,eAAe,EAAE,MAAM,CAAC;CACzB;AAID;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,aAAa,EACzB,MAAM,EAAE,oBAAoB,EAC5B,QAAQ,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GACpD,oBAAoB,CAmDtB"}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * MFN price-sensitivity sweep for the cost-effectiveness model (design log #27).
3
+ *
4
+ * Given a basket-driven MFN ceiling and the drug's current US net price,
5
+ * sweep the price across that range at N discrete points and report the
6
+ * ICER at each. Cheaper alternative to a full PSA re-run — produces a
7
+ * curve users can read directly: "at the MFN ceiling, ICER drops to $X;
8
+ * the WTP crossover happens at price $Y."
9
+ *
10
+ * Why a deterministic sweep rather than another Monte Carlo CEAC?
11
+ *
12
+ * - The MFN scenario is an exogenous price shock, not statistical
13
+ * uncertainty. Treating it as a CEAC over a uniform distribution
14
+ * conflates two distinct questions.
15
+ * - A 11-point sweep is ~11 model runs vs PSA's 1000+. Ships fast.
16
+ * - The output (ICER per price point + crossover price) is more
17
+ * payer-readable than another CEAC slide.
18
+ *
19
+ * If a true MFN-stressed PSA is needed later, this module stays — it's
20
+ * the deterministic complement.
21
+ */
22
+ const DEFAULT_WTP = [30000, 100000, 150000];
23
+ /**
24
+ * Run the price sweep. The caller injects a `runModel` callback so this
25
+ * module stays decoupled from the Markov / PartSA implementations and
26
+ * is trivially mockable in tests.
27
+ *
28
+ * Returns sorted by ascending price. Crossover prices use linear
29
+ * interpolation between adjacent points — accurate enough for the
30
+ * payer-conversation purpose; not a root-finding bisection.
31
+ */
32
+ export function runMfnSensitivity(baseParams, inputs, runModel) {
33
+ const n = Math.max(2, inputs.n_points ?? 11);
34
+ if (!Number.isFinite(inputs.min_basket) || !Number.isFinite(inputs.current_us_price)) {
35
+ throw new TypeError("runMfnSensitivity: min_basket and current_us_price must be finite numbers");
36
+ }
37
+ if (inputs.min_basket < 0 || inputs.current_us_price < 0) {
38
+ throw new TypeError("runMfnSensitivity: prices must be non-negative");
39
+ }
40
+ if (inputs.min_basket > inputs.current_us_price) {
41
+ throw new TypeError(`runMfnSensitivity: min_basket (${inputs.min_basket}) must be <= current_us_price (${inputs.current_us_price})`);
42
+ }
43
+ const step = (inputs.current_us_price - inputs.min_basket) / (n - 1);
44
+ const curve = [];
45
+ for (let i = 0; i < n; i++) {
46
+ const price = inputs.min_basket + step * i;
47
+ const perturbed = {
48
+ ...baseParams,
49
+ cost_inputs: {
50
+ ...baseParams.cost_inputs,
51
+ drug_cost_annual: price,
52
+ },
53
+ };
54
+ const { icer } = runModel(perturbed);
55
+ curve.push({ drug_price: price, icer });
56
+ }
57
+ const thresholds = inputs.wtp_thresholds ?? DEFAULT_WTP;
58
+ const crossovers = thresholds.map((wtp) => ({
59
+ wtp,
60
+ crossover_price: findCrossover(curve, wtp),
61
+ }));
62
+ return {
63
+ range: {
64
+ min_basket: inputs.min_basket,
65
+ current_us_price: inputs.current_us_price,
66
+ n_points: n,
67
+ },
68
+ curve,
69
+ crossovers,
70
+ icer_at_ceiling: curve[0].icer,
71
+ icer_at_current: curve[curve.length - 1].icer,
72
+ };
73
+ }
74
+ /**
75
+ * Find the price at which the ICER curve crosses `wtp` using linear
76
+ * interpolation between adjacent points. Returns null when the curve
77
+ * doesn't cross — either ICER stays below wtp everywhere (cost-effective
78
+ * at every price in range) or stays above (cost-INeffective everywhere).
79
+ *
80
+ * Infinity ICERs (delta_qaly <= 0) are treated as "doesn't cross" rather
81
+ * than collapsing the interpolation — a degenerate iteration shouldn't
82
+ * fabricate a crossover.
83
+ */
84
+ function findCrossover(curve, wtp) {
85
+ for (let i = 0; i < curve.length - 1; i++) {
86
+ const a = curve[i];
87
+ const b = curve[i + 1];
88
+ if (!Number.isFinite(a.icer) || !Number.isFinite(b.icer))
89
+ continue;
90
+ const aDelta = a.icer - wtp;
91
+ const bDelta = b.icer - wtp;
92
+ if (aDelta === 0)
93
+ return a.drug_price;
94
+ if (bDelta === 0)
95
+ return b.drug_price;
96
+ if (aDelta * bDelta < 0) {
97
+ // Sign change between a and b → interpolate.
98
+ const t = aDelta / (aDelta - bDelta);
99
+ return a.drug_price + t * (b.drug_price - a.drug_price);
100
+ }
101
+ }
102
+ return null;
103
+ }
104
+ //# sourceMappingURL=mfnSensitivity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mfnSensitivity.js","sourceRoot":"","sources":["../../src/models/mfnSensitivity.ts"],"names":[],"mappings":"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"}
@@ -79,6 +79,12 @@ export interface CEModelParams {
79
79
  survival_distribution?: "exponential" | "weibull";
80
80
  weibull_shape?: number;
81
81
  };
82
+ mfn_sensitivity?: {
83
+ min_basket: number;
84
+ current_us_price: number;
85
+ n_points?: number;
86
+ wtp_thresholds?: number[];
87
+ };
82
88
  }
83
89
  export interface PicoDefinition {
84
90
  id: string;
@@ -126,6 +132,13 @@ export interface DossierParams {
126
132
  unmet_need_summary?: string;
127
133
  /** Design log #26: array of RegulatoryStatusResult objects from hta_workflow Phase 3.6. Renders "Regulatory Landscape" section for nice/jca/gvd/amcp. */
128
134
  regulatory_landscape?: any[];
135
+ /** Design log #27: MFN (Most-Favored-Nation) pricing context. Auto-renders MFN Exposure section for hta_body="amcp"; opt-in for other bodies via basket_prices presence. Basket = 19-country CMS GUARD/GLOBE OECD set (src/data/mfnBasket.ts). */
136
+ mfn_context?: {
137
+ basket_prices?: Record<string, number>;
138
+ us_current_net_price?: number;
139
+ basket_revision?: string;
140
+ excluded_countries?: string[];
141
+ };
129
142
  }
130
143
  export interface ToolResult {
131
144
  content: string | object;
@@ -184,6 +197,24 @@ export interface CEModelResult {
184
197
  };
185
198
  psa?: PSASummary;
186
199
  owsa?: OWSASummary[];
200
+ /** Design log #27: MFN price-sensitivity sweep result. Present when caller supplied mfn_sensitivity. */
201
+ mfn_sensitivity?: {
202
+ range: {
203
+ min_basket: number;
204
+ current_us_price: number;
205
+ n_points: number;
206
+ };
207
+ curve: Array<{
208
+ drug_price: number;
209
+ icer: number;
210
+ }>;
211
+ crossovers: Array<{
212
+ wtp: number;
213
+ crossover_price: number | null;
214
+ }>;
215
+ icer_at_ceiling: number;
216
+ icer_at_current: number;
217
+ };
187
218
  wtp_analysis: {
188
219
  nhs: WTPAssessment;
189
220
  us_payer: WTPAssessment;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"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"}
package/dist/server.js CHANGED
@@ -322,7 +322,27 @@ function createMcpServer(surfaceRef = { value: "direct_mcp" }, sessionIdRef = {
322
322
  isError: true,
323
323
  };
324
324
  }
325
- trackToolCall(name, Date.now() - callStart, "ok", sessionIdRef.value || undefined, { surface: surfaceRef.value });
325
+ const mfnProps = {};
326
+ if (name === "models.cost_effectiveness" &&
327
+ args &&
328
+ typeof args === "object" &&
329
+ "mfn_sensitivity" in args &&
330
+ args.mfn_sensitivity != null) {
331
+ mfnProps["mfn_sensitivity_invoked"] = true;
332
+ }
333
+ if (name === "hta.dossier" &&
334
+ args &&
335
+ typeof args === "object" &&
336
+ "mfn_context" in args &&
337
+ args.mfn_context != null) {
338
+ const ctx = args.mfn_context;
339
+ mfnProps["mfn_context_emitted"] = true;
340
+ mfnProps["mfn_basket_countries"] =
341
+ ctx.basket_prices != null
342
+ ? Object.keys(ctx.basket_prices).length
343
+ : 0;
344
+ }
345
+ trackToolCall(name, Date.now() - callStart, "ok", sessionIdRef.value || undefined, { surface: surfaceRef.value, ...mfnProps });
326
346
  const content = typeof result.content === "string"
327
347
  ? result.content
328
348
  : JSON.stringify(result.content, null, 2);
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"costEffectivenessModel.d.ts","sourceRoot":"","sources":["../../src/tools/costEffectivenessModel.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,UAAU,EAKX,MAAM,uBAAuB,CAAC;AAoR/B,wBAAsB,4BAA4B,CAChD,SAAS,EAAE,OAAO,GACjB,OAAO,CAAC,UAAU,CAAC,CAibrB;AAED,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6K5C,CAAC"}
1
+ {"version":3,"file":"costEffectivenessModel.d.ts","sourceRoot":"","sources":["../../src/tools/costEffectivenessModel.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,UAAU,EAKX,MAAM,uBAAuB,CAAC;AAiU/B,wBAAsB,4BAA4B,CAChD,SAAS,EAAE,OAAO,GACjB,OAAO,CAAC,UAAU,CAAC,CAoerB;AAED,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6K5C,CAAC"}
@@ -80,10 +80,42 @@ const CEModelSchema = z.object({
80
80
  weibull_shape: z.number().positive().optional(),
81
81
  })
82
82
  .optional(),
83
+ // Design log #27: MFN price-sensitivity sweep. Cheap deterministic
84
+ // alternative to a full PSA re-run — sweeps drug_cost_annual across
85
+ // [min_basket, current_us_price] at n_points and reports ICER per
86
+ // price plus WTP crossover prices. When omitted, no MFN sensitivity
87
+ // section is added to the output.
88
+ mfn_sensitivity: z
89
+ .object({
90
+ min_basket: z
91
+ .number()
92
+ .nonnegative()
93
+ .finite()
94
+ .describe("Lower bound of the price sweep. Typically min(basket excluding US) from the 19-country GUARD/GLOBE MFN basket (see src/data/mfnBasket.ts)."),
95
+ current_us_price: z
96
+ .number()
97
+ .nonnegative()
98
+ .finite()
99
+ .describe("Upper bound — the drug's current US net price. Must be >= min_basket."),
100
+ n_points: z
101
+ .number()
102
+ .int()
103
+ .min(2)
104
+ .max(101)
105
+ .optional()
106
+ .describe("Number of price points in the sweep (default 11). Each point is one Markov run, so wall-clock scales linearly with n_points × time_horizon."),
107
+ wtp_thresholds: z
108
+ .array(z.number().nonnegative().finite())
109
+ .optional()
110
+ .describe("WTP thresholds in $/QALY for crossover detection. Defaults to [30000, 100000, 150000] (NHS / US payer low / US payer mid)."),
111
+ })
112
+ .optional()
113
+ .describe("Optional MFN price-sensitivity sweep. When supplied, the output includes an mfn_sensitivity block with ICER per price point and WTP-crossover prices. Design log #27."),
83
114
  });
84
115
  import { runPartSA } from "../models/partsa.js";
85
116
  import { runPSA } from "../models/psa.js";
86
117
  import { runOWSA, buildDefaultOWSAParameters } from "../models/owsa.js";
118
+ import { runMfnSensitivity, } from "../models/mfnSensitivity.js";
87
119
  import { runMarkovAndComputeICER, getTimeHorizonYears, } from "../models/modelUtils.js";
88
120
  import { createAuditRecord, addAssumption, setMethodology, } from "../audit/builder.js";
89
121
  import { auditToMarkdown } from "../formatters/markdown.js";
@@ -373,6 +405,11 @@ export async function handleCostEffectivenessModel(rawParams) {
373
405
  impact: r.impact,
374
406
  }));
375
407
  }
408
+ // --- MFN sensitivity (design log #27) ---
409
+ let mfnSensitivity;
410
+ if (params.mfn_sensitivity) {
411
+ mfnSensitivity = runMfnSensitivity(params, params.mfn_sensitivity, (p) => runMarkovAndComputeICER(p));
412
+ }
376
413
  // --- WTP Analysis ---
377
414
  const wtp_analysis = {
378
415
  nhs: buildWTPAssessment(icer, "nhs", delta_cost, delta_qaly),
@@ -393,6 +430,7 @@ export async function handleCostEffectivenessModel(rawParams) {
393
430
  },
394
431
  psa: psaSummary,
395
432
  owsa: owsaResults,
433
+ mfn_sensitivity: mfnSensitivity,
396
434
  wtp_analysis,
397
435
  model_metadata: {
398
436
  model_type: modelType,
@@ -486,6 +524,35 @@ export async function handleCostEffectivenessModel(rawParams) {
486
524
  }
487
525
  owsaSection.push(``);
488
526
  }
527
+ // Design log #27: MFN sensitivity section (text).
528
+ const mfnSection = [];
529
+ if (mfnSensitivity) {
530
+ mfnSection.push(`### MFN Price Sensitivity (design log #27)`);
531
+ mfnSection.push(`ICER swept across ${mfnSensitivity.range.n_points} drug-price points from MFN ceiling ${symbol}${mfnSensitivity.range.min_basket.toLocaleString()} to current US ${symbol}${mfnSensitivity.range.current_us_price.toLocaleString()}:`);
532
+ mfnSection.push("");
533
+ mfnSection.push(`| Drug price | ICER |`);
534
+ mfnSection.push(`|---:|---:|`);
535
+ for (const pt of mfnSensitivity.curve) {
536
+ const icerCell = Number.isFinite(pt.icer)
537
+ ? `${symbol}${Math.round(pt.icer).toLocaleString()}`
538
+ : "Infinity";
539
+ mfnSection.push(`| ${symbol}${Math.round(pt.drug_price).toLocaleString()} | ${icerCell} |`);
540
+ }
541
+ mfnSection.push("");
542
+ mfnSection.push(`**ICER at MFN ceiling (${symbol}${Math.round(mfnSensitivity.range.min_basket).toLocaleString()}):** ${Number.isFinite(mfnSensitivity.icer_at_ceiling) ? `${symbol}${Math.round(mfnSensitivity.icer_at_ceiling).toLocaleString()}` : "Infinity"}/QALY`);
543
+ mfnSection.push(`**ICER at current US price (${symbol}${Math.round(mfnSensitivity.range.current_us_price).toLocaleString()}):** ${Number.isFinite(mfnSensitivity.icer_at_current) ? `${symbol}${Math.round(mfnSensitivity.icer_at_current).toLocaleString()}` : "Infinity"}/QALY`);
544
+ mfnSection.push("");
545
+ mfnSection.push(`**WTP crossover prices:**`);
546
+ for (const c of mfnSensitivity.crossovers) {
547
+ if (c.crossover_price === null) {
548
+ mfnSection.push(`- ${symbol}${c.wtp.toLocaleString()}/QALY — never crossed in this price range`);
549
+ }
550
+ else {
551
+ mfnSection.push(`- ${symbol}${c.wtp.toLocaleString()}/QALY — crossed at drug price ${symbol}${Math.round(c.crossover_price).toLocaleString()}`);
552
+ }
553
+ }
554
+ mfnSection.push("");
555
+ }
489
556
  const textLines = [
490
557
  `## Cost-Effectiveness Analysis: ${params.intervention} vs ${params.comparator}`,
491
558
  `**Indication:** ${params.indication} | **Perspective:** ${params.perspective.toUpperCase()} | **Horizon:** ${params.time_horizon}`,
@@ -505,6 +572,7 @@ export async function handleCostEffectivenessModel(rawParams) {
505
572
  ...buildAlternativeMetricsSection(params.summary_metric, delta_cost, incremental_lys, evlyg_icer, symbol),
506
573
  ...psaSection,
507
574
  ...owsaSection,
575
+ ...mfnSection,
508
576
  ...buildScenarioSection(params, symbol),
509
577
  `### Model Structure`,
510
578
  `Multi-state Markov model with half-cycle correction. Discounted at ${DISCOUNT_RATE * 100}% per NICE reference case.`,
@@ -1 +1 @@
1
- {"version":3,"file":"costEffectivenessModel.js","sourceRoot":"","sources":["../../src/tools/costEffectivenessModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"costEffectivenessModel.js","sourceRoot":"","sources":["../../src/tools/costEffectivenessModel.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"htaDossierPrep.d.ts","sourceRoot":"","sources":["../../src/tools/htaDossierPrep.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,UAAU,EAGX,MAAM,uBAAuB,CAAC;AA2hC/B,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,OAAO,GACjB,OAAO,CAAC,UAAU,CAAC,CAkSrB;AAED,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8FpC,CAAC"}
1
+ {"version":3,"file":"htaDossierPrep.d.ts","sourceRoot":"","sources":["../../src/tools/htaDossierPrep.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,UAAU,EAGX,MAAM,uBAAuB,CAAC;AA+rC/B,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,OAAO,GACjB,OAAO,CAAC,UAAU,CAAC,CA6UrB;AAED,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8FpC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { z } from "zod";
2
2
  import { LiteratureResultSchema, RobResultsSchema, CEModelResultSchema, } from "../schemas/dossierInputSchemas.js";
3
3
  import { detectMismatch, extractTaNumber, findPrecedents, } from "../data/niceTaPrecedents.js";
4
+ import { MFN_BASKET_2026, MFN_BASKET_REVISION, MFN_COUNTRY_NAMES, computeMfnCeiling, } from "../data/mfnBasket.js";
4
5
  import { routeGvdSections } from "./htaDossier/gvdSectionRouter.js";
5
6
  import { caseInsensitiveEnum } from "../util/caseInsensitive.js";
6
7
  const DossierSchema = z.object({
@@ -126,6 +127,34 @@ const DossierSchema = z.object({
126
127
  .array(z.unknown())
127
128
  .optional()
128
129
  .describe("Optional: array of RegulatoryStatusResult objects from regulatory.status_check (via hta_workflow Phase 3.6). When provided and hta_body in {nice, jca, gvd, amcp}, renders a 'Regulatory Landscape' section with a comparator × region × status table before the gap analysis. Design log #26."),
130
+ // Design log #27: MFN (Most-Favored-Nation) pricing context.
131
+ // Auto-rendered for hta_body:"amcp" (US dossiers always); opt-in for
132
+ // other bodies (renders when basket_prices is supplied). The basket
133
+ // is the 19-country CMS GUARD/GLOBE OECD reference set (see
134
+ // src/data/mfnBasket.ts).
135
+ mfn_context: z
136
+ .object({
137
+ basket_prices: z
138
+ .record(z.string(), z.number().nonnegative().finite())
139
+ .optional()
140
+ .describe("Map of ISO 3166-1 alpha-2 country code → net price in basket country, e.g. { DE: 100, FR: 95, GB: 110 }. Unsupplied countries are reported as missing in the dossier section."),
141
+ us_current_net_price: z
142
+ .number()
143
+ .nonnegative()
144
+ .finite()
145
+ .optional()
146
+ .describe("Optional: current US net price for context. When supplied alongside basket_prices, the section quantifies the gap to the projected MFN ceiling."),
147
+ basket_revision: z
148
+ .string()
149
+ .optional()
150
+ .describe("Optional override of the basket revision stamp. Defaults to the constant in src/data/mfnBasket.ts (currently 2026-03)."),
151
+ excluded_countries: z
152
+ .array(z.string())
153
+ .optional()
154
+ .describe("Optional: ISO-2 country codes to exclude from the ceiling computation (e.g. drug not marketed there). Filters down from the 19-country basket."),
155
+ })
156
+ .optional()
157
+ .describe("Optional: Most-Favored-Nation pricing context. Auto-renders for hta_body='amcp' (US dossiers); opt-in for other bodies via basket_prices presence. Adds 'MFN Exposure' section per CMS GUARD/GLOBE rules. Design log #27."),
129
158
  });
130
159
  import { createAuditRecord, addAssumption, addWarning, setMethodology, } from "../audit/builder.js";
131
160
  import { assessInconsistency } from "../grade/inconsistency.js";
@@ -695,6 +724,90 @@ async function handleJCADossier(params, audit) {
695
724
  }
696
725
  return { content: jcaTextContent, audit };
697
726
  }
727
+ // ── Design log #27: MFN Exposure section ─────────────────────────────────
728
+ // Bodies for which the MFN section may render. v1.11.0 ships opt-in only
729
+ // across every live body — render when basket_prices is supplied. The
730
+ // "amcp" body is reserved per design log #24 (AMCP Format 4.1); when it
731
+ // ships, add it to MFN_AUTO_BODIES so US dossiers always show MFN
732
+ // context regardless of whether basket_prices was supplied.
733
+ const MFN_AUTO_BODIES = new Set([]); // intentionally empty in v1.11.0
734
+ const MFN_OPTIN_BODIES = new Set([
735
+ "nice",
736
+ "jca",
737
+ "gvd",
738
+ "iqwig",
739
+ "has",
740
+ "ema",
741
+ "fda",
742
+ ]);
743
+ function renderMfnExposureSection(ctx, hta_body) {
744
+ const revision = ctx.basket_revision ?? MFN_BASKET_REVISION;
745
+ const excluded = (ctx.excluded_countries ?? []).filter((c) => MFN_BASKET_2026.includes(c));
746
+ const prices = (ctx.basket_prices ?? {});
747
+ const { ceiling, contributing_countries, missing_countries } = computeMfnCeiling(prices, { excluded_countries: excluded });
748
+ const lines = [];
749
+ lines.push(`## MFN Exposure (basket revision ${revision})`);
750
+ lines.push("");
751
+ lines.push(`Under the CMS proposed payment models (GUARD = Medicare Part D MFN; GLOBE = Medicare Part B MFN), the US net price for an MFN-eligible drug is bounded by the minimum net price observed across a basket of ${MFN_BASKET_2026.length} OECD countries (PPP-adjusted GDP per capita ≥ 60% of US AND total GDP ≥ $400B).`);
752
+ lines.push("");
753
+ // Price table — every basket country, with user-supplied price or "not provided".
754
+ lines.push("| Country | ISO | Net price | Status |");
755
+ lines.push("|---|---|---:|---|");
756
+ for (const code of MFN_BASKET_2026) {
757
+ const name = MFN_COUNTRY_NAMES[code];
758
+ const isExcluded = excluded.includes(code);
759
+ const price = prices[code];
760
+ if (isExcluded) {
761
+ lines.push(`| ${name} | ${code} | — | excluded by caller |`);
762
+ }
763
+ else if (price === undefined) {
764
+ lines.push(`| ${name} | ${code} | — | not provided |`);
765
+ }
766
+ else {
767
+ const isMin = ceiling !== null && price === ceiling;
768
+ lines.push(`| ${name} | ${code} | ${price} | ${isMin ? "**minimum (sets ceiling)**" : "supplied"} |`);
769
+ }
770
+ }
771
+ lines.push("");
772
+ // Ceiling summary.
773
+ if (ceiling === null) {
774
+ lines.push(`**Projected US net price ceiling:** insufficient basket data (no prices supplied for any of the ${MFN_BASKET_2026.length - excluded.length} active basket countries).`);
775
+ }
776
+ else {
777
+ lines.push(`**Projected US net price ceiling:** ${ceiling} (minimum of ${contributing_countries.length} supplied basket price${contributing_countries.length === 1 ? "" : "s"}; ${missing_countries.length} country price${missing_countries.length === 1 ? "" : "s"} not provided).`);
778
+ if (ctx.us_current_net_price !== undefined) {
779
+ const gap = ctx.us_current_net_price - ceiling;
780
+ const pctDown = ctx.us_current_net_price > 0
781
+ ? ((gap / ctx.us_current_net_price) * 100).toFixed(1)
782
+ : "n/a";
783
+ const direction = gap > 0
784
+ ? `requires a ${pctDown}% reduction from current US net price (${ctx.us_current_net_price} → ${ceiling})`
785
+ : gap < 0
786
+ ? `is already above current US net price — no MFN-driven reduction required at this basket`
787
+ : `equals current US net price exactly`;
788
+ lines.push("");
789
+ lines.push(`**Gap to current US:** ${direction}.`);
790
+ }
791
+ }
792
+ lines.push("");
793
+ // Risk callouts — only when we actually have a ceiling to defend against.
794
+ if (ceiling !== null) {
795
+ lines.push("**Mitigation recommendations:**");
796
+ lines.push("- **Anchor evidence to the strictest HTA in basket** (NICE / IQWiG / HAS define the global value-based price ceiling).");
797
+ lines.push("- **Align comparator strategy early** via HTA scientific advice and supportive real-world evidence on the local standard of care.");
798
+ lines.push("- **Ensure robust EQ-5D utility data** with sufficient follow-up to reduce modelling uncertainty (use `utility_value_set` for the appropriate value set).");
799
+ lines.push("- **Sequence launches carefully** — early low-price markets cascade downward through IRP baskets and reset the global price floor independently of evidence.");
800
+ lines.push("");
801
+ }
802
+ // Body-specific framing.
803
+ if (MFN_AUTO_BODIES.has(hta_body)) {
804
+ lines.push(`*Auto-rendered for US dossier (hta_body=${hta_body}). MFN is in scope by default per CMS rulemaking.*`);
805
+ }
806
+ else {
807
+ lines.push(`*Rendered for hta_body=${hta_body} because basket_prices were supplied; MFN exposure drives the US ceiling for the same asset under CMS GUARD/GLOBE rules.*`);
808
+ }
809
+ return lines.join("\n");
810
+ }
698
811
  // ── Design log #26: Regulatory Landscape section renderer ────────────────
699
812
  const REGULATORY_LANDSCAPE_BODIES = new Set(["nice", "jca", "gvd", "amcp"]);
700
813
  function isRegulatoryResult(x) {
@@ -832,6 +945,16 @@ export async function handleHtaDossierPrep(rawParams) {
832
945
  audit = addAssumption(audit, `Regulatory Landscape section rendered for ${params.regulatory_landscape.length} comparator/region combination(s). Design log #26.`);
833
946
  }
834
947
  }
948
+ // Design log #27: MFN Exposure for GVD path (opt-in via basket_prices).
949
+ // GVD's early-return path skips the shared wire-in lower in the file, so
950
+ // we mirror the check here. Opt-in across every body in v1.11.0.
951
+ const gvdMfnPrices = params.mfn_context?.basket_prices;
952
+ if (gvdMfnPrices && Object.keys(gvdMfnPrices).length > 0) {
953
+ const mfnSection = renderMfnExposureSection(params.mfn_context ?? {}, params.hta_body);
954
+ lines.push("---");
955
+ lines.push(mfnSection);
956
+ audit = addAssumption(audit, `MFN Exposure section rendered for hta_body=gvd with ${Object.keys(gvdMfnPrices).length} basket price${Object.keys(gvdMfnPrices).length === 1 ? "" : "s"} supplied. Design log #27.`);
957
+ }
835
958
  // Append gvd_evidence_pack as a JSON code block for downstream consumption
836
959
  lines.push(`---`);
837
960
  lines.push(`## GVD Evidence Pack`);
@@ -883,6 +1006,22 @@ export async function handleHtaDossierPrep(rawParams) {
883
1006
  audit = addAssumption(audit, `Regulatory Landscape section rendered for ${params.regulatory_landscape.length} comparator/region combination(s). Design log #26.`);
884
1007
  }
885
1008
  }
1009
+ // Design log #27: MFN Exposure section.
1010
+ // Auto-renders for hta_body:"amcp" regardless of basket_prices presence
1011
+ // (US dossier — MFN is in scope by default per CMS rulemaking; the
1012
+ // section then renders with "insufficient basket data" guidance).
1013
+ // Opt-in for other bodies via basket_prices presence.
1014
+ const isAmcp = MFN_AUTO_BODIES.has(params.hta_body);
1015
+ const isOptInWithPrices = MFN_OPTIN_BODIES.has(params.hta_body) &&
1016
+ params.mfn_context?.basket_prices !== undefined &&
1017
+ Object.keys(params.mfn_context.basket_prices).length > 0;
1018
+ if (isAmcp || isOptInWithPrices) {
1019
+ const mfnSection = renderMfnExposureSection(params.mfn_context ?? {}, params.hta_body);
1020
+ lines.push("---");
1021
+ lines.push(mfnSection);
1022
+ const supplied = Object.keys(params.mfn_context?.basket_prices ?? {}).length;
1023
+ audit = addAssumption(audit, `MFN Exposure section rendered for hta_body=${params.hta_body} with ${supplied} basket price${supplied === 1 ? "" : "s"} supplied. Design log #27.`);
1024
+ }
886
1025
  if (gaps.length > 0) {
887
1026
  lines.push(`---`);
888
1027
  lines.push(`## Gap Analysis`);
@@ -1 +1 @@
1
- {"version":3,"file":"htaDossierPrep.js","sourceRoot":"","sources":["../../src/tools/htaDossierPrep.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"htaDossierPrep.js","sourceRoot":"","sources":["../../src/tools/htaDossierPrep.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "heor-agent-mcp",
3
- "version": "1.10.2",
3
+ "version": "1.11.0",
4
4
  "mcpName": "io.github.neptun2000/heor-agent",
5
5
  "license": "MIT",
6
6
  "author": "mnaumov",