@noresponse/mcp 0.5.6 → 0.5.7
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 +9 -0
- package/bin/mcp-server.js +174 -15
- package/bin/mcp-server.js.map +24 -13
- package/manifest.json +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.5.7
|
|
4
|
+
|
|
5
|
+
* `SDK.assessments.create()`: `response` **Changed**
|
|
6
|
+
* `SDK.assessments.get()`: `response` **Changed**
|
|
7
|
+
* `SDK.assessments.query()`: `response.items[].risk` **Changed**
|
|
8
|
+
* `SDK.accounts.listChanged()`: `response.items[].risk.reasons[]` **Changed**
|
|
9
|
+
* `SDK.accounts.get()`: `response.risk.reasons[]` **Changed**
|
|
10
|
+
* `SDK.accounts.listAssessments()`: `response.items[].risk` **Changed**
|
|
11
|
+
|
|
3
12
|
## 0.5.6
|
|
4
13
|
|
|
5
14
|
* `SDK.assessments.create()`: `response.account.risk.reasons[].code` **Changed** (Breaking ⚠️)
|
package/bin/mcp-server.js
CHANGED
|
@@ -48104,9 +48104,9 @@ var init_config = __esm(() => {
|
|
|
48104
48104
|
SDK_METADATA = {
|
|
48105
48105
|
language: "typescript",
|
|
48106
48106
|
openapiDocVersion: "1",
|
|
48107
|
-
sdkVersion: "0.5.
|
|
48107
|
+
sdkVersion: "0.5.7",
|
|
48108
48108
|
genVersion: "internal",
|
|
48109
|
-
userAgent: "noresponse-sdk/mcp-typescript 0.5.
|
|
48109
|
+
userAgent: "noresponse-sdk/mcp-typescript 0.5.7 internal 1 @noresponse/mcp"
|
|
48110
48110
|
};
|
|
48111
48111
|
});
|
|
48112
48112
|
|
|
@@ -50272,6 +50272,29 @@ var init_accountdecisionsbyflow = __esm(() => {
|
|
|
50272
50272
|
}).describe("The decision for each flow: the account's score under that flow's thresholds. A flow the workspace has not set uses its account_creation thresholds, so the flows differ only where it set them. The flow of the current assessment is held while that flow's admission is held and the assessment's investigation has not completed.");
|
|
50273
50273
|
});
|
|
50274
50274
|
|
|
50275
|
+
// src/models/direction.ts
|
|
50276
|
+
var Direction$zodSchema;
|
|
50277
|
+
var init_direction = __esm(() => {
|
|
50278
|
+
init_zod();
|
|
50279
|
+
Direction$zodSchema = _enum([
|
|
50280
|
+
"raises",
|
|
50281
|
+
"lowers",
|
|
50282
|
+
"neutral"
|
|
50283
|
+
]);
|
|
50284
|
+
});
|
|
50285
|
+
|
|
50286
|
+
// src/models/impact.ts
|
|
50287
|
+
var Impact$zodSchema;
|
|
50288
|
+
var init_impact = __esm(() => {
|
|
50289
|
+
init_zod();
|
|
50290
|
+
Impact$zodSchema = _enum([
|
|
50291
|
+
"none",
|
|
50292
|
+
"low",
|
|
50293
|
+
"medium",
|
|
50294
|
+
"high"
|
|
50295
|
+
]);
|
|
50296
|
+
});
|
|
50297
|
+
|
|
50275
50298
|
// src/models/reasoncode.ts
|
|
50276
50299
|
var ReasonCode$zodSchema;
|
|
50277
50300
|
var init_reasoncode = __esm(() => {
|
|
@@ -50346,13 +50369,17 @@ var init_reasonidentifier = __esm(() => {
|
|
|
50346
50369
|
var AccountRiskReason$zodSchema;
|
|
50347
50370
|
var init_accountriskreason = __esm(() => {
|
|
50348
50371
|
init_zod();
|
|
50372
|
+
init_direction();
|
|
50373
|
+
init_impact();
|
|
50349
50374
|
init_reasoncode();
|
|
50350
50375
|
init_reasonidentifier();
|
|
50351
50376
|
AccountRiskReason$zodSchema = object({
|
|
50352
50377
|
code: ReasonCode$zodSchema.describe("A stable reason code. New codes may appear; ignore any you do not know."),
|
|
50378
|
+
direction: Direction$zodSchema,
|
|
50353
50379
|
identifier: ReasonIdentifier$zodSchema.optional().describe("The submitted identifier or client context field a reason concerns; absent when it concerns the whole assessment. Client context is a claimed hint, not a device fingerprint."),
|
|
50354
|
-
|
|
50355
|
-
|
|
50380
|
+
impact: Impact$zodSchema,
|
|
50381
|
+
weight: literal(0).default(0).optional().describe("Deprecated and always 0: the policy's weights are not published. It is sent so that SDK versions that require it keep reading reasons. Read direction and impact.")
|
|
50382
|
+
}).describe("One reason that fired. direction is whether it raises or lowers the score, or is neutral (informational, it moves nothing). impact is a coarse band of how much it moves the score: none for a neutral reason, otherwise low, medium or high.");
|
|
50356
50383
|
});
|
|
50357
50384
|
|
|
50358
50385
|
// src/models/accountrisk.ts
|
|
@@ -50363,7 +50390,7 @@ var init_accountrisk = __esm(() => {
|
|
|
50363
50390
|
init_accountriskreason();
|
|
50364
50391
|
AccountRisk$zodSchema = object({
|
|
50365
50392
|
decision: AccountDecision$zodSchema.describe("block when the score reached your block threshold (risk.block of the assessment), otherwise the assessment's recommendation. held only for a flow whose admission is held (settings flows.<flow>.admission), when the account's current assessment was made for that flow and its investigation has not completed (status partial): the final decision arrives as account.risk_changed when the investigation completes, decided by its score, or when the hold's deadline (hold_seconds after the assessment was created) passes first, as the flow's on_expiry action or the decision the evidence so far gives, whichever is stricter. Your application applies it."),
|
|
50366
|
-
reasons: array(AccountRiskReason$zodSchema).describe("Every reason that fired,
|
|
50393
|
+
reasons: array(AccountRiskReason$zodSchema).describe("Every reason that fired: risk-raising reasons first, then neutral, then risk-lowering, each strongest impact band first and then by code. The policy's numeric weights are kept private, so a reason carries only its direction and impact band."),
|
|
50367
50394
|
score: int().describe("0 (safe) to 100 (risky), as risk.score of the assessment.")
|
|
50368
50395
|
});
|
|
50369
50396
|
});
|
|
@@ -50607,6 +50634,58 @@ var init_riskdetailsbreachname = __esm(() => {
|
|
|
50607
50634
|
});
|
|
50608
50635
|
});
|
|
50609
50636
|
|
|
50637
|
+
// src/models/footprintfamily.ts
|
|
50638
|
+
var FootprintFamily$zodSchema;
|
|
50639
|
+
var init_footprintfamily = __esm(() => {
|
|
50640
|
+
init_zod();
|
|
50641
|
+
FootprintFamily$zodSchema = _enum([
|
|
50642
|
+
"account_presence",
|
|
50643
|
+
"auth_provider",
|
|
50644
|
+
"breach",
|
|
50645
|
+
"breach_abuse",
|
|
50646
|
+
"code_hosting"
|
|
50647
|
+
]).describe("The source-neutral kind of evidence: account_presence (an account found on a site), auth_provider (the account at your auth provider), breach (breach and credential tables), breach_abuse (abuse and fraud communities' tables) and code_hosting (a code hosting profile).");
|
|
50648
|
+
});
|
|
50649
|
+
|
|
50650
|
+
// src/models/identifier.ts
|
|
50651
|
+
var Identifier$zodSchema;
|
|
50652
|
+
var init_identifier = __esm(() => {
|
|
50653
|
+
init_zod();
|
|
50654
|
+
Identifier$zodSchema = _enum([
|
|
50655
|
+
"email",
|
|
50656
|
+
"username"
|
|
50657
|
+
]);
|
|
50658
|
+
});
|
|
50659
|
+
|
|
50660
|
+
// src/models/riskdetailseventkind.ts
|
|
50661
|
+
var RiskDetailsEventKind$zodSchema;
|
|
50662
|
+
var init_riskdetailseventkind = __esm(() => {
|
|
50663
|
+
init_zod();
|
|
50664
|
+
RiskDetailsEventKind$zodSchema = _enum([
|
|
50665
|
+
"created",
|
|
50666
|
+
"last_active",
|
|
50667
|
+
"breached"
|
|
50668
|
+
]);
|
|
50669
|
+
});
|
|
50670
|
+
|
|
50671
|
+
// src/models/riskdetailsevent.ts
|
|
50672
|
+
var RiskDetailsEvent$zodSchema;
|
|
50673
|
+
var init_riskdetailsevent = __esm(() => {
|
|
50674
|
+
init_zod();
|
|
50675
|
+
init_footprintfamily();
|
|
50676
|
+
init_identifier();
|
|
50677
|
+
init_riskdetailseventkind();
|
|
50678
|
+
RiskDetailsEvent$zodSchema = object({
|
|
50679
|
+
category: string2(),
|
|
50680
|
+
family: FootprintFamily$zodSchema.describe("The source-neutral kind of evidence: account_presence (an account found on a site), auth_provider (the account at your auth provider), breach (breach and credential tables), breach_abuse (abuse and fraud communities' tables) and code_hosting (a code hosting profile)."),
|
|
50681
|
+
identifier: Identifier$zodSchema,
|
|
50682
|
+
kind: RiskDetailsEventKind$zodSchema,
|
|
50683
|
+
month: int().optional(),
|
|
50684
|
+
site: string2(),
|
|
50685
|
+
year: int()
|
|
50686
|
+
});
|
|
50687
|
+
});
|
|
50688
|
+
|
|
50610
50689
|
// src/models/riskdetailsphonename.ts
|
|
50611
50690
|
var RiskDetailsPhoneName$zodSchema;
|
|
50612
50691
|
var init_riskdetailsphonename = __esm(() => {
|
|
@@ -50623,10 +50702,12 @@ var init_riskdetails = __esm(() => {
|
|
|
50623
50702
|
init_zod();
|
|
50624
50703
|
init_breach();
|
|
50625
50704
|
init_riskdetailsbreachname();
|
|
50705
|
+
init_riskdetailsevent();
|
|
50626
50706
|
init_riskdetailsphonename();
|
|
50627
50707
|
RiskDetails$zodSchema = object({
|
|
50628
50708
|
breach_names: array(RiskDetailsBreachName$zodSchema).optional().describe("Names found next to the identifiers in breach records, merged, with the number of distinct tables each was seen in."),
|
|
50629
50709
|
breaches: array(Breach$zodSchema).optional().describe("The matching breach tables, newest first, at most 50."),
|
|
50710
|
+
events: array(RiskDetailsEvent$zodSchema).optional().describe("The identity's dated footprint events, newest first, at most 100: the year and month, what happened (created, last_active, breached), the site, its category, the kind of evidence and the identifier it belongs to. No breach value: dates are coarsened to the month."),
|
|
50630
50711
|
phone_names: array(RiskDetailsPhoneName$zodSchema).optional()
|
|
50631
50712
|
}).describe("Detailed view only (response_mode=detailed, which needs the detailed scope); a standard answer leaves it out. Merged observations without provider, source, origin, raw breach record, value or score.");
|
|
50632
50713
|
});
|
|
@@ -50635,13 +50716,17 @@ var init_riskdetails = __esm(() => {
|
|
|
50635
50716
|
var RiskReason$zodSchema;
|
|
50636
50717
|
var init_riskreason = __esm(() => {
|
|
50637
50718
|
init_zod();
|
|
50719
|
+
init_direction();
|
|
50720
|
+
init_impact();
|
|
50638
50721
|
init_reasoncode();
|
|
50639
50722
|
init_reasonidentifier();
|
|
50640
50723
|
RiskReason$zodSchema = object({
|
|
50641
50724
|
code: ReasonCode$zodSchema.describe("A stable reason code. New codes may appear; ignore any you do not know."),
|
|
50725
|
+
direction: Direction$zodSchema,
|
|
50642
50726
|
identifier: ReasonIdentifier$zodSchema.optional().describe("The submitted identifier or client context field a reason concerns; absent when it concerns the whole assessment. Client context is a claimed hint, not a device fingerprint."),
|
|
50643
|
-
|
|
50644
|
-
|
|
50727
|
+
impact: Impact$zodSchema,
|
|
50728
|
+
weight: literal(0).default(0).optional().describe("Deprecated and always 0: the policy's weights are not published. It is sent so that SDK versions that require it keep reading reasons. Read direction and impact.")
|
|
50729
|
+
}).describe("One reason that fired. direction is whether it raises or lowers the score, or is neutral (informational, it moves nothing). impact is a coarse band of how much it moves the score: none for a neutral reason, otherwise low, medium or high.");
|
|
50645
50730
|
});
|
|
50646
50731
|
|
|
50647
50732
|
// src/models/consistencyvalue.ts
|
|
@@ -50681,6 +50766,78 @@ var init_consistency = __esm(() => {
|
|
|
50681
50766
|
}).describe("Cross-identifier agreement, computed from facts only. Every member is optional; absent makes no claim.");
|
|
50682
50767
|
});
|
|
50683
50768
|
|
|
50769
|
+
// src/models/agreement.ts
|
|
50770
|
+
var Agreement$zodSchema;
|
|
50771
|
+
var init_agreement = __esm(() => {
|
|
50772
|
+
init_zod();
|
|
50773
|
+
Agreement$zodSchema = _enum([
|
|
50774
|
+
"match",
|
|
50775
|
+
"partial",
|
|
50776
|
+
"mismatch"
|
|
50777
|
+
]);
|
|
50778
|
+
});
|
|
50779
|
+
|
|
50780
|
+
// src/models/attributeagreement.ts
|
|
50781
|
+
var AttributeAgreement$zodSchema;
|
|
50782
|
+
var init_attributeagreement = __esm(() => {
|
|
50783
|
+
init_zod();
|
|
50784
|
+
init_agreement();
|
|
50785
|
+
AttributeAgreement$zodSchema = object({
|
|
50786
|
+
agreement: Agreement$zodSchema,
|
|
50787
|
+
support: int(),
|
|
50788
|
+
values: int()
|
|
50789
|
+
}).describe("How far independent sources agree on one attribute: values is the number of distinct values reported, support the tables and profiles reporting any, and agreement match (one value), partial (the most reported value holds more than half the support) or mismatch. The values themselves are not served.");
|
|
50790
|
+
});
|
|
50791
|
+
|
|
50792
|
+
// src/models/footprintcoherence.ts
|
|
50793
|
+
var FootprintCoherence$zodSchema;
|
|
50794
|
+
var init_footprintcoherence = __esm(() => {
|
|
50795
|
+
init_zod();
|
|
50796
|
+
init_attributeagreement();
|
|
50797
|
+
FootprintCoherence$zodSchema = object({
|
|
50798
|
+
birth_date: AttributeAgreement$zodSchema.optional().describe("How far independent sources agree on one attribute: values is the number of distinct values reported, support the tables and profiles reporting any, and agreement match (one value), partial (the most reported value holds more than half the support) or mismatch. The values themselves are not served."),
|
|
50799
|
+
city: AttributeAgreement$zodSchema.optional().describe("How far independent sources agree on one attribute: values is the number of distinct values reported, support the tables and profiles reporting any, and agreement match (one value), partial (the most reported value holds more than half the support) or mismatch. The values themselves are not served."),
|
|
50800
|
+
company: AttributeAgreement$zodSchema.optional().describe("How far independent sources agree on one attribute: values is the number of distinct values reported, support the tables and profiles reporting any, and agreement match (one value), partial (the most reported value holds more than half the support) or mismatch. The values themselves are not served."),
|
|
50801
|
+
country: AttributeAgreement$zodSchema.optional().describe("How far independent sources agree on one attribute: values is the number of distinct values reported, support the tables and profiles reporting any, and agreement match (one value), partial (the most reported value holds more than half the support) or mismatch. The values themselves are not served."),
|
|
50802
|
+
gender: AttributeAgreement$zodSchema.optional().describe("How far independent sources agree on one attribute: values is the number of distinct values reported, support the tables and profiles reporting any, and agreement match (one value), partial (the most reported value holds more than half the support) or mismatch. The values themselves are not served."),
|
|
50803
|
+
name: AttributeAgreement$zodSchema.optional().describe("How far independent sources agree on one attribute: values is the number of distinct values reported, support the tables and profiles reporting any, and agreement match (one value), partial (the most reported value holds more than half the support) or mismatch. The values themselves are not served."),
|
|
50804
|
+
nationality: AttributeAgreement$zodSchema.optional().describe("How far independent sources agree on one attribute: values is the number of distinct values reported, support the tables and profiles reporting any, and agreement match (one value), partial (the most reported value holds more than half the support) or mismatch. The values themselves are not served."),
|
|
50805
|
+
social: AttributeAgreement$zodSchema.optional().describe("How far independent sources agree on one attribute: values is the number of distinct values reported, support the tables and profiles reporting any, and agreement match (one value), partial (the most reported value holds more than half the support) or mismatch. The values themselves are not served."),
|
|
50806
|
+
website: AttributeAgreement$zodSchema.optional().describe("How far independent sources agree on one attribute: values is the number of distinct values reported, support the tables and profiles reporting any, and agreement match (one value), partial (the most reported value holds more than half the support) or mismatch. The values themselves are not served."),
|
|
50807
|
+
zip: AttributeAgreement$zodSchema.optional().describe("How far independent sources agree on one attribute: values is the number of distinct values reported, support the tables and profiles reporting any, and agreement match (one value), partial (the most reported value holds more than half the support) or mismatch. The values themselves are not served.")
|
|
50808
|
+
});
|
|
50809
|
+
});
|
|
50810
|
+
|
|
50811
|
+
// src/models/footprinttimeline.ts
|
|
50812
|
+
var FootprintTimeline$zodSchema;
|
|
50813
|
+
var init_footprinttimeline = __esm(() => {
|
|
50814
|
+
init_zod();
|
|
50815
|
+
init_footprintfamily();
|
|
50816
|
+
FootprintTimeline$zodSchema = object({
|
|
50817
|
+
families: array(FootprintFamily$zodSchema),
|
|
50818
|
+
first_seen_year: int(),
|
|
50819
|
+
last_active_year: int().optional(),
|
|
50820
|
+
last_seen_year: int(),
|
|
50821
|
+
sites: int(),
|
|
50822
|
+
span_years: int()
|
|
50823
|
+
}).describe("One identifier's dated footprint across every source: the first and last year any event was seen, the years between them, the latest year a source dated activity (omitted when none did), how many distinct sites and which kinds of evidence saw it.");
|
|
50824
|
+
});
|
|
50825
|
+
|
|
50826
|
+
// src/models/footprint.ts
|
|
50827
|
+
var Footprint$zodSchema;
|
|
50828
|
+
var init_footprint = __esm(() => {
|
|
50829
|
+
init_zod();
|
|
50830
|
+
init_footprintcoherence();
|
|
50831
|
+
init_footprintfamily();
|
|
50832
|
+
init_footprinttimeline();
|
|
50833
|
+
Footprint$zodSchema = object({
|
|
50834
|
+
coherence: FootprintCoherence$zodSchema.optional(),
|
|
50835
|
+
email: FootprintTimeline$zodSchema.optional().describe("One identifier's dated footprint across every source: the first and last year any event was seen, the years between them, the latest year a source dated activity (omitted when none did), how many distinct sites and which kinds of evidence saw it."),
|
|
50836
|
+
families: array(FootprintFamily$zodSchema),
|
|
50837
|
+
username: FootprintTimeline$zodSchema.optional().describe("One identifier's dated footprint across every source: the first and last year any event was seen, the years between them, the latest year a source dated activity (omitted when none did), how many distinct sites and which kinds of evidence saw it.")
|
|
50838
|
+
}).describe("How long and how widely the signup's email and username have existed, and how far independent sources agree on the person behind them, in years and counts only. families are the kinds of evidence that found either identifier. Omitted when nothing found them: a footprint lookup that failed makes no claim, and absence is no_digital_footprint's to state.");
|
|
50839
|
+
});
|
|
50840
|
+
|
|
50684
50841
|
// src/models/ipsummarytype.ts
|
|
50685
50842
|
var IpSummaryType$zodSchema;
|
|
50686
50843
|
var init_ipsummarytype = __esm(() => {
|
|
@@ -50779,6 +50936,7 @@ var RiskSummary$zodSchema;
|
|
|
50779
50936
|
var init_risksummary = __esm(() => {
|
|
50780
50937
|
init_zod();
|
|
50781
50938
|
init_consistency();
|
|
50939
|
+
init_footprint();
|
|
50782
50940
|
init_ipsummary();
|
|
50783
50941
|
init_risksummaryemail();
|
|
50784
50942
|
init_risksummaryphone();
|
|
@@ -50786,6 +50944,7 @@ var init_risksummary = __esm(() => {
|
|
|
50786
50944
|
RiskSummary$zodSchema = object({
|
|
50787
50945
|
consistency: Consistency$zodSchema.optional().describe("Cross-identifier agreement, computed from facts only. Every member is optional; absent makes no claim."),
|
|
50788
50946
|
email: RiskSummaryEmail$zodSchema.optional(),
|
|
50947
|
+
footprint: Footprint$zodSchema.optional().describe("How long and how widely the signup's email and username have existed, and how far independent sources agree on the person behind them, in years and counts only. families are the kinds of evidence that found either identifier. Omitted when nothing found them: a footprint lookup that failed makes no claim, and absence is no_digital_footprint's to state."),
|
|
50789
50948
|
ip: IpSummary$zodSchema.optional().describe("Facts about the submitted IP from the offline database and this workspace's own recent assessments. Every member is optional; absent makes no claim."),
|
|
50790
50949
|
phone: RiskSummaryPhone$zodSchema.optional(),
|
|
50791
50950
|
username: RiskSummaryUsername$zodSchema.optional()
|
|
@@ -50811,12 +50970,12 @@ var init_risk = __esm(() => {
|
|
|
50811
50970
|
coverage: RiskCoverage$zodSchema.describe("Sources counted by state, not named."),
|
|
50812
50971
|
details: RiskDetails$zodSchema.optional().describe("Detailed view only (response_mode=detailed, which needs the detailed scope); a standard answer leaves it out. Merged observations without provider, source, origin, raw breach record, value or score."),
|
|
50813
50972
|
policy_basis: literal("heuristic_unvalidated").default("heuristic_unvalidated").optional().describe("Labels the v0 policy as hand-authored and not statistically validated."),
|
|
50814
|
-
policy_version: string2().describe("Version of the hand-authored heuristic
|
|
50815
|
-
reasons: array(RiskReason$zodSchema).describe("Every reason that fired,
|
|
50973
|
+
policy_version: string2().describe("Version of the hand-authored heuristic policy that produced the recommendation, for example 'risk-2026-10.7'. A workspace threshold override adds a +t<N> suffix, e.g. 'risk-2026-10.7+t3'."),
|
|
50974
|
+
reasons: array(RiskReason$zodSchema).describe("Every reason that fired: risk-raising reasons first, then neutral, then risk-lowering, each strongest impact band first and then by code. The policy's numeric weights are kept private, so a reason carries only its direction and impact band."),
|
|
50816
50975
|
recommendation: Recommendation$zodSchema.describe("The recommended action: allow, step_up or review. Your application applies it."),
|
|
50817
50976
|
score: int(),
|
|
50818
50977
|
summary: RiskSummary$zodSchema.optional().describe("A few typed facts per identifier. Every fact is optional: absent means the evidence did not answer and makes no claim, while false or 0 is a definite answer. Lanes that do not exist yet leave their members absent.")
|
|
50819
|
-
}).describe("The one risk decision for this event. score is 0 (safe) to 100 (risky)
|
|
50978
|
+
}).describe("The one risk decision for this event. score is 0 (safe) to 100 (risky), set by the reasons that fired under a hand-set, versioned heuristic policy. Each reason carries its direction and impact band; the policy's weights are not published. Every answer with a recommendation carries it, and the top-level recommendation equals risk.recommendation. It names no source or provider.");
|
|
50820
50979
|
});
|
|
50821
50980
|
|
|
50822
50981
|
// src/models/failurereason.ts
|
|
@@ -51077,10 +51236,10 @@ var init_assessmentdetail = __esm(() => {
|
|
|
51077
51236
|
expires_at: string2().describe("After this instant the assessment is no longer served: GET /v1/assessments/{assessment_id} answers 404 and it leaves the account history. It is created_at plus your retention period at creation (default and maximum 365 days) and is fixed per record: a later revision keeps it, and a new assessment for the same account starts its own clock. If you later shorten retention, the effective expiry becomes created_at plus the shorter of the two periods."),
|
|
51078
51237
|
incomplete_sources: array(IncompleteSource$zodSchema).describe("The lanes that did not settle, each listed once with a reason; lanes, not sources. In a detailed view a lane is listed exactly when one of its signals did not settle; a standard view carries no signals to match."),
|
|
51079
51238
|
policy_basis: literal("heuristic_unvalidated").default("heuristic_unvalidated").optional().describe("Labels the v0 policy as hand-authored and not statistically validated."),
|
|
51080
|
-
policy_version: string2().describe("Version of the hand-authored heuristic
|
|
51239
|
+
policy_version: string2().describe("Version of the hand-authored heuristic policy that produced the recommendation, for example 'risk-2026-10.7'. A workspace threshold override adds a +t<N> suffix, e.g. 'risk-2026-10.7+t3'."),
|
|
51081
51240
|
recommendation: Recommendation$zodSchema.optional().describe("The recommended action: allow, step_up or review. Your application applies it."),
|
|
51082
51241
|
request_id: string2().optional().describe("An optional provider correlation id, echoed back. It is not an idempotency key. Refuses an exact-shape JWT or a bare 40, 64 or 128 character hex digest; a UUID is accepted."),
|
|
51083
|
-
risk: Risk$zodSchema.optional().describe("The one risk decision for this event. score is 0 (safe) to 100 (risky)
|
|
51242
|
+
risk: Risk$zodSchema.optional().describe("The one risk decision for this event. score is 0 (safe) to 100 (risky), set by the reasons that fired under a hand-set, versioned heuristic policy. Each reason carries its direction and impact band; the policy's weights are not published. Every answer with a recommendation carries it, and the top-level recommendation equals risk.recommendation. It names no source or provider."),
|
|
51084
51243
|
schema_version: literal("1").default("1").optional().describe("Version of the body shape."),
|
|
51085
51244
|
signals: array(Signal$zodSchema).optional().describe("Detailed view only (response_mode=detailed, which needs the detailed scope): a standard answer omits signals[], and a detailed one always carries it, possibly empty. The body does not name its mode, so that rule is the serving gate's; the schema states the half it can: an answer with risk.details is a detailed view and carries signals[]. At most one signal per (type, source_id, identifier)."),
|
|
51086
51245
|
status: Status$zodSchema.describe("complete: final; nothing is still running. A lane that failed or missed its 10 s deadline stays listed in incomplete_sources, and confidence is lower. partial: a recommendation exists and at least one lane is still running or did not settle (see incomplete_sources). pending: nothing usable before the deadline; no recommendation yet, poll or wait for the webhook."),
|
|
@@ -56226,7 +56385,7 @@ endpoint.verification sends a signed challenge now and answers whether the endpo
|
|
|
56226
56385
|
function createMCPServer(deps) {
|
|
56227
56386
|
const server = new McpServer({
|
|
56228
56387
|
name: "NoResponse",
|
|
56229
|
-
version: "0.5.
|
|
56388
|
+
version: "0.5.7"
|
|
56230
56389
|
});
|
|
56231
56390
|
const getClient = deps.getSDK || (() => new NoResponseCore({
|
|
56232
56391
|
security: deps.security,
|
|
@@ -64963,7 +65122,7 @@ var routes = buildRouteMap({
|
|
|
64963
65122
|
var app = buildApplication(routes, {
|
|
64964
65123
|
name: "mcp",
|
|
64965
65124
|
versionInfo: {
|
|
64966
|
-
currentVersion: "0.5.
|
|
65125
|
+
currentVersion: "0.5.7"
|
|
64967
65126
|
}
|
|
64968
65127
|
});
|
|
64969
65128
|
run(app, process3.argv.slice(2), buildContext(process3));
|
|
@@ -64971,5 +65130,5 @@ export {
|
|
|
64971
65130
|
app
|
|
64972
65131
|
};
|
|
64973
65132
|
|
|
64974
|
-
//# debugId=
|
|
65133
|
+
//# debugId=F1F49377161C671264756E2164756E21
|
|
64975
65134
|
//# sourceMappingURL=mcp-server.js.map
|