@noresponse/mcp 0.6.12 → 0.6.14

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/bin/mcp-server.js CHANGED
@@ -48117,9 +48117,9 @@ var init_config = __esm(() => {
48117
48117
  SDK_METADATA = {
48118
48118
  language: "typescript",
48119
48119
  openapiDocVersion: "1",
48120
- sdkVersion: "0.6.12",
48120
+ sdkVersion: "0.6.14",
48121
48121
  genVersion: "internal",
48122
- userAgent: "noresponse-sdk/mcp-typescript 0.6.12 internal 1 @noresponse/mcp"
48122
+ userAgent: "noresponse-sdk/mcp-typescript 0.6.14 internal 1 @noresponse/mcp"
48123
48123
  };
48124
48124
  });
48125
48125
 
@@ -50994,6 +50994,19 @@ var init_risk = __esm(() => {
50994
50994
  }).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.");
50995
50995
  });
50996
50996
 
50997
+ // src/models/sentidentifiers.ts
50998
+ var SentIdentifiers$zodSchema;
50999
+ var init_sentidentifiers = __esm(() => {
51000
+ init_zod();
51001
+ SentIdentifiers$zodSchema = object({
51002
+ email: string2().optional().describe("identifiers.email as the request sent it."),
51003
+ ip: string2().optional().describe("identifiers.ip as the request sent it."),
51004
+ name: string2().optional().describe("identifiers.name as the request sent it, before NFC normalisation."),
51005
+ phone: string2().optional().describe("identifiers.phone as the request sent it."),
51006
+ username: string2().optional().describe("identifiers.username as the request sent it.")
51007
+ }).describe("The identifiers an assessment was sent: each member of the request's identifiers object exactly as received, before the server normalised it (the email domain keeps its case, the name its Unicode form). A member the request did not send is absent. NoResponse keeps them encrypted under the workspace's own key, does not index or log them, and deletes them with the assessment: on DELETE of the assessment or its account, at its expires_at, and with the workspace.");
51008
+ });
51009
+
50997
51010
  // src/models/failurereason.ts
50998
51011
  var FailureReason$zodSchema;
50999
51012
  var init_failurereason = __esm(() => {
@@ -51239,6 +51252,7 @@ var init_assessmentdetail = __esm(() => {
51239
51252
  init_incompletesource();
51240
51253
  init_recommendation();
51241
51254
  init_risk();
51255
+ init_sentidentifiers();
51242
51256
  init_signal();
51243
51257
  init_status();
51244
51258
  AssessmentDetail$zodSchema = object({
@@ -51250,6 +51264,7 @@ var init_assessmentdetail = __esm(() => {
51250
51264
  confidence: Confidence$zodSchema.describe("Ordinal confidence in the recommendation under the current policy: low, medium, high or unavailable."),
51251
51265
  created_at: string2().describe("When the assessment was created. Fixed for the life of the assessment: every revision carries the same created_at."),
51252
51266
  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."),
51267
+ identifiers: SentIdentifiers$zodSchema.optional().describe("The identifiers an assessment was sent: each member of the request's identifiers object exactly as received, before the server normalised it (the email domain keeps its case, the name its Unicode form). A member the request did not send is absent. NoResponse keeps them encrypted under the workspace's own key, does not index or log them, and deletes them with the assessment: on DELETE of the assessment or its account, at its expires_at, and with the workspace."),
51253
51268
  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."),
51254
51269
  policy_basis: literal("heuristic_unvalidated").default("heuristic_unvalidated").optional().describe("Labels the v0 policy as hand-authored and not statistically validated."),
51255
51270
  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'."),
@@ -52868,7 +52883,7 @@ var init_accountsExport2 = __esm(() => {
52868
52883
  name: "export_account",
52869
52884
  description: `Export an account
52870
52885
 
52871
- Retrieve one consistent snapshot of retained customer-accessible records, including assessment revisions, account decisions, feedback, key associations, enforcements and request diagnostics. Secrets, restricted source information, other customers' data and legacy free-text notes are excluded. The same standard/detailed permissions apply. An export exceeding 10000 records or 8 MiB returns export_too_large without a partial result. Historical decisions that were not captured are identified as an exclusion.`,
52886
+ Retrieve one consistent snapshot of retained customer-accessible records, including assessment revisions, account decisions, feedback, key associations, enforcements and request diagnostics. Each assessment revision's detail.identifiers holds the identifiers that assessment was sent, exactly as received. Secrets, restricted source information, other customers' data and legacy free-text notes are excluded. The same standard/detailed permissions apply. An export exceeding 10000 records or 8 MiB returns export_too_large without a partial result. Historical decisions that were not captured are identified as an exclusion.`,
52872
52887
  annotations: {
52873
52888
  title: "Export this account's retained customer-accessible records",
52874
52889
  destructiveHint: false,
@@ -53206,7 +53221,7 @@ var init_accountsListAssessments2 = __esm(() => {
53206
53221
  name: "list_account_assessments",
53207
53222
  description: `Page through one account's unexpired assessments.
53208
53223
 
53209
- The account's history: the same page as POST /v1/assessments/query for this account_id, newest first, each at its latest assessment_version. Requires the history scope. Read-only and safe to retry. An account with no assessments answers 200 with empty items. The cursor is opaque and bound to your workspace and the account; a tampered or expired cursor answers 400 invalid_cursor. response_mode=detailed needs the detailed scope. The account_id travels in the URL; use POST /v1/assessments/query to keep it out of access logs.`,
53224
+ The account's history: the same page as POST /v1/assessments/query for this account_id, newest first, each at its latest assessment_version. Requires the history scope. Read-only and safe to retry. An account with no assessments answers 200 with empty items. The cursor is opaque and bound to your workspace and the account; a tampered or expired cursor answers 400 invalid_cursor. response_mode=detailed needs the detailed scope. Each item's identifiers holds the identifiers its assessment was sent, exactly as received. The account_id travels in the URL; use POST /v1/assessments/query to keep it out of access logs.`,
53210
53225
  annotations: {
53211
53226
  title: "Page through an account's assessments",
53212
53227
  destructiveHint: false,
@@ -54430,6 +54445,202 @@ Retrieve the account decision at one recorded risk version. The answer uses the
54430
54445
  };
54431
54446
  });
54432
54447
 
54448
+ // src/models/aggregatedimension.ts
54449
+ var AggregateDimension$zodSchema;
54450
+ var init_aggregatedimension = __esm(() => {
54451
+ init_zod();
54452
+ AggregateDimension$zodSchema = _enum([
54453
+ "decision",
54454
+ "flow",
54455
+ "recommendation",
54456
+ "band",
54457
+ "reason",
54458
+ "lane",
54459
+ "country",
54460
+ "asn",
54461
+ "list_match"
54462
+ ]).describe("decision, recommendation and band: the first answer's. flow: the assessment's. list_match: the action of the list entry that decided the account when it was first answered. reason: a reason the first answer fired, with its impact band. lane: an evidence lane the first answer listed in incomplete_sources. country and asn: the submitted IP's, from the IP data.");
54463
+ });
54464
+
54465
+ // src/models/answerrevision.ts
54466
+ var AnswerRevision$zodSchema;
54467
+ var init_answerrevision = __esm(() => {
54468
+ init_zod();
54469
+ AnswerRevision$zodSchema = _enum([
54470
+ "latest",
54471
+ "first"
54472
+ ]).describe("Which answer of each assessment the filters describe: latest, the latest stored revision, or first, the first answer, as served when the assessment was first answered (POST /v1/assessments/aggregate counts first answers). A cell of an aggregate drills down to POST /v1/assessments/search with the same filters, revision first and the cell's bucket as from and to.");
54473
+ });
54474
+
54475
+ // src/models/bucket.ts
54476
+ var Bucket$zodSchema;
54477
+ var init_bucket = __esm(() => {
54478
+ init_zod();
54479
+ Bucket$zodSchema = _enum([
54480
+ "hour",
54481
+ "day",
54482
+ "week"
54483
+ ]).describe("The period each count covers, in UTC; a week starts on Monday.");
54484
+ });
54485
+
54486
+ // src/models/decision.ts
54487
+ var Decision$zodSchema;
54488
+ var init_decision = __esm(() => {
54489
+ init_zod();
54490
+ Decision$zodSchema = _enum([
54491
+ "allow",
54492
+ "step_up",
54493
+ "review",
54494
+ "block"
54495
+ ]).describe("An assessment's own decision: block when its stored risk.block is true, otherwise its recommendation. It is not the account's decision or held-admission state.");
54496
+ });
54497
+
54498
+ // src/models/assessmentaggregaterequest.ts
54499
+ var AssessmentAggregateRequestMetric$zodSchema, AssessmentAggregateRequest$zodSchema;
54500
+ var init_assessmentaggregaterequest = __esm(() => {
54501
+ init_zod();
54502
+ init_aggregatedimension();
54503
+ init_answerrevision();
54504
+ init_bucket();
54505
+ init_decision();
54506
+ init_flow();
54507
+ init_recommendation();
54508
+ init_status();
54509
+ AssessmentAggregateRequestMetric$zodSchema = _enum([
54510
+ "count",
54511
+ "score_histogram",
54512
+ "late_flips"
54513
+ ]);
54514
+ AssessmentAggregateRequest$zodSchema = object({
54515
+ bucket: Bucket$zodSchema.describe("The period each count covers, in UTC; a week starts on Monday."),
54516
+ decision: Decision$zodSchema.optional().describe("An assessment's own decision: block when its stored risk.block is true, otherwise its recommendation. It is not the account's decision or held-admission state."),
54517
+ flow: Flow$zodSchema.optional().describe("The event an assessment is made for: account_creation (a user creates an account), login (a user returns to an existing account) or purchase (a payment or a credit grant). The account's risk is reported with the decision for this flow."),
54518
+ from: string2().describe("The first bucket's start."),
54519
+ group_by: array(AggregateDimension$zodSchema).optional().describe("At most two dimensions to count by, of which at most one is reason, lane, country or asn. An assessment counts once in each of its reasons and incomplete lanes, so those groups can add up to more than the bucket's count."),
54520
+ limit: int().default(20).describe("The most groups answered: the largest over the whole range, then by value. groups_truncated says when there were more."),
54521
+ metrics: array(AssessmentAggregateRequestMetric$zodSchema).optional().describe("count: each bucket's count and groups. score_histogram: first answers by flow and 5-point score bucket. late_flips: changes of an assessment's account decision for its flow after its first answer, by from, to and delay."),
54522
+ recommendation: Recommendation$zodSchema.optional().describe("The recommended action: allow, step_up or review. Your application applies it."),
54523
+ revision: AnswerRevision$zodSchema.optional().describe("Which answer of each assessment the filters describe: latest, the latest stored revision, or first, the first answer, as served when the assessment was first answered (POST /v1/assessments/aggregate counts first answers). A cell of an aggregate drills down to POST /v1/assessments/search with the same filters, revision first and the cell's bucket as from and to."),
54524
+ status: Status$zodSchema.optional().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."),
54525
+ to: string2().describe("The end, excluded: the start of the bucket after the last.")
54526
+ }).describe("Count this environment's assessments created in [from,to) by bucket, from counts kept as each assessment is first answered, not by scanning assessments. Each assessment counts once, by its first answer (the answer served when it was first answered); later revisions and late results do not count it again, and late_flips counts its later account decision changes. from and to start a bucket (an hour, a UTC day, or a week from Monday 00:00 UTC), cover at most 366 days (31 for hour buckets) and from is inside the retention period. The filters are POST /v1/assessments/search's and describe the first answer, so a cell drills down to search with the same filters, revision first and the cell's bucket as from and to. Counts hold no identifier and stay when an assessment or account is deleted or erased; they expire with retention and go with the workspace. Reasons are counted by code and impact band, not by weight. No Idempotency-Key.");
54527
+ });
54528
+
54529
+ // src/funcs/assessmentsAggregate.ts
54530
+ function assessmentsAggregate(client$, request, options) {
54531
+ return new APIPromise($do14(client$, request, options));
54532
+ }
54533
+ async function $do14(client$, request, options) {
54534
+ const parsed$ = safeParse2(request, (value$) => AssessmentAggregateRequest$zodSchema.parse(value$), "Input validation failed");
54535
+ if (!parsed$.ok) {
54536
+ return [parsed$, { status: "invalid" }];
54537
+ }
54538
+ const payload$ = parsed$.value;
54539
+ const body$ = encodeJSON("body", payload$, { explode: true });
54540
+ const path$ = pathToFunc("/v1/assessments/aggregate")();
54541
+ const headers$ = new Headers(compactMap({
54542
+ "Content-Type": "application/json",
54543
+ Accept: options?.acceptHeaderOverride || "application/json;q=1, application/problem+json;q=0"
54544
+ }));
54545
+ const securityInput = await extractSecurity(client$._options.security);
54546
+ const requestSecurity = resolveGlobalSecurity(securityInput);
54547
+ const context = {
54548
+ options: client$._options,
54549
+ baseURL: options?.serverURL ?? client$._baseURL ?? "",
54550
+ operationID: "aggregateAssessments",
54551
+ oAuth2Scopes: null,
54552
+ resolvedSecurity: requestSecurity,
54553
+ securitySource: client$._options.security,
54554
+ retryConfig: options?.retries || client$._options.retryConfig || {
54555
+ strategy: "backoff",
54556
+ backoff: {
54557
+ initialInterval: 500,
54558
+ maxInterval: 8000,
54559
+ exponent: 2,
54560
+ maxElapsedTime: 30000
54561
+ },
54562
+ retryConnectionErrors: true
54563
+ },
54564
+ retryCodes: options?.retryCodes || [
54565
+ "408",
54566
+ "429",
54567
+ "5XX"
54568
+ ]
54569
+ };
54570
+ const requestRes = client$._createRequest(context, {
54571
+ security: requestSecurity,
54572
+ method: "POST",
54573
+ baseURL: options?.serverURL,
54574
+ path: path$,
54575
+ headers: headers$,
54576
+ body: body$,
54577
+ userAgent: client$._options.userAgent,
54578
+ timeoutMs: options?.timeoutMs || client$._options.timeoutMs || -1
54579
+ }, options);
54580
+ if (!requestRes.ok) {
54581
+ return [requestRes, { status: "invalid" }];
54582
+ }
54583
+ const req$ = requestRes.value;
54584
+ const doResult = await client$._do(req$, {
54585
+ context,
54586
+ errorCodes: [],
54587
+ retryConfig: context.retryConfig,
54588
+ retryCodes: context.retryCodes
54589
+ });
54590
+ if (!doResult.ok) {
54591
+ return [doResult, { status: "request-error", request: req$ }];
54592
+ }
54593
+ return [doResult, {
54594
+ status: "complete",
54595
+ request: req$,
54596
+ response: doResult.value
54597
+ }];
54598
+ }
54599
+ var init_assessmentsAggregate = __esm(() => {
54600
+ init_encodings();
54601
+ init_primitives();
54602
+ init_schemas3();
54603
+ init_security();
54604
+ init_url();
54605
+ init_assessmentaggregaterequest();
54606
+ init_async();
54607
+ });
54608
+
54609
+ // src/mcp-server/tools/assessmentsAggregate.ts
54610
+ var args14, tool$assessmentsAggregate;
54611
+ var init_assessmentsAggregate2 = __esm(() => {
54612
+ init_assessmentsAggregate();
54613
+ init_assessmentaggregaterequest();
54614
+ init_tools();
54615
+ args14 = {
54616
+ request: AssessmentAggregateRequest$zodSchema
54617
+ };
54618
+ tool$assessmentsAggregate = {
54619
+ name: "aggregate_assessments",
54620
+ description: `Count assessments by time, decision and reason
54621
+
54622
+ Count this environment's assessments created in [from,to) by hour, day or week, grouped by up to two of decision, flow, recommendation, band, reason, lane, country, asn and list_match. Each assessment counts once, by its first answer; late results do not count it again and appear in late_flips. Optional metrics add a score histogram per flow and late account decision changes. from and to start a bucket and cover at most 366 days (31 for hour buckets) inside the retention period. The filters are search's and describe the first answer: send them to search with revision first to list a cell's assessments. Counts hold no identifier, stay when an assessment or account is deleted, and report reasons by code and impact band. No Idempotency-Key.`,
54623
+ annotations: {
54624
+ title: "Count assessments by time, decision and reason",
54625
+ destructiveHint: false,
54626
+ idempotentHint: true,
54627
+ openWorldHint: false,
54628
+ readOnlyHint: true
54629
+ },
54630
+ args: args14,
54631
+ tool: async (client, args, ctx) => {
54632
+ const [result] = await assessmentsAggregate(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
54633
+ if (!result.ok) {
54634
+ return {
54635
+ content: [{ type: "text", text: result.error.message }],
54636
+ isError: true
54637
+ };
54638
+ }
54639
+ return formatResult(result.value);
54640
+ }
54641
+ };
54642
+ });
54643
+
54433
54644
  // src/models/accountbindingrequest.ts
54434
54645
  var AccountBindingRequest$zodSchema;
54435
54646
  var init_accountbindingrequest = __esm(() => {
@@ -54480,9 +54691,9 @@ var init_bindprovisionalaccountop = __esm(() => {
54480
54691
 
54481
54692
  // src/funcs/assessmentsBindAccount.ts
54482
54693
  function assessmentsBindAccount(client$, request, options) {
54483
- return new APIPromise($do14(client$, request, options));
54694
+ return new APIPromise($do15(client$, request, options));
54484
54695
  }
54485
- async function $do14(client$, request, options) {
54696
+ async function $do15(client$, request, options) {
54486
54697
  const parsed$ = safeParse2(request, (value$) => BindProvisionalAccountRequest$zodSchema.parse(value$), "Input validation failed");
54487
54698
  if (!parsed$.ok) {
54488
54699
  return [parsed$, { status: "invalid" }];
@@ -54565,12 +54776,12 @@ var init_assessmentsBindAccount = __esm(() => {
54565
54776
  });
54566
54777
 
54567
54778
  // src/mcp-server/tools/assessmentsBindAccount.ts
54568
- var args14, tool$assessmentsBindAccount;
54779
+ var args15, tool$assessmentsBindAccount;
54569
54780
  var init_assessmentsBindAccount2 = __esm(() => {
54570
54781
  init_assessmentsBindAccount();
54571
54782
  init_bindprovisionalaccountop();
54572
54783
  init_tools();
54573
- args14 = {
54784
+ args15 = {
54574
54785
  request: BindProvisionalAccountRequest$zodSchema
54575
54786
  };
54576
54787
  tool$assessmentsBindAccount = {
@@ -54585,7 +54796,7 @@ One-time association to an opaque stable customer account. The assessment is its
54585
54796
  openWorldHint: false,
54586
54797
  readOnlyHint: false
54587
54798
  },
54588
- args: args14,
54799
+ args: args15,
54589
54800
  tool: async (client, args, ctx) => {
54590
54801
  const [result] = await assessmentsBindAccount(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
54591
54802
  if (!result.ok) {
@@ -54787,9 +54998,9 @@ var init_createassessmentop = __esm(() => {
54787
54998
 
54788
54999
  // src/funcs/assessmentsCreate.ts
54789
55000
  function assessmentsCreate(client$, request, options) {
54790
- return new APIPromise($do15(client$, request, options));
55001
+ return new APIPromise($do16(client$, request, options));
54791
55002
  }
54792
- async function $do15(client$, request, options) {
55003
+ async function $do16(client$, request, options) {
54793
55004
  const parsed$ = safeParse2(request, (value$) => CreateAssessmentRequest$zodSchema.parse(value$), "Input validation failed");
54794
55005
  if (!parsed$.ok) {
54795
55006
  return [parsed$, { status: "invalid" }];
@@ -54867,19 +55078,19 @@ var init_assessmentsCreate = __esm(() => {
54867
55078
  });
54868
55079
 
54869
55080
  // src/mcp-server/tools/assessmentsCreate.ts
54870
- var args15, tool$assessmentsCreate;
55081
+ var args16, tool$assessmentsCreate;
54871
55082
  var init_assessmentsCreate2 = __esm(() => {
54872
55083
  init_assessmentsCreate();
54873
55084
  init_createassessmentop();
54874
55085
  init_tools();
54875
- args15 = {
55086
+ args16 = {
54876
55087
  request: CreateAssessmentRequest$zodSchema
54877
55088
  };
54878
55089
  tool$assessmentsCreate = {
54879
55090
  name: "create_assessment",
54880
55091
  description: `Assess identifiers for a signup or gateway decision.
54881
55092
 
54882
- Assesses one account creation, login or purchase (flow) and answers with the account's one current risk: account.risk.decision is the decision for this flow (allow, step_up, review or block, where block means your block threshold was reached), and detail holds this assessment's own facts. depth sets how long the answer waits for sources: quick waits only for the fast ones (500 ms), full for the whole budget (3000 ms at most); it defaults to full for account_creation and purchase and quick for login. 200 carries complete or partial, 202 carries pending with Location and Retry-After. While the account's first assessment is pending, account is absent: apply your own fallback for that, 429, 503 or a timeout. NoResponse blocks nothing itself; you decide. Requires the assess scope. Idempotency-Key is optional in the SDK and is bound to the body for 24 hours: the same key with the same body replays the latest assessment with Idempotent-Replayed: true and starts no new work; the same key with a different body answers 409 idempotency_key_reused. response_mode defaults to standard; detailed needs the detailed scope.`,
55093
+ Assesses one account creation, login or purchase (flow) and answers with the account's one current risk: account.risk.decision is the decision for this flow (allow, step_up, review or block, where block means your block threshold was reached), and detail holds this assessment's own facts. depth sets how long the answer waits for sources: quick waits only for the fast ones (500 ms), full for the whole budget (3000 ms at most); it defaults to full for account_creation and purchase and quick for login. 200 carries complete or partial, 202 carries pending with Location and Retry-After. While the account's first assessment is pending, account is absent: apply your own fallback for that, 429, 503 or a timeout. NoResponse blocks nothing itself; you decide. Requires the assess scope. Idempotency-Key is optional in the SDK and is bound to the body for 24 hours: the same key with the same body replays the latest assessment with Idempotent-Replayed: true and starts no new work; the same key with a different body answers 409 idempotency_key_reused. response_mode defaults to standard; detailed needs the detailed scope. The answer leaves out detail.identifiers: you hold what you sent, and a key with the history scope gets them back with GET.`,
54883
55094
  annotations: {
54884
55095
  title: "Assess an account creation, login or purchase",
54885
55096
  destructiveHint: false,
@@ -54887,7 +55098,7 @@ Assesses one account creation, login or purchase (flow) and answers with the acc
54887
55098
  openWorldHint: false,
54888
55099
  readOnlyHint: false
54889
55100
  },
54890
- args: args15,
55101
+ args: args16,
54891
55102
  tool: async (client, args, ctx) => {
54892
55103
  const [result] = await assessmentsCreate(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
54893
55104
  if (!result.ok) {
@@ -54964,9 +55175,9 @@ var init_deleteassessmentop = __esm(() => {
54964
55175
 
54965
55176
  // src/funcs/assessmentsDelete.ts
54966
55177
  function assessmentsDelete(client$, request, options) {
54967
- return new APIPromise($do16(client$, request, options));
55178
+ return new APIPromise($do17(client$, request, options));
54968
55179
  }
54969
- async function $do16(client$, request, options) {
55180
+ async function $do17(client$, request, options) {
54970
55181
  const parsed$ = safeParse2(request, (value$) => DeleteAssessmentRequest$zodSchema.parse(value$), "Input validation failed");
54971
55182
  if (!parsed$.ok) {
54972
55183
  return [parsed$, { status: "invalid" }];
@@ -55048,12 +55259,12 @@ var init_assessmentsDelete = __esm(() => {
55048
55259
  });
55049
55260
 
55050
55261
  // src/mcp-server/tools/assessmentsDelete.ts
55051
- var args16, tool$assessmentsDelete;
55262
+ var args17, tool$assessmentsDelete;
55052
55263
  var init_assessmentsDelete2 = __esm(() => {
55053
55264
  init_assessmentsDelete();
55054
55265
  init_deleteassessmentop();
55055
55266
  init_tools();
55056
- args16 = {
55267
+ args17 = {
55057
55268
  request: DeleteAssessmentRequest$zodSchema
55058
55269
  };
55059
55270
  tool$assessmentsDelete = {
@@ -55068,7 +55279,7 @@ Deletes one assessment in the environment of your key, with its versions, eviden
55068
55279
  openWorldHint: false,
55069
55280
  readOnlyHint: false
55070
55281
  },
55071
- args: args16,
55282
+ args: args17,
55072
55283
  tool: async (client, args, ctx) => {
55073
55284
  const [result] = await assessmentsDelete(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55074
55285
  if (!result.ok) {
@@ -55083,19 +55294,19 @@ Deletes one assessment in the environment of your key, with its versions, eviden
55083
55294
  });
55084
55295
 
55085
55296
  // src/mcp-server/tools/assessmentsGet.ts
55086
- var args17, tool$assessmentsGet;
55297
+ var args18, tool$assessmentsGet;
55087
55298
  var init_assessmentsGet2 = __esm(() => {
55088
55299
  init_assessmentsGet();
55089
55300
  init_getassessmentop();
55090
55301
  init_tools();
55091
- args17 = {
55302
+ args18 = {
55092
55303
  request: GetAssessmentRequest$zodSchema
55093
55304
  };
55094
55305
  tool$assessmentsGet = {
55095
55306
  name: "get_assessment",
55096
55307
  description: `Poll the authoritative assessment of one assessment.
55097
55308
 
55098
- Returns the highest assessment_version, with the account's current risk. Requires the assess or history scope. While status is pending, or partial with a source still running, the response carries Retry-After; poll no faster than it says. Another workspace's assessment, an unknown or expired assessment and a malformed assessment_id all answer 404 not_found. response_mode=detailed needs the detailed scope.`,
55309
+ Returns the highest assessment_version, with the account's current risk. Requires the assess or history scope. While status is pending, or partial with a source still running, the response carries Retry-After; poll no faster than it says. Another workspace's assessment, an unknown or expired assessment and a malformed assessment_id all answer 404 not_found. response_mode=detailed needs the detailed scope. A key with the history scope also gets detail.identifiers, the identifiers the assessment was sent, exactly as received.`,
55099
55310
  annotations: {
55100
55311
  title: "Get an assessment",
55101
55312
  destructiveHint: false,
@@ -55103,7 +55314,7 @@ Returns the highest assessment_version, with the account's current risk. Require
55103
55314
  openWorldHint: false,
55104
55315
  readOnlyHint: true
55105
55316
  },
55106
- args: args17,
55317
+ args: args18,
55107
55318
  tool: async (client, args, ctx) => {
55108
55319
  const [result] = await assessmentsGet(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55109
55320
  if (!result.ok) {
@@ -55132,9 +55343,9 @@ var init_assessmentquery = __esm(() => {
55132
55343
 
55133
55344
  // src/funcs/assessmentsQuery.ts
55134
55345
  function assessmentsQuery(client$, request, options) {
55135
- return new APIPromise($do17(client$, request, options));
55346
+ return new APIPromise($do18(client$, request, options));
55136
55347
  }
55137
- async function $do17(client$, request, options) {
55348
+ async function $do18(client$, request, options) {
55138
55349
  const parsed$ = safeParse2(request, (value$) => AssessmentQuery$zodSchema.parse(value$), "Input validation failed");
55139
55350
  if (!parsed$.ok) {
55140
55351
  return [parsed$, { status: "invalid" }];
@@ -55211,19 +55422,19 @@ var init_assessmentsQuery = __esm(() => {
55211
55422
  });
55212
55423
 
55213
55424
  // src/mcp-server/tools/assessmentsQuery.ts
55214
- var args18, tool$assessmentsQuery;
55425
+ var args19, tool$assessmentsQuery;
55215
55426
  var init_assessmentsQuery2 = __esm(() => {
55216
55427
  init_assessmentsQuery();
55217
55428
  init_assessmentquery();
55218
55429
  init_tools();
55219
- args18 = {
55430
+ args19 = {
55220
55431
  request: AssessmentQuery$zodSchema
55221
55432
  };
55222
55433
  tool$assessmentsQuery = {
55223
55434
  name: "query_assessments",
55224
55435
  description: `Page through one account's unexpired assessments.
55225
55436
 
55226
- History is a POST with account_id in the body so an account identifier stays out of URLs and access logs. Requires the history scope. Read-only and safe to retry. Newest first, each at its latest assessment_version. An account with no assessments answers 200 with empty items. The cursor is opaque and bound to your workspace and the account; a tampered or expired cursor answers 400 invalid_cursor. response_mode=detailed needs the detailed scope.`,
55437
+ History is a POST with account_id in the body so an account identifier stays out of URLs and access logs. Requires the history scope. Read-only and safe to retry. Newest first, each at its latest assessment_version. An account with no assessments answers 200 with empty items. The cursor is opaque and bound to your workspace and the account; a tampered or expired cursor answers 400 invalid_cursor. response_mode=detailed needs the detailed scope. Each item's identifiers holds the identifiers its assessment was sent, exactly as received.`,
55227
55438
  annotations: {
55228
55439
  title: "List an account's assessments",
55229
55440
  destructiveHint: false,
@@ -55231,7 +55442,7 @@ History is a POST with account_id in the body so an account identifier stays out
55231
55442
  openWorldHint: false,
55232
55443
  readOnlyHint: true
55233
55444
  },
55234
- args: args18,
55445
+ args: args19,
55235
55446
  tool: async (client, args, ctx) => {
55236
55447
  const [result] = await assessmentsQuery(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55237
55448
  if (!result.ok) {
@@ -55313,9 +55524,9 @@ var init_recordassessmentoutcomeop = __esm(() => {
55313
55524
 
55314
55525
  // src/funcs/assessmentsRecordOutcome.ts
55315
55526
  function assessmentsRecordOutcome(client$, request, options) {
55316
- return new APIPromise($do18(client$, request, options));
55527
+ return new APIPromise($do19(client$, request, options));
55317
55528
  }
55318
- async function $do18(client$, request, options) {
55529
+ async function $do19(client$, request, options) {
55319
55530
  const parsed$ = safeParse2(request, (value$) => RecordAssessmentOutcomeRequest$zodSchema.parse(value$), "Input validation failed");
55320
55531
  if (!parsed$.ok) {
55321
55532
  return [parsed$, { status: "invalid" }];
@@ -55399,12 +55610,12 @@ var init_assessmentsRecordOutcome = __esm(() => {
55399
55610
  });
55400
55611
 
55401
55612
  // src/mcp-server/tools/assessmentsRecordOutcome.ts
55402
- var args19, tool$assessmentsRecordOutcome;
55613
+ var args20, tool$assessmentsRecordOutcome;
55403
55614
  var init_assessmentsRecordOutcome2 = __esm(() => {
55404
55615
  init_assessmentsRecordOutcome();
55405
55616
  init_recordassessmentoutcomeop();
55406
55617
  init_tools();
55407
- args19 = {
55618
+ args20 = {
55408
55619
  request: RecordAssessmentOutcomeRequest$zodSchema
55409
55620
  };
55410
55621
  tool$assessmentsRecordOutcome = {
@@ -55419,7 +55630,7 @@ Records what you later learned about an assessed account: confirmed_abuse, accou
55419
55630
  openWorldHint: false,
55420
55631
  readOnlyHint: false
55421
55632
  },
55422
- args: args19,
55633
+ args: args20,
55423
55634
  tool: async (client, args, ctx) => {
55424
55635
  const [result] = await assessmentsRecordOutcome(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55425
55636
  if (!result.ok) {
@@ -55475,9 +55686,9 @@ var init_getassessmentversionop = __esm(() => {
55475
55686
 
55476
55687
  // src/funcs/assessmentsRetrieveVersion.ts
55477
55688
  function assessmentsRetrieveVersion(client$, request, options) {
55478
- return new APIPromise($do19(client$, request, options));
55689
+ return new APIPromise($do20(client$, request, options));
55479
55690
  }
55480
- async function $do19(client$, request, options) {
55691
+ async function $do20(client$, request, options) {
55481
55692
  const parsed$ = safeParse2(request, (value$) => GetAssessmentVersionRequest$zodSchema.parse(value$), "Input validation failed");
55482
55693
  if (!parsed$.ok) {
55483
55694
  return [parsed$, { status: "invalid" }];
@@ -55567,19 +55778,19 @@ var init_assessmentsRetrieveVersion = __esm(() => {
55567
55778
  });
55568
55779
 
55569
55780
  // src/mcp-server/tools/assessmentsRetrieveVersion.ts
55570
- var args20, tool$assessmentsRetrieveVersion;
55781
+ var args21, tool$assessmentsRetrieveVersion;
55571
55782
  var init_assessmentsRetrieveVersion2 = __esm(() => {
55572
55783
  init_assessmentsRetrieveVersion();
55573
55784
  init_getassessmentversionop();
55574
55785
  init_tools();
55575
- args20 = {
55786
+ args21 = {
55576
55787
  request: GetAssessmentVersionRequest$zodSchema
55577
55788
  };
55578
55789
  tool$assessmentsRetrieveVersion = {
55579
55790
  name: "get_assessment_version",
55580
55791
  description: `Retrieve an exact assessment revision
55581
55792
 
55582
- Retrieve a retained assessment version with its original decision, policy, flow and depth. This response excludes the current account decision. Current retention and response-mode permissions still apply.`,
55793
+ Retrieve a retained assessment version with its original decision, policy, flow and depth. This response excludes the current account decision. Current retention and response-mode permissions still apply. detail.identifiers holds the identifiers the assessment was sent, exactly as received.`,
55583
55794
  annotations: {
55584
55795
  title: "Read an exact assessment revision",
55585
55796
  destructiveHint: false,
@@ -55587,7 +55798,7 @@ Retrieve a retained assessment version with its original decision, policy, flow
55587
55798
  openWorldHint: false,
55588
55799
  readOnlyHint: true
55589
55800
  },
55590
- args: args20,
55801
+ args: args21,
55591
55802
  tool: async (client, args, ctx) => {
55592
55803
  const [result] = await assessmentsRetrieveVersion(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55593
55804
  if (!result.ok) {
@@ -55601,22 +55812,11 @@ Retrieve a retained assessment version with its original decision, policy, flow
55601
55812
  };
55602
55813
  });
55603
55814
 
55604
- // src/models/decision.ts
55605
- var Decision$zodSchema;
55606
- var init_decision = __esm(() => {
55607
- init_zod();
55608
- Decision$zodSchema = _enum([
55609
- "allow",
55610
- "step_up",
55611
- "review",
55612
- "block"
55613
- ]).describe("The decision of the assessment's latest stored revision: block when its stored risk.block is true, otherwise its recommendation. This is not the account's current decision or held-admission state. Combined with recommendation using AND.");
55614
- });
55615
-
55616
55815
  // src/models/assessmentsearchrequest.ts
55617
55816
  var AssessmentSearchRequest$zodSchema;
55618
55817
  var init_assessmentsearchrequest = __esm(() => {
55619
55818
  init_zod();
55819
+ init_answerrevision();
55620
55820
  init_decision();
55621
55821
  init_flow();
55622
55822
  init_recommendation();
@@ -55625,12 +55825,13 @@ var init_assessmentsearchrequest = __esm(() => {
55625
55825
  AssessmentSearchRequest$zodSchema = object({
55626
55826
  account_id: string2().optional().describe("Your own opaque identifier for the account being checked, scoped to your workspace. Use an id you mint, with no direct identifier (email, phone, name or national id) in it. '|' is accepted so an Auth0 user id such as 'auth0|64abc' passes unchanged; '@', '+', '$' and whitespace are refused by the pattern, as is an exact-shape JWT; a hex digest such as a SHA-256 is allowed, because hashing an internal id is a common pseudonymous scheme. A value such as '07700900123' or 'jane.doe.gmail.com' cannot be told apart from an opaque id. It travels in bodies, and in a URL only as the path segment of GET /v1/accounts/{account_id} and its /assessments. An assessment requested by a provider hook at pre_registration, which has no account yet, carries the server-issued account_id pre: followed by its assessment_id."),
55627
55827
  cursor: string2().optional().describe("Opaque, expiring cursor bound to this environment, operation and every filter. Keep the filters unchanged."),
55628
- decision: Decision$zodSchema.optional().describe("The decision of the assessment's latest stored revision: block when its stored risk.block is true, otherwise its recommendation. This is not the account's current decision or held-admission state. Combined with recommendation using AND."),
55828
+ decision: Decision$zodSchema.optional().describe("An assessment's own decision: block when its stored risk.block is true, otherwise its recommendation. It is not the account's decision or held-admission state."),
55629
55829
  flow: Flow$zodSchema.optional().describe("The event an assessment is made for: account_creation (a user creates an account), login (a user returns to an existing account) or purchase (a payment or a credit grant). The account's risk is reported with the decision for this flow."),
55630
55830
  from: string2(),
55631
55831
  limit: int().default(20),
55632
55832
  recommendation: Recommendation$zodSchema.optional().describe("The recommended action: allow, step_up or review. Your application applies it."),
55633
55833
  response_mode: ResponseMode$zodSchema.optional().describe("standard returns the consolidated risk response; detailed adds merged provider-neutral facts when the key has detailed scope. There is no raw mode."),
55834
+ revision: AnswerRevision$zodSchema.optional().describe("Which answer of each assessment the filters describe: latest, the latest stored revision, or first, the first answer, as served when the assessment was first answered (POST /v1/assessments/aggregate counts first answers). A cell of an aggregate drills down to POST /v1/assessments/search with the same filters, revision first and the cell's bucket as from and to."),
55634
55835
  status: Status$zodSchema.optional().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."),
55635
55836
  to: string2()
55636
55837
  }).describe("Search retained assessments created in [from,to), over at most 366 days. Filters use each assessment decision, rather than the current account decision. Results can change between pages. Keep the assessment version to retrieve the exact decision later. This read does not require an idempotency key.");
@@ -55638,9 +55839,9 @@ var init_assessmentsearchrequest = __esm(() => {
55638
55839
 
55639
55840
  // src/funcs/assessmentsSearch.ts
55640
55841
  function assessmentsSearch(client$, request, options) {
55641
- return new APIPromise($do20(client$, request, options));
55842
+ return new APIPromise($do21(client$, request, options));
55642
55843
  }
55643
- async function $do20(client$, request, options) {
55844
+ async function $do21(client$, request, options) {
55644
55845
  const parsed$ = safeParse2(request, (value$) => AssessmentSearchRequest$zodSchema.parse(value$), "Input validation failed");
55645
55846
  if (!parsed$.ok) {
55646
55847
  return [parsed$, { status: "invalid" }];
@@ -55717,19 +55918,19 @@ var init_assessmentsSearch = __esm(() => {
55717
55918
  });
55718
55919
 
55719
55920
  // src/mcp-server/tools/assessmentsSearch.ts
55720
- var args21, tool$assessmentsSearch;
55921
+ var args22, tool$assessmentsSearch;
55721
55922
  var init_assessmentsSearch2 = __esm(() => {
55722
55923
  init_assessmentsSearch();
55723
55924
  init_assessmentsearchrequest();
55724
55925
  init_tools();
55725
- args21 = {
55926
+ args22 = {
55726
55927
  request: AssessmentSearchRequest$zodSchema
55727
55928
  };
55728
55929
  tool$assessmentsSearch = {
55729
55930
  name: "search_assessments",
55730
55931
  description: `Search assessments across this environment
55731
55932
 
55732
- Search retained assessments created in [from,to), over at most 366 days. Filters use each assessment decision, rather than the current account decision. Results can change between pages. Keep the assessment version to retrieve the exact decision later. This read does not require an idempotency key.`,
55933
+ Search retained assessments created in [from,to), over at most 366 days. Filters use each assessment decision, rather than the current account decision. Results can change between pages. Keep the assessment version to retrieve the exact decision later. Each item's detail.identifiers holds the identifiers its assessment was sent, exactly as received. This read does not require an idempotency key.`,
55733
55934
  annotations: {
55734
55935
  title: "Search assessments in this environment",
55735
55936
  destructiveHint: false,
@@ -55737,7 +55938,7 @@ Search retained assessments created in [from,to), over at most 366 days. Filters
55737
55938
  openWorldHint: false,
55738
55939
  readOnlyHint: true
55739
55940
  },
55740
- args: args21,
55941
+ args: args22,
55741
55942
  tool: async (client, args, ctx) => {
55742
55943
  const [result] = await assessmentsSearch(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55743
55944
  if (!result.ok) {
@@ -55787,9 +55988,9 @@ var init_integrationrequest = __esm(() => {
55787
55988
 
55788
55989
  // src/funcs/integrationsCreate.ts
55789
55990
  function integrationsCreate(client$, request, options) {
55790
- return new APIPromise($do21(client$, request, options));
55991
+ return new APIPromise($do22(client$, request, options));
55791
55992
  }
55792
- async function $do21(client$, request, options) {
55993
+ async function $do22(client$, request, options) {
55793
55994
  const parsed$ = safeParse2(request, (value$) => IntegrationRequest$zodSchema.parse(value$), "Input validation failed");
55794
55995
  if (!parsed$.ok) {
55795
55996
  return [parsed$, { status: "invalid" }];
@@ -55853,12 +56054,12 @@ var init_integrationsCreate = __esm(() => {
55853
56054
  });
55854
56055
 
55855
56056
  // src/mcp-server/tools/integrationsCreate.ts
55856
- var args22, tool$integrationsCreate;
56057
+ var args23, tool$integrationsCreate;
55857
56058
  var init_integrationsCreate2 = __esm(() => {
55858
56059
  init_integrationsCreate();
55859
56060
  init_integrationrequest();
55860
56061
  init_tools();
55861
- args22 = {
56062
+ args23 = {
55862
56063
  request: IntegrationRequest$zodSchema
55863
56064
  };
55864
56065
  tool$integrationsCreate = {
@@ -55873,7 +56074,7 @@ Registers a WorkOS, Auth0 or Supabase integration and returns its hosted endpoin
55873
56074
  openWorldHint: false,
55874
56075
  readOnlyHint: false
55875
56076
  },
55876
- args: args22,
56077
+ args: args23,
55877
56078
  tool: async (client, args, ctx) => {
55878
56079
  const [result] = await integrationsCreate(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55879
56080
  if (!result.ok) {
@@ -55923,9 +56124,9 @@ var init_deleteintegrationop = __esm(() => {
55923
56124
 
55924
56125
  // src/funcs/integrationsDelete.ts
55925
56126
  function integrationsDelete(client$, request, options) {
55926
- return new APIPromise($do22(client$, request, options));
56127
+ return new APIPromise($do23(client$, request, options));
55927
56128
  }
55928
- async function $do22(client$, request, options) {
56129
+ async function $do23(client$, request, options) {
55929
56130
  const parsed$ = safeParse2(request, (value$) => DeleteIntegrationRequest$zodSchema.parse(value$), "Input validation failed");
55930
56131
  if (!parsed$.ok) {
55931
56132
  return [parsed$, { status: "invalid" }];
@@ -56007,12 +56208,12 @@ var init_integrationsDelete = __esm(() => {
56007
56208
  });
56008
56209
 
56009
56210
  // src/mcp-server/tools/integrationsDelete.ts
56010
- var args23, tool$integrationsDelete;
56211
+ var args24, tool$integrationsDelete;
56011
56212
  var init_integrationsDelete2 = __esm(() => {
56012
56213
  init_integrationsDelete();
56013
56214
  init_deleteintegrationop();
56014
56215
  init_tools();
56015
- args23 = {
56216
+ args24 = {
56016
56217
  request: DeleteIntegrationRequest$zodSchema
56017
56218
  };
56018
56219
  tool$integrationsDelete = {
@@ -56027,7 +56228,7 @@ Removes the integration and its secrets; its endpoint answers 404 from then on,
56027
56228
  openWorldHint: false,
56028
56229
  readOnlyHint: false
56029
56230
  },
56030
- args: args23,
56231
+ args: args24,
56031
56232
  tool: async (client, args, ctx) => {
56032
56233
  const [result] = await integrationsDelete(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
56033
56234
  if (!result.ok) {
@@ -56043,9 +56244,9 @@ Removes the integration and its secrets; its endpoint answers 404 from then on,
56043
56244
 
56044
56245
  // src/funcs/integrationsList.ts
56045
56246
  function integrationsList(client$, options) {
56046
- return new APIPromise($do23(client$, options));
56247
+ return new APIPromise($do24(client$, options));
56047
56248
  }
56048
- async function $do23(client$, options) {
56249
+ async function $do24(client$, options) {
56049
56250
  const path$ = pathToFunc("/v1/integrations")();
56050
56251
  const headers$ = new Headers(compactMap({
56051
56252
  Accept: options?.acceptHeaderOverride || "application/json;q=1, application/problem+json;q=0"
@@ -56208,9 +56409,9 @@ var init_rotateintegrationsecretop = __esm(() => {
56208
56409
 
56209
56410
  // src/funcs/integrationsRotate.ts
56210
56411
  function integrationsRotate(client$, request, options) {
56211
- return new APIPromise($do24(client$, request, options));
56412
+ return new APIPromise($do25(client$, request, options));
56212
56413
  }
56213
- async function $do24(client$, request, options) {
56414
+ async function $do25(client$, request, options) {
56214
56415
  const parsed$ = safeParse2(request, (value$) => RotateIntegrationSecretRequest$zodSchema.parse(value$), "Input validation failed");
56215
56416
  if (!parsed$.ok) {
56216
56417
  return [parsed$, { status: "invalid" }];
@@ -56280,12 +56481,12 @@ var init_integrationsRotate = __esm(() => {
56280
56481
  });
56281
56482
 
56282
56483
  // src/mcp-server/tools/integrationsRotate.ts
56283
- var args24, tool$integrationsRotate;
56484
+ var args25, tool$integrationsRotate;
56284
56485
  var init_integrationsRotate2 = __esm(() => {
56285
56486
  init_integrationsRotate();
56286
56487
  init_rotateintegrationsecretop();
56287
56488
  init_tools();
56288
- args24 = {
56489
+ args25 = {
56289
56490
  request: RotateIntegrationSecretRequest$zodSchema
56290
56491
  };
56291
56492
  tool$integrationsRotate = {
@@ -56300,7 +56501,7 @@ For Auth0, send {} and the answer's secret is the new shared secret, shown once.
56300
56501
  openWorldHint: false,
56301
56502
  readOnlyHint: false
56302
56503
  },
56303
- args: args24,
56504
+ args: args25,
56304
56505
  tool: async (client, args, ctx) => {
56305
56506
  const [result] = await integrationsRotate(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
56306
56507
  if (!result.ok) {
@@ -56415,9 +56616,9 @@ var init_listkeysop = __esm(() => {
56415
56616
 
56416
56617
  // src/funcs/keysList.ts
56417
56618
  function keysList(client$, request, options) {
56418
- return new APIPromise($do25(client$, request, options));
56619
+ return new APIPromise($do26(client$, request, options));
56419
56620
  }
56420
- async function $do25(client$, request, options) {
56621
+ async function $do26(client$, request, options) {
56421
56622
  const parsed$ = safeParse2(request, (value$) => ListKeysRequest$zodSchema.parse(value$), "Input validation failed");
56422
56623
  if (!parsed$.ok) {
56423
56624
  return [parsed$, { status: "invalid" }];
@@ -56499,12 +56700,12 @@ var init_keysList = __esm(() => {
56499
56700
  });
56500
56701
 
56501
56702
  // src/mcp-server/tools/keysList.ts
56502
- var args25, tool$keysList;
56703
+ var args26, tool$keysList;
56503
56704
  var init_keysList2 = __esm(() => {
56504
56705
  init_keysList();
56505
56706
  init_listkeysop();
56506
56707
  init_tools();
56507
- args25 = {
56708
+ args26 = {
56508
56709
  request: ListKeysRequest$zodSchema
56509
56710
  };
56510
56711
  tool$keysList = {
@@ -56519,7 +56720,7 @@ Lists the keys of the signing key's environment, newest first, at most 200, revo
56519
56720
  openWorldHint: false,
56520
56721
  readOnlyHint: true
56521
56722
  },
56522
- args: args25,
56723
+ args: args26,
56523
56724
  tool: async (client, args, ctx) => {
56524
56725
  const [result] = await keysList(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
56525
56726
  if (!result.ok) {
@@ -56573,9 +56774,9 @@ var init_revokekeyop = __esm(() => {
56573
56774
 
56574
56775
  // src/funcs/keysRevoke.ts
56575
56776
  function keysRevoke(client$, request, options) {
56576
- return new APIPromise($do26(client$, request, options));
56777
+ return new APIPromise($do27(client$, request, options));
56577
56778
  }
56578
- async function $do26(client$, request, options) {
56779
+ async function $do27(client$, request, options) {
56579
56780
  const parsed$ = safeParse2(request, (value$) => RevokeKeyRequest$zodSchema.parse(value$), "Input validation failed");
56580
56781
  if (!parsed$.ok) {
56581
56782
  return [parsed$, { status: "invalid" }];
@@ -56661,12 +56862,12 @@ var init_keysRevoke = __esm(() => {
56661
56862
  });
56662
56863
 
56663
56864
  // src/mcp-server/tools/keysRevoke.ts
56664
- var args26, tool$keysRevoke;
56865
+ var args27, tool$keysRevoke;
56665
56866
  var init_keysRevoke2 = __esm(() => {
56666
56867
  init_keysRevoke();
56667
56868
  init_revokekeyop();
56668
56869
  init_tools();
56669
- args26 = {
56870
+ args27 = {
56670
56871
  request: RevokeKeyRequest$zodSchema
56671
56872
  };
56672
56873
  tool$keysRevoke = {
@@ -56681,7 +56882,7 @@ Revokes a key of the signing key's environment at once: its next request answers
56681
56882
  openWorldHint: false,
56682
56883
  readOnlyHint: false
56683
56884
  },
56684
- args: args26,
56885
+ args: args27,
56685
56886
  tool: async (client, args, ctx) => {
56686
56887
  const [result] = await keysRevoke(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
56687
56888
  if (!result.ok) {
@@ -56792,9 +56993,9 @@ var init_createlistentryop = __esm(() => {
56792
56993
 
56793
56994
  // src/funcs/listsCreate.ts
56794
56995
  function listsCreate(client$, request, options) {
56795
- return new APIPromise($do27(client$, request, options));
56996
+ return new APIPromise($do28(client$, request, options));
56796
56997
  }
56797
- async function $do27(client$, request, options) {
56998
+ async function $do28(client$, request, options) {
56798
56999
  const parsed$ = safeParse2(request, (value$) => CreateListEntryRequest$zodSchema.parse(value$), "Input validation failed");
56799
57000
  if (!parsed$.ok) {
56800
57001
  return [parsed$, { status: "invalid" }];
@@ -56881,12 +57082,12 @@ var init_listsCreate = __esm(() => {
56881
57082
  });
56882
57083
 
56883
57084
  // src/mcp-server/tools/listsCreate.ts
56884
- var args27, tool$listsCreate;
57085
+ var args28, tool$listsCreate;
56885
57086
  var init_listsCreate2 = __esm(() => {
56886
57087
  init_listsCreate();
56887
57088
  init_createlistentryop();
56888
57089
  init_tools();
56889
- args27 = {
57090
+ args28 = {
56890
57091
  request: CreateListEntryRequest$zodSchema
56891
57092
  };
56892
57093
  tool$listsCreate = {
@@ -56901,7 +57102,7 @@ Adds an exact email (kind email) or an email domain (kind email_domain) to the s
56901
57102
  openWorldHint: false,
56902
57103
  readOnlyHint: false
56903
57104
  },
56904
- args: args27,
57105
+ args: args28,
56905
57106
  tool: async (client, args, ctx) => {
56906
57107
  const [result] = await listsCreate(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
56907
57108
  if (!result.ok) {
@@ -56954,9 +57155,9 @@ var init_deletelistentryop = __esm(() => {
56954
57155
 
56955
57156
  // src/funcs/listsDelete.ts
56956
57157
  function listsDelete(client$, request, options) {
56957
- return new APIPromise($do28(client$, request, options));
57158
+ return new APIPromise($do29(client$, request, options));
56958
57159
  }
56959
- async function $do28(client$, request, options) {
57160
+ async function $do29(client$, request, options) {
56960
57161
  const parsed$ = safeParse2(request, (value$) => DeleteListEntryRequest$zodSchema.parse(value$), "Input validation failed");
56961
57162
  if (!parsed$.ok) {
56962
57163
  return [parsed$, { status: "invalid" }];
@@ -57046,12 +57247,12 @@ var init_listsDelete = __esm(() => {
57046
57247
  });
57047
57248
 
57048
57249
  // src/mcp-server/tools/listsDelete.ts
57049
- var args28, tool$listsDelete;
57250
+ var args29, tool$listsDelete;
57050
57251
  var init_listsDelete2 = __esm(() => {
57051
57252
  init_listsDelete();
57052
57253
  init_deletelistentryop();
57053
57254
  init_tools();
57054
- args28 = {
57255
+ args29 = {
57055
57256
  request: DeleteListEntryRequest$zodSchema
57056
57257
  };
57057
57258
  tool$listsDelete = {
@@ -57066,7 +57267,7 @@ Removes an entry from the signing key's environment's list and re-decides the ac
57066
57267
  openWorldHint: false,
57067
57268
  readOnlyHint: false
57068
57269
  },
57069
- args: args28,
57270
+ args: args29,
57070
57271
  tool: async (client, args, ctx) => {
57071
57272
  const [result] = await listsDelete(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
57072
57273
  if (!result.ok) {
@@ -57131,9 +57332,9 @@ var init_listlistentriesop = __esm(() => {
57131
57332
 
57132
57333
  // src/funcs/listsList.ts
57133
57334
  function listsList(client$, request, options) {
57134
- return new APIPromise($do29(client$, request, options));
57335
+ return new APIPromise($do30(client$, request, options));
57135
57336
  }
57136
- async function $do29(client$, request, options) {
57337
+ async function $do30(client$, request, options) {
57137
57338
  const parsed$ = safeParse2(request, (value$) => ListListEntriesRequest$zodSchema.parse(value$), "Input validation failed");
57138
57339
  if (!parsed$.ok) {
57139
57340
  return [parsed$, { status: "invalid" }];
@@ -57219,12 +57420,12 @@ var init_listsList = __esm(() => {
57219
57420
  });
57220
57421
 
57221
57422
  // src/mcp-server/tools/listsList.ts
57222
- var args29, tool$listsList;
57423
+ var args30, tool$listsList;
57223
57424
  var init_listsList2 = __esm(() => {
57224
57425
  init_listsList();
57225
57426
  init_listlistentriesop();
57226
57427
  init_tools();
57227
- args29 = {
57428
+ args30 = {
57228
57429
  request: ListListEntriesRequest$zodSchema
57229
57430
  };
57230
57431
  tool$listsList = {
@@ -57239,7 +57440,7 @@ Lists every entry of the signing key's environment's list, newest first: each an
57239
57440
  openWorldHint: false,
57240
57441
  readOnlyHint: true
57241
57442
  },
57242
- args: args29,
57443
+ args: args30,
57243
57444
  tool: async (client, args, ctx) => {
57244
57445
  const [result] = await listsList(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
57245
57446
  if (!result.ok) {
@@ -57309,9 +57510,9 @@ var init_listrequestdiagnosticsop = __esm(() => {
57309
57510
 
57310
57511
  // src/funcs/requestsList.ts
57311
57512
  function requestsList(client$, request, options) {
57312
- return new APIPromise($do30(client$, request, options));
57513
+ return new APIPromise($do31(client$, request, options));
57313
57514
  }
57314
- async function $do30(client$, request, options) {
57515
+ async function $do31(client$, request, options) {
57315
57516
  const parsed$ = safeParse2(request, (value$) => ListRequestDiagnosticsRequest$zodSchema.parse(value$), "Input validation failed");
57316
57517
  if (!parsed$.ok) {
57317
57518
  return [parsed$, { status: "invalid" }];
@@ -57397,12 +57598,12 @@ var init_requestsList = __esm(() => {
57397
57598
  });
57398
57599
 
57399
57600
  // src/mcp-server/tools/requestsList.ts
57400
- var args30, tool$requestsList;
57601
+ var args31, tool$requestsList;
57401
57602
  var init_requestsList2 = __esm(() => {
57402
57603
  init_requestsList();
57403
57604
  init_listrequestdiagnosticsop();
57404
57605
  init_tools();
57405
- args30 = {
57606
+ args31 = {
57406
57607
  request: ListRequestDiagnosticsRequest$zodSchema
57407
57608
  };
57408
57609
  tool$requestsList = {
@@ -57417,7 +57618,7 @@ Search authenticated request attempts by time, route, status or request correlat
57417
57618
  openWorldHint: false,
57418
57619
  readOnlyHint: true
57419
57620
  },
57420
- args: args30,
57621
+ args: args31,
57421
57622
  tool: async (client, args, ctx) => {
57422
57623
  const [result] = await requestsList(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
57423
57624
  if (!result.ok) {
@@ -57567,9 +57768,9 @@ var init_getsettingsop = __esm(() => {
57567
57768
 
57568
57769
  // src/funcs/settingsGet.ts
57569
57770
  function settingsGet(client$, request, options) {
57570
- return new APIPromise($do31(client$, request, options));
57771
+ return new APIPromise($do32(client$, request, options));
57571
57772
  }
57572
- async function $do31(client$, request, options) {
57773
+ async function $do32(client$, request, options) {
57573
57774
  const parsed$ = safeParse2(request, (value$) => GetSettingsRequest$zodSchema.parse(value$), "Input validation failed");
57574
57775
  if (!parsed$.ok) {
57575
57776
  return [parsed$, { status: "invalid" }];
@@ -57655,12 +57856,12 @@ var init_settingsGet = __esm(() => {
57655
57856
  });
57656
57857
 
57657
57858
  // src/mcp-server/tools/settingsGet.ts
57658
- var args31, tool$settingsGet;
57859
+ var args32, tool$settingsGet;
57659
57860
  var init_settingsGet2 = __esm(() => {
57660
57861
  init_settingsGet();
57661
57862
  init_getsettingsop();
57662
57863
  init_tools();
57663
- args31 = {
57864
+ args32 = {
57664
57865
  request: GetSettingsRequest$zodSchema
57665
57866
  };
57666
57867
  tool$settingsGet = {
@@ -57675,7 +57876,7 @@ Reads the settings of the signing key's environment: retention in days; per flow
57675
57876
  openWorldHint: false,
57676
57877
  readOnlyHint: true
57677
57878
  },
57678
- args: args31,
57879
+ args: args32,
57679
57880
  tool: async (client, args, ctx) => {
57680
57881
  const [result] = await settingsGet(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
57681
57882
  if (!result.ok) {
@@ -57778,9 +57979,9 @@ var init_updatesettingsop = __esm(() => {
57778
57979
 
57779
57980
  // src/funcs/settingsUpdate.ts
57780
57981
  function settingsUpdate(client$, request, options) {
57781
- return new APIPromise($do32(client$, request, options));
57982
+ return new APIPromise($do33(client$, request, options));
57782
57983
  }
57783
- async function $do32(client$, request, options) {
57984
+ async function $do33(client$, request, options) {
57784
57985
  const parsed$ = safeParse2(request, (value$) => UpdateSettingsRequest$zodSchema.parse(value$), "Input validation failed");
57785
57986
  if (!parsed$.ok) {
57786
57987
  return [parsed$, { status: "invalid" }];
@@ -57867,12 +58068,12 @@ var init_settingsUpdate = __esm(() => {
57867
58068
  });
57868
58069
 
57869
58070
  // src/mcp-server/tools/settingsUpdate.ts
57870
- var args32, tool$settingsUpdate;
58071
+ var args33, tool$settingsUpdate;
57871
58072
  var init_settingsUpdate2 = __esm(() => {
57872
58073
  init_settingsUpdate();
57873
58074
  init_updatesettingsop();
57874
58075
  init_tools();
57875
- args32 = {
58076
+ args33 = {
57876
58077
  request: UpdateSettingsRequest$zodSchema
57877
58078
  };
57878
58079
  tool$settingsUpdate = {
@@ -57887,7 +58088,7 @@ Changes only what the body names, in one transaction: retention_days, refused_so
57887
58088
  openWorldHint: false,
57888
58089
  readOnlyHint: false
57889
58090
  },
57890
- args: args32,
58091
+ args: args33,
57891
58092
  tool: async (client, args, ctx) => {
57892
58093
  const [result] = await settingsUpdate(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
57893
58094
  if (!result.ok) {
@@ -57914,9 +58115,9 @@ var init_webhookendpointrequest = __esm(() => {
57914
58115
 
57915
58116
  // src/funcs/webhookEndpointsCreate.ts
57916
58117
  function webhookEndpointsCreate(client$, request, options) {
57917
- return new APIPromise($do33(client$, request, options));
58118
+ return new APIPromise($do34(client$, request, options));
57918
58119
  }
57919
- async function $do33(client$, request, options) {
58120
+ async function $do34(client$, request, options) {
57920
58121
  const parsed$ = safeParse2(request, (value$) => WebhookEndpointRequest$zodSchema.parse(value$), "Input validation failed");
57921
58122
  if (!parsed$.ok) {
57922
58123
  return [parsed$, { status: "invalid" }];
@@ -57980,12 +58181,12 @@ var init_webhookEndpointsCreate = __esm(() => {
57980
58181
  });
57981
58182
 
57982
58183
  // src/mcp-server/tools/webhookEndpointsCreate.ts
57983
- var args33, tool$webhookEndpointsCreate;
58184
+ var args34, tool$webhookEndpointsCreate;
57984
58185
  var init_webhookEndpointsCreate2 = __esm(() => {
57985
58186
  init_webhookEndpointsCreate();
57986
58187
  init_webhookendpointrequest();
57987
58188
  init_tools();
57988
- args33 = {
58189
+ args34 = {
57989
58190
  request: WebhookEndpointRequest$zodSchema
57990
58191
  };
57991
58192
  tool$webhookEndpointsCreate = {
@@ -58000,7 +58201,7 @@ Registers a webhook endpoint and returns it with its first signing secret, shown
58000
58201
  openWorldHint: false,
58001
58202
  readOnlyHint: false
58002
58203
  },
58003
- args: args33,
58204
+ args: args34,
58004
58205
  tool: async (client, args, ctx) => {
58005
58206
  const [result] = await webhookEndpointsCreate(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
58006
58207
  if (!result.ok) {
@@ -58050,9 +58251,9 @@ var init_deletewebhookendpointop = __esm(() => {
58050
58251
 
58051
58252
  // src/funcs/webhookEndpointsDelete.ts
58052
58253
  function webhookEndpointsDelete(client$, request, options) {
58053
- return new APIPromise($do34(client$, request, options));
58254
+ return new APIPromise($do35(client$, request, options));
58054
58255
  }
58055
- async function $do34(client$, request, options) {
58256
+ async function $do35(client$, request, options) {
58056
58257
  const parsed$ = safeParse2(request, (value$) => DeleteWebhookEndpointRequest$zodSchema.parse(value$), "Input validation failed");
58057
58258
  if (!parsed$.ok) {
58058
58259
  return [parsed$, { status: "invalid" }];
@@ -58134,12 +58335,12 @@ var init_webhookEndpointsDelete = __esm(() => {
58134
58335
  });
58135
58336
 
58136
58337
  // src/mcp-server/tools/webhookEndpointsDelete.ts
58137
- var args34, tool$webhookEndpointsDelete;
58338
+ var args35, tool$webhookEndpointsDelete;
58138
58339
  var init_webhookEndpointsDelete2 = __esm(() => {
58139
58340
  init_webhookEndpointsDelete();
58140
58341
  init_deletewebhookendpointop();
58141
58342
  init_tools();
58142
- args34 = {
58343
+ args35 = {
58143
58344
  request: DeleteWebhookEndpointRequest$zodSchema
58144
58345
  };
58145
58346
  tool$webhookEndpointsDelete = {
@@ -58154,7 +58355,7 @@ Deletes the endpoint and its signing keys. Deliveries still queued for it are dr
58154
58355
  openWorldHint: false,
58155
58356
  readOnlyHint: false
58156
58357
  },
58157
- args: args34,
58358
+ args: args35,
58158
58359
  tool: async (client, args, ctx) => {
58159
58360
  const [result] = await webhookEndpointsDelete(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
58160
58361
  if (!result.ok) {
@@ -58170,9 +58371,9 @@ Deletes the endpoint and its signing keys. Deliveries still queued for it are dr
58170
58371
 
58171
58372
  // src/funcs/webhookEndpointsList.ts
58172
58373
  function webhookEndpointsList(client$, options) {
58173
- return new APIPromise($do35(client$, options));
58374
+ return new APIPromise($do36(client$, options));
58174
58375
  }
58175
- async function $do35(client$, options) {
58376
+ async function $do36(client$, options) {
58176
58377
  const path$ = pathToFunc("/v1/webhooks")();
58177
58378
  const headers$ = new Headers(compactMap({
58178
58379
  Accept: options?.acceptHeaderOverride || "application/json;q=1, application/problem+json;q=0"
@@ -58364,9 +58565,9 @@ var init_listwebhookdeliveriesop = __esm(() => {
58364
58565
 
58365
58566
  // src/funcs/webhookEndpointsListDeliveries.ts
58366
58567
  function webhookEndpointsListDeliveries(client$, request, options) {
58367
- return new APIPromise($do36(client$, request, options));
58568
+ return new APIPromise($do37(client$, request, options));
58368
58569
  }
58369
- async function $do36(client$, request, options) {
58570
+ async function $do37(client$, request, options) {
58370
58571
  const parsed$ = safeParse2(request, (value$) => ListWebhookDeliveriesRequest$zodSchema.parse(value$), "Input validation failed");
58371
58572
  if (!parsed$.ok) {
58372
58573
  return [parsed$, { status: "invalid" }];
@@ -58453,12 +58654,12 @@ var init_webhookEndpointsListDeliveries = __esm(() => {
58453
58654
  });
58454
58655
 
58455
58656
  // src/mcp-server/tools/webhookEndpointsListDeliveries.ts
58456
- var args35, tool$webhookEndpointsListDeliveries;
58657
+ var args36, tool$webhookEndpointsListDeliveries;
58457
58658
  var init_webhookEndpointsListDeliveries2 = __esm(() => {
58458
58659
  init_webhookEndpointsListDeliveries();
58459
58660
  init_listwebhookdeliveriesop();
58460
58661
  init_tools();
58461
- args35 = {
58662
+ args36 = {
58462
58663
  request: ListWebhookDeliveriesRequest$zodSchema
58463
58664
  };
58464
58665
  tool$webhookEndpointsListDeliveries = {
@@ -58473,7 +58674,7 @@ Every POST the endpoint received, newest first: the event id and type, which att
58473
58674
  openWorldHint: false,
58474
58675
  readOnlyHint: true
58475
58676
  },
58476
- args: args35,
58677
+ args: args36,
58477
58678
  tool: async (client, args, ctx) => {
58478
58679
  const [result] = await webhookEndpointsListDeliveries(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
58479
58680
  if (!result.ok) {
@@ -58547,9 +58748,9 @@ var init_replaywebhookdeliveryop = __esm(() => {
58547
58748
 
58548
58749
  // src/funcs/webhookEndpointsReplayDelivery.ts
58549
58750
  function webhookEndpointsReplayDelivery(client$, request, options) {
58550
- return new APIPromise($do37(client$, request, options));
58751
+ return new APIPromise($do38(client$, request, options));
58551
58752
  }
58552
- async function $do37(client$, request, options) {
58753
+ async function $do38(client$, request, options) {
58553
58754
  const parsed$ = safeParse2(request, (value$) => ReplayWebhookDeliveryRequest$zodSchema.parse(value$), "Input validation failed");
58554
58755
  if (!parsed$.ok) {
58555
58756
  return [parsed$, { status: "invalid" }];
@@ -58623,12 +58824,12 @@ var init_webhookEndpointsReplayDelivery = __esm(() => {
58623
58824
  });
58624
58825
 
58625
58826
  // src/mcp-server/tools/webhookEndpointsReplayDelivery.ts
58626
- var args36, tool$webhookEndpointsReplayDelivery;
58827
+ var args37, tool$webhookEndpointsReplayDelivery;
58627
58828
  var init_webhookEndpointsReplayDelivery2 = __esm(() => {
58628
58829
  init_webhookEndpointsReplayDelivery();
58629
58830
  init_replaywebhookdeliveryop();
58630
58831
  init_tools();
58631
- args36 = {
58832
+ args37 = {
58632
58833
  request: ReplayWebhookDeliveryRequest$zodSchema
58633
58834
  };
58634
58835
  tool$webhookEndpointsReplayDelivery = {
@@ -58643,7 +58844,7 @@ Queues the event for the endpoint again: the same event id and body it received,
58643
58844
  openWorldHint: false,
58644
58845
  readOnlyHint: false
58645
58846
  },
58646
- args: args36,
58847
+ args: args37,
58647
58848
  tool: async (client, args, ctx) => {
58648
58849
  const [result] = await webhookEndpointsReplayDelivery(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
58649
58850
  if (!result.ok) {
@@ -58729,9 +58930,9 @@ var init_rotatewebhooksigningkeyop = __esm(() => {
58729
58930
 
58730
58931
  // src/funcs/webhookEndpointsRotateSigningKey.ts
58731
58932
  function webhookEndpointsRotateSigningKey(client$, request, options) {
58732
- return new APIPromise($do38(client$, request, options));
58933
+ return new APIPromise($do39(client$, request, options));
58733
58934
  }
58734
- async function $do38(client$, request, options) {
58935
+ async function $do39(client$, request, options) {
58735
58936
  const parsed$ = safeParse2(request, (value$) => RotateWebhookSigningKeyRequest$zodSchema.parse(value$), "Input validation failed");
58736
58937
  if (!parsed$.ok) {
58737
58938
  return [parsed$, { status: "invalid" }];
@@ -58801,12 +59002,12 @@ var init_webhookEndpointsRotateSigningKey = __esm(() => {
58801
59002
  });
58802
59003
 
58803
59004
  // src/mcp-server/tools/webhookEndpointsRotateSigningKey.ts
58804
- var args37, tool$webhookEndpointsRotateSigningKey;
59005
+ var args38, tool$webhookEndpointsRotateSigningKey;
58805
59006
  var init_webhookEndpointsRotateSigningKey2 = __esm(() => {
58806
59007
  init_webhookEndpointsRotateSigningKey();
58807
59008
  init_rotatewebhooksigningkeyop();
58808
59009
  init_tools();
58809
- args37 = {
59010
+ args38 = {
58810
59011
  request: RotateWebhookSigningKeyRequest$zodSchema
58811
59012
  };
58812
59013
  tool$webhookEndpointsRotateSigningKey = {
@@ -58821,7 +59022,7 @@ Issues a new signing key for the endpoint and returns its secret once. Every del
58821
59022
  openWorldHint: false,
58822
59023
  readOnlyHint: false
58823
59024
  },
58824
- args: args37,
59025
+ args: args38,
58825
59026
  tool: async (client, args, ctx) => {
58826
59027
  const [result] = await webhookEndpointsRotateSigningKey(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
58827
59028
  if (!result.ok) {
@@ -58922,9 +59123,9 @@ var init_sendwebhooktesteventop = __esm(() => {
58922
59123
 
58923
59124
  // src/funcs/webhookEndpointsSendTestEvent.ts
58924
59125
  function webhookEndpointsSendTestEvent(client$, request, options) {
58925
- return new APIPromise($do39(client$, request, options));
59126
+ return new APIPromise($do40(client$, request, options));
58926
59127
  }
58927
- async function $do39(client$, request, options) {
59128
+ async function $do40(client$, request, options) {
58928
59129
  const parsed$ = safeParse2(request, (value$) => SendWebhookTestEventRequest$zodSchema.parse(value$), "Input validation failed");
58929
59130
  if (!parsed$.ok) {
58930
59131
  return [parsed$, { status: "invalid" }];
@@ -58994,12 +59195,12 @@ var init_webhookEndpointsSendTestEvent = __esm(() => {
58994
59195
  });
58995
59196
 
58996
59197
  // src/mcp-server/tools/webhookEndpointsSendTestEvent.ts
58997
- var args38, tool$webhookEndpointsSendTestEvent;
59198
+ var args39, tool$webhookEndpointsSendTestEvent;
58998
59199
  var init_webhookEndpointsSendTestEvent2 = __esm(() => {
58999
59200
  init_webhookEndpointsSendTestEvent();
59000
59201
  init_sendwebhooktesteventop();
59001
59202
  init_tools();
59002
- args38 = {
59203
+ args39 = {
59003
59204
  request: SendWebhookTestEventRequest$zodSchema
59004
59205
  };
59005
59206
  tool$webhookEndpointsSendTestEvent = {
@@ -59014,7 +59215,7 @@ endpoint.verification sends a signed challenge now and answers whether the endpo
59014
59215
  openWorldHint: false,
59015
59216
  readOnlyHint: false
59016
59217
  },
59017
- args: args38,
59218
+ args: args39,
59018
59219
  tool: async (client, args, ctx) => {
59019
59220
  const [result] = await webhookEndpointsSendTestEvent(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
59020
59221
  if (!result.ok) {
@@ -59032,7 +59233,7 @@ endpoint.verification sends a signed challenge now and answers whether the endpo
59032
59233
  function createMCPServer(deps) {
59033
59234
  const server = new McpServer({
59034
59235
  name: "NoResponse",
59035
- version: "0.6.12"
59236
+ version: "0.6.14"
59036
59237
  });
59037
59238
  const getClient = deps.getSDK || (() => new NoResponseCore({
59038
59239
  security: deps.security,
@@ -59056,6 +59257,7 @@ function createMCPServer(deps) {
59056
59257
  tool(tool$assessmentsDelete);
59057
59258
  tool(tool$assessmentsRecordOutcome);
59058
59259
  tool(tool$assessmentsQuery);
59260
+ tool(tool$assessmentsAggregate);
59059
59261
  tool(tool$assessmentsSearch);
59060
59262
  tool(tool$assessmentsRetrieveVersion);
59061
59263
  tool(tool$assessmentsBindAccount);
@@ -59115,6 +59317,7 @@ var init_server = __esm(() => {
59115
59317
  init_accountsRecordOutcome2();
59116
59318
  init_accountsRetireCredential2();
59117
59319
  init_accountsRetrieveDecision2();
59320
+ init_assessmentsAggregate2();
59118
59321
  init_assessmentsBindAccount2();
59119
59322
  init_assessmentsCreate2();
59120
59323
  init_assessmentsDelete2();
@@ -59152,13 +59355,13 @@ var init_tool_names = __esm(() => {
59152
59355
  name: "create_assessment",
59153
59356
  description: `Assess identifiers for a signup or gateway decision.
59154
59357
 
59155
- Assesses one account creation, login or purchase (flow) and answers with the account's one current risk: account.risk.decision is the decision for this flow (allow, step_up, review or block, where block means your block threshold was reached), and detail holds this assessment's own facts. depth sets how long the answer waits for sources: quick waits only for the fast ones (500 ms), full for the whole budget (3000 ms at most); it defaults to full for account_creation and purchase and quick for login. 200 carries complete or partial, 202 carries pending with Location and Retry-After. While the account's first assessment is pending, account is absent: apply your own fallback for that, 429, 503 or a timeout. NoResponse blocks nothing itself; you decide. Requires the assess scope. Idempotency-Key is optional in the SDK and is bound to the body for 24 hours: the same key with the same body replays the latest assessment with Idempotent-Replayed: true and starts no new work; the same key with a different body answers 409 idempotency_key_reused. response_mode defaults to standard; detailed needs the detailed scope.`
59358
+ Assesses one account creation, login or purchase (flow) and answers with the account's one current risk: account.risk.decision is the decision for this flow (allow, step_up, review or block, where block means your block threshold was reached), and detail holds this assessment's own facts. depth sets how long the answer waits for sources: quick waits only for the fast ones (500 ms), full for the whole budget (3000 ms at most); it defaults to full for account_creation and purchase and quick for login. 200 carries complete or partial, 202 carries pending with Location and Retry-After. While the account's first assessment is pending, account is absent: apply your own fallback for that, 429, 503 or a timeout. NoResponse blocks nothing itself; you decide. Requires the assess scope. Idempotency-Key is optional in the SDK and is bound to the body for 24 hours: the same key with the same body replays the latest assessment with Idempotent-Replayed: true and starts no new work; the same key with a different body answers 409 idempotency_key_reused. response_mode defaults to standard; detailed needs the detailed scope. The answer leaves out detail.identifiers: you hold what you sent, and a key with the history scope gets them back with GET.`
59156
59359
  },
59157
59360
  {
59158
59361
  name: "get_assessment",
59159
59362
  description: `Poll the authoritative assessment of one assessment.
59160
59363
 
59161
- Returns the highest assessment_version, with the account's current risk. Requires the assess or history scope. While status is pending, or partial with a source still running, the response carries Retry-After; poll no faster than it says. Another workspace's assessment, an unknown or expired assessment and a malformed assessment_id all answer 404 not_found. response_mode=detailed needs the detailed scope.`
59364
+ Returns the highest assessment_version, with the account's current risk. Requires the assess or history scope. While status is pending, or partial with a source still running, the response carries Retry-After; poll no faster than it says. Another workspace's assessment, an unknown or expired assessment and a malformed assessment_id all answer 404 not_found. response_mode=detailed needs the detailed scope. A key with the history scope also gets detail.identifiers, the identifiers the assessment was sent, exactly as received.`
59162
59365
  },
59163
59366
  {
59164
59367
  name: "delete_assessment",
@@ -59176,19 +59379,25 @@ Records what you later learned about an assessed account: confirmed_abuse, accou
59176
59379
  name: "query_assessments",
59177
59380
  description: `Page through one account's unexpired assessments.
59178
59381
 
59179
- History is a POST with account_id in the body so an account identifier stays out of URLs and access logs. Requires the history scope. Read-only and safe to retry. Newest first, each at its latest assessment_version. An account with no assessments answers 200 with empty items. The cursor is opaque and bound to your workspace and the account; a tampered or expired cursor answers 400 invalid_cursor. response_mode=detailed needs the detailed scope.`
59382
+ History is a POST with account_id in the body so an account identifier stays out of URLs and access logs. Requires the history scope. Read-only and safe to retry. Newest first, each at its latest assessment_version. An account with no assessments answers 200 with empty items. The cursor is opaque and bound to your workspace and the account; a tampered or expired cursor answers 400 invalid_cursor. response_mode=detailed needs the detailed scope. Each item's identifiers holds the identifiers its assessment was sent, exactly as received.`
59383
+ },
59384
+ {
59385
+ name: "aggregate_assessments",
59386
+ description: `Count assessments by time, decision and reason
59387
+
59388
+ Count this environment's assessments created in [from,to) by hour, day or week, grouped by up to two of decision, flow, recommendation, band, reason, lane, country, asn and list_match. Each assessment counts once, by its first answer; late results do not count it again and appear in late_flips. Optional metrics add a score histogram per flow and late account decision changes. from and to start a bucket and cover at most 366 days (31 for hour buckets) inside the retention period. The filters are search's and describe the first answer: send them to search with revision first to list a cell's assessments. Counts hold no identifier, stay when an assessment or account is deleted, and report reasons by code and impact band. No Idempotency-Key.`
59180
59389
  },
59181
59390
  {
59182
59391
  name: "search_assessments",
59183
59392
  description: `Search assessments across this environment
59184
59393
 
59185
- Search retained assessments created in [from,to), over at most 366 days. Filters use each assessment decision, rather than the current account decision. Results can change between pages. Keep the assessment version to retrieve the exact decision later. This read does not require an idempotency key.`
59394
+ Search retained assessments created in [from,to), over at most 366 days. Filters use each assessment decision, rather than the current account decision. Results can change between pages. Keep the assessment version to retrieve the exact decision later. Each item's detail.identifiers holds the identifiers its assessment was sent, exactly as received. This read does not require an idempotency key.`
59186
59395
  },
59187
59396
  {
59188
59397
  name: "get_assessment_version",
59189
59398
  description: `Retrieve an exact assessment revision
59190
59399
 
59191
- Retrieve a retained assessment version with its original decision, policy, flow and depth. This response excludes the current account decision. Current retention and response-mode permissions still apply.`
59400
+ Retrieve a retained assessment version with its original decision, policy, flow and depth. This response excludes the current account decision. Current retention and response-mode permissions still apply. detail.identifiers holds the identifiers the assessment was sent, exactly as received.`
59192
59401
  },
59193
59402
  {
59194
59403
  name: "bind_provisional_account",
@@ -59218,7 +59427,7 @@ Erases the account in the environment of your key, for an erasure request from y
59218
59427
  name: "list_account_assessments",
59219
59428
  description: `Page through one account's unexpired assessments.
59220
59429
 
59221
- The account's history: the same page as POST /v1/assessments/query for this account_id, newest first, each at its latest assessment_version. Requires the history scope. Read-only and safe to retry. An account with no assessments answers 200 with empty items. The cursor is opaque and bound to your workspace and the account; a tampered or expired cursor answers 400 invalid_cursor. response_mode=detailed needs the detailed scope. The account_id travels in the URL; use POST /v1/assessments/query to keep it out of access logs.`
59430
+ The account's history: the same page as POST /v1/assessments/query for this account_id, newest first, each at its latest assessment_version. Requires the history scope. Read-only and safe to retry. An account with no assessments answers 200 with empty items. The cursor is opaque and bound to your workspace and the account; a tampered or expired cursor answers 400 invalid_cursor. response_mode=detailed needs the detailed scope. Each item's identifiers holds the identifiers its assessment was sent, exactly as received. The account_id travels in the URL; use POST /v1/assessments/query to keep it out of access logs.`
59222
59431
  },
59223
59432
  {
59224
59433
  name: "record_enforcement",
@@ -59266,7 +59475,7 @@ Mark this association retired, idempotently. This does not revoke the actual key
59266
59475
  name: "export_account",
59267
59476
  description: `Export an account
59268
59477
 
59269
- Retrieve one consistent snapshot of retained customer-accessible records, including assessment revisions, account decisions, feedback, key associations, enforcements and request diagnostics. Secrets, restricted source information, other customers' data and legacy free-text notes are excluded. The same standard/detailed permissions apply. An export exceeding 10000 records or 8 MiB returns export_too_large without a partial result. Historical decisions that were not captured are identified as an exclusion.`
59478
+ Retrieve one consistent snapshot of retained customer-accessible records, including assessment revisions, account decisions, feedback, key associations, enforcements and request diagnostics. Each assessment revision's detail.identifiers holds the identifiers that assessment was sent, exactly as received. Secrets, restricted source information, other customers' data and legacy free-text notes are excluded. The same standard/detailed permissions apply. An export exceeding 10000 records or 8 MiB returns export_too_large without a partial result. Historical decisions that were not captured are identified as an exclusion.`
59270
59479
  },
59271
59480
  {
59272
59481
  name: "list_keys",
@@ -67881,7 +68090,7 @@ var routes = buildRouteMap({
67881
68090
  var app = buildApplication(routes, {
67882
68091
  name: "mcp",
67883
68092
  versionInfo: {
67884
- currentVersion: "0.6.12"
68093
+ currentVersion: "0.6.14"
67885
68094
  }
67886
68095
  });
67887
68096
  run(app, process3.argv.slice(2), buildContext(process3));
@@ -67889,5 +68098,5 @@ export {
67889
68098
  app
67890
68099
  };
67891
68100
 
67892
- //# debugId=01809CD030BCB09364756E2164756E21
68101
+ //# debugId=FF0E38F80AA6CB4764756E2164756E21
67893
68102
  //# sourceMappingURL=mcp-server.js.map