@noresponse/mcp 0.6.9 → 0.6.11

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.9",
48120
+ sdkVersion: "0.6.11",
48121
48121
  genVersion: "internal",
48122
- userAgent: "noresponse-sdk/mcp-typescript 0.6.9 internal 1 @noresponse/mcp"
48122
+ userAgent: "noresponse-sdk/mcp-typescript 0.6.11 internal 1 @noresponse/mcp"
48123
48123
  };
48124
48124
  });
48125
48125
 
@@ -50350,6 +50350,7 @@ var init_reasoncode = __esm(() => {
50350
50350
  "prior_abuse_link",
50351
50351
  "test_scenario",
50352
50352
  "shared_api_key",
50353
+ "list_match",
50353
50354
  "young_email_domain",
50354
50355
  "email_domain_no_mx",
50355
50356
  "email_domain_nonexistent",
@@ -50390,7 +50391,8 @@ var init_accountriskreason = __esm(() => {
50390
50391
  code: ReasonCode$zodSchema.describe("A stable reason code. New codes may appear; ignore any you do not know."),
50391
50392
  direction: Direction$zodSchema,
50392
50393
  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."),
50393
- impact: Impact$zodSchema
50394
+ impact: Impact$zodSchema,
50395
+ list_entry_id: string2().optional().describe("The list entry a list_match reason applied. No other reason carries it.")
50394
50396
  }).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.");
50395
50397
  });
50396
50398
 
@@ -50736,7 +50738,8 @@ var init_riskreason = __esm(() => {
50736
50738
  code: ReasonCode$zodSchema.describe("A stable reason code. New codes may appear; ignore any you do not know."),
50737
50739
  direction: Direction$zodSchema,
50738
50740
  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."),
50739
- impact: Impact$zodSchema
50741
+ impact: Impact$zodSchema,
50742
+ list_entry_id: string2().optional().describe("The list entry a list_match reason applied. No other reason carries it.")
50740
50743
  }).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.");
50741
50744
  });
50742
50745
 
@@ -51381,7 +51384,10 @@ var init_conflicterrorcode = __esm(() => {
51381
51384
  "too_many_integrations",
51382
51385
  "risk_version_ahead",
51383
51386
  "key_limit_reached",
51384
- "self_revocation"
51387
+ "self_revocation",
51388
+ "list_entry_exists",
51389
+ "list_limit_reached",
51390
+ "list_entry_too_broad"
51385
51391
  ]).describe("Machine codes an HTTP 409 answer can carry.");
51386
51392
  });
51387
51393
 
@@ -54796,6 +54802,564 @@ Revokes a key of the signing key's environment at once: its next request answers
54796
54802
  };
54797
54803
  });
54798
54804
 
54805
+ // src/models/listentryaction.ts
54806
+ var ListEntryAction$zodSchema;
54807
+ var init_listentryaction = __esm(() => {
54808
+ init_zod();
54809
+ ListEntryAction$zodSchema = _enum([
54810
+ "block",
54811
+ "allow"
54812
+ ]).describe("block decides block for the accounts the entry matches; allow decides allow. Block wins when both match.");
54813
+ });
54814
+
54815
+ // src/models/listentrykind.ts
54816
+ var ListEntryKind$zodSchema;
54817
+ var init_listentrykind = __esm(() => {
54818
+ init_zod();
54819
+ ListEntryKind$zodSchema = _enum([
54820
+ "email",
54821
+ "email_domain"
54822
+ ]).describe("email matches one address, whatever the case of its local part. email_domain matches every address of the registrable domain and of its subdomains.");
54823
+ });
54824
+
54825
+ // src/models/listentry.ts
54826
+ var ListEntry$zodSchema;
54827
+ var init_listentry = __esm(() => {
54828
+ init_zod();
54829
+ init_keyenvironment();
54830
+ init_listentryaction();
54831
+ init_listentrykind();
54832
+ ListEntry$zodSchema = object({
54833
+ action: ListEntryAction$zodSchema.describe("block decides block for the accounts the entry matches; allow decides allow. Block wins when both match."),
54834
+ created_at: string2(),
54835
+ created_by: string2().describe("The external user id of the member who added the entry through the console, or the prefix (nrk_<environment>_<key id>) of the management key that added it."),
54836
+ environment: KeyEnvironment$zodSchema.describe("The environment the key belongs to. A live key assesses with live sources; a test key answers from the deterministic simulator."),
54837
+ id: string2().describe("The entry's id: lst_ and a ULID."),
54838
+ kind: ListEntryKind$zodSchema.describe("email matches one address, whatever the case of its local part. email_domain matches every address of the registrable domain and of its subdomains."),
54839
+ note: string2().optional().describe("Why the entry exists, for the people who manage the list. It is shown with the entry and decides nothing."),
54840
+ value: string2().describe("The value the entry matches, in canonical form: an email lower-cased whole, or a domain lower-cased and taken to its registrable domain (mail.example.co.uk is stored as example.co.uk)."),
54841
+ workspace_id: string2().describe("The workspace id, which is also its live environment's workspace id; the test environment's is the same id with :test appended. A workspace created through the API is tnt_ and a 26-character ULID.")
54842
+ }).describe("One entry of an environment's list: an exact email or an email domain that decides an account whatever its score. An account matches when one of its admitted assessments sent the email, or an email of the domain. A block entry decides block for every flow and an allow entry decides allow; when both match, block wins. The account's risk carries the list_match reason with the entry's id, and its score stays the one the assessment's facts give. A held flow still waits for its investigation.");
54843
+ });
54844
+
54845
+ // src/models/listentryrequest.ts
54846
+ var ListEntryRequest$zodSchema;
54847
+ var init_listentryrequest = __esm(() => {
54848
+ init_zod();
54849
+ init_listentryaction();
54850
+ init_listentrykind();
54851
+ ListEntryRequest$zodSchema = object({
54852
+ action: ListEntryAction$zodSchema.describe("block decides block for the accounts the entry matches; allow decides allow. Block wins when both match."),
54853
+ kind: ListEntryKind$zodSchema.describe("email matches one address, whatever the case of its local part. email_domain matches every address of the registrable domain and of its subdomains."),
54854
+ note: string2().optional().describe("Why the entry exists, for the people who manage the list. It is shown with the entry and decides nothing."),
54855
+ value: string2().describe("An email address for kind email, written as in an assessment request; an LDH domain (A-label for an internationalised one) such as example.com for kind email_domain, which must sit below a public suffix (co.uk alone is refused with 400). NoResponse stores it in canonical form and answers that form.")
54856
+ }).describe("POST /v1/workspaces/{workspace_id}/lists/{environment} body. Adds one entry to the environment's list and, in the same change, re-decides every account it matches: each sends account.risk_changed when a decision changes. Needs the admin or owner role, or a management key of the environment.");
54857
+ });
54858
+
54859
+ // src/models/createlistentryop.ts
54860
+ var CreateListEntryRequest$zodSchema, CreateListEntryResponseResult$zodSchema, CreateListEntryResponse$zodSchema;
54861
+ var init_createlistentryop = __esm(() => {
54862
+ init_zod();
54863
+ init_authenticationerror();
54864
+ init_badrequesterror();
54865
+ init_conflicterror();
54866
+ init_keyenvironment();
54867
+ init_listentry();
54868
+ init_listentryrequest();
54869
+ init_notfounderror();
54870
+ init_permissiondeniederror();
54871
+ init_ratelimiterror();
54872
+ CreateListEntryRequest$zodSchema = object({
54873
+ body: ListEntryRequest$zodSchema,
54874
+ environment: KeyEnvironment$zodSchema.describe("The environment: live or test. Each has its own settings. Any other value answers 400. An API key reads and changes only its own environment's; the other answers 404."),
54875
+ workspace_id: string2().describe("Your workspace id, as each key lists it in workspace_id. Another workspace, a malformed id and a test environment's id answer 404.")
54876
+ });
54877
+ CreateListEntryResponseResult$zodSchema = union([
54878
+ ListEntry$zodSchema,
54879
+ BadRequestError$zodSchema,
54880
+ AuthenticationError$zodSchema,
54881
+ PermissionDeniedError$zodSchema,
54882
+ NotFoundError$zodSchema,
54883
+ ConflictError$zodSchema,
54884
+ RateLimitError$zodSchema
54885
+ ]);
54886
+ CreateListEntryResponse$zodSchema = object({
54887
+ Headers: record(string2(), array(string2())).default({}),
54888
+ Result: union([
54889
+ ListEntry$zodSchema,
54890
+ BadRequestError$zodSchema,
54891
+ AuthenticationError$zodSchema,
54892
+ PermissionDeniedError$zodSchema,
54893
+ NotFoundError$zodSchema,
54894
+ ConflictError$zodSchema,
54895
+ RateLimitError$zodSchema
54896
+ ])
54897
+ });
54898
+ });
54899
+
54900
+ // src/funcs/listsCreate.ts
54901
+ function listsCreate(client$, request, options) {
54902
+ return new APIPromise($do17(client$, request, options));
54903
+ }
54904
+ async function $do17(client$, request, options) {
54905
+ const parsed$ = safeParse2(request, (value$) => CreateListEntryRequest$zodSchema.parse(value$), "Input validation failed");
54906
+ if (!parsed$.ok) {
54907
+ return [parsed$, { status: "invalid" }];
54908
+ }
54909
+ const payload$ = parsed$.value;
54910
+ const body$ = encodeJSON("body", payload$.body, { explode: true });
54911
+ const pathParams$ = {
54912
+ environment: encodeSimple("environment", payload$.environment, {
54913
+ explode: false,
54914
+ charEncoding: "percent"
54915
+ }),
54916
+ workspace_id: encodeSimple("workspace_id", payload$.workspace_id, {
54917
+ explode: false,
54918
+ charEncoding: "percent"
54919
+ })
54920
+ };
54921
+ const path$ = pathToFunc("/v1/workspaces/{workspace_id}/lists/{environment}")(pathParams$);
54922
+ const headers$ = new Headers(compactMap({
54923
+ "Content-Type": "application/json",
54924
+ Accept: options?.acceptHeaderOverride || "application/json;q=1, application/problem+json;q=0"
54925
+ }));
54926
+ const securityInput = await extractSecurity(client$._options.security);
54927
+ const requestSecurity = resolveGlobalSecurity(securityInput);
54928
+ const context = {
54929
+ options: client$._options,
54930
+ baseURL: options?.serverURL ?? client$._baseURL ?? "",
54931
+ operationID: "createListEntry",
54932
+ oAuth2Scopes: null,
54933
+ resolvedSecurity: requestSecurity,
54934
+ securitySource: client$._options.security,
54935
+ retryConfig: options?.retries || client$._options.retryConfig || {
54936
+ strategy: "backoff",
54937
+ backoff: {
54938
+ initialInterval: 500,
54939
+ maxInterval: 8000,
54940
+ exponent: 2,
54941
+ maxElapsedTime: 30000
54942
+ },
54943
+ retryConnectionErrors: true
54944
+ },
54945
+ retryCodes: options?.retryCodes || [
54946
+ "408",
54947
+ "429",
54948
+ "5XX"
54949
+ ]
54950
+ };
54951
+ const requestRes = client$._createRequest(context, {
54952
+ security: requestSecurity,
54953
+ method: "POST",
54954
+ baseURL: options?.serverURL,
54955
+ path: path$,
54956
+ headers: headers$,
54957
+ body: body$,
54958
+ userAgent: client$._options.userAgent,
54959
+ timeoutMs: options?.timeoutMs || client$._options.timeoutMs || -1
54960
+ }, options);
54961
+ if (!requestRes.ok) {
54962
+ return [requestRes, { status: "invalid" }];
54963
+ }
54964
+ const req$ = requestRes.value;
54965
+ const doResult = await client$._do(req$, {
54966
+ context,
54967
+ errorCodes: [],
54968
+ retryConfig: context.retryConfig,
54969
+ retryCodes: context.retryCodes
54970
+ });
54971
+ if (!doResult.ok) {
54972
+ return [doResult, { status: "request-error", request: req$ }];
54973
+ }
54974
+ return [doResult, {
54975
+ status: "complete",
54976
+ request: req$,
54977
+ response: doResult.value
54978
+ }];
54979
+ }
54980
+ var init_listsCreate = __esm(() => {
54981
+ init_encodings();
54982
+ init_primitives();
54983
+ init_schemas3();
54984
+ init_security();
54985
+ init_url();
54986
+ init_createlistentryop();
54987
+ init_async();
54988
+ });
54989
+
54990
+ // src/mcp-server/tools/listsCreate.ts
54991
+ var args17, tool$listsCreate;
54992
+ var init_listsCreate2 = __esm(() => {
54993
+ init_listsCreate();
54994
+ init_createlistentryop();
54995
+ init_tools();
54996
+ args17 = {
54997
+ request: CreateListEntryRequest$zodSchema
54998
+ };
54999
+ tool$listsCreate = {
55000
+ name: "create_list_entry",
55001
+ description: `Add an entry to an environment's list.
55002
+
55003
+ Adds an exact email (kind email) or an email domain (kind email_domain) to the signing key's environment's list with the action block or allow, and answers the entry with its value in canonical form. An account matches when one of its assessments sent the email, or an email of the domain: a block entry decides block for every flow and an allow entry allow, block winning when both match, and the account's risk carries list_match with the entry's id while its score is unchanged. Every matching account is re-decided at once and sends account.risk_changed when its decision changes. A value already on the list answers 409 list_entry_exists, a full list 409 list_limit_reached, and an entry matching more than 5,000 accounts 409 list_entry_too_broad. Requires the management scope; the other environment answers 404 not_found.`,
55004
+ annotations: {
55005
+ title: "Add an email or domain to the allow or block list",
55006
+ destructiveHint: false,
55007
+ idempotentHint: false,
55008
+ openWorldHint: false,
55009
+ readOnlyHint: false
55010
+ },
55011
+ args: args17,
55012
+ tool: async (client, args, ctx) => {
55013
+ const [result] = await listsCreate(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55014
+ if (!result.ok) {
55015
+ return {
55016
+ content: [{ type: "text", text: result.error.message }],
55017
+ isError: true
55018
+ };
55019
+ }
55020
+ return formatResult(result.value);
55021
+ }
55022
+ };
55023
+ });
55024
+
55025
+ // src/models/deletelistentryop.ts
55026
+ var DeleteListEntryRequest$zodSchema, DeleteListEntryResponseResult$zodSchema, DeleteListEntryResponse$zodSchema;
55027
+ var init_deletelistentryop = __esm(() => {
55028
+ init_zod();
55029
+ init_authenticationerror();
55030
+ init_badrequesterror();
55031
+ init_conflicterror();
55032
+ init_keyenvironment();
55033
+ init_notfounderror();
55034
+ init_permissiondeniederror();
55035
+ init_ratelimiterror();
55036
+ DeleteListEntryRequest$zodSchema = object({
55037
+ environment: KeyEnvironment$zodSchema.describe("The environment: live or test. Each has its own settings. Any other value answers 400. An API key reads and changes only its own environment's; the other answers 404."),
55038
+ list_entry_id: string2().describe("The entry's id. An entry of another environment or workspace answers 404."),
55039
+ workspace_id: string2().describe("Your workspace id, as each key lists it in workspace_id. Another workspace, a malformed id and a test environment's id answer 404.")
55040
+ });
55041
+ DeleteListEntryResponseResult$zodSchema = union([
55042
+ BadRequestError$zodSchema,
55043
+ AuthenticationError$zodSchema,
55044
+ PermissionDeniedError$zodSchema,
55045
+ NotFoundError$zodSchema,
55046
+ ConflictError$zodSchema,
55047
+ RateLimitError$zodSchema
55048
+ ]);
55049
+ DeleteListEntryResponse$zodSchema = object({
55050
+ Headers: record(string2(), array(string2())).default({}),
55051
+ Result: union([
55052
+ BadRequestError$zodSchema,
55053
+ AuthenticationError$zodSchema,
55054
+ PermissionDeniedError$zodSchema,
55055
+ NotFoundError$zodSchema,
55056
+ ConflictError$zodSchema,
55057
+ RateLimitError$zodSchema
55058
+ ]).optional()
55059
+ });
55060
+ });
55061
+
55062
+ // src/funcs/listsDelete.ts
55063
+ function listsDelete(client$, request, options) {
55064
+ return new APIPromise($do18(client$, request, options));
55065
+ }
55066
+ async function $do18(client$, request, options) {
55067
+ const parsed$ = safeParse2(request, (value$) => DeleteListEntryRequest$zodSchema.parse(value$), "Input validation failed");
55068
+ if (!parsed$.ok) {
55069
+ return [parsed$, { status: "invalid" }];
55070
+ }
55071
+ const payload$ = parsed$.value;
55072
+ const body$ = null;
55073
+ const pathParams$ = {
55074
+ environment: encodeSimple("environment", payload$.environment, {
55075
+ explode: false,
55076
+ charEncoding: "percent"
55077
+ }),
55078
+ list_entry_id: encodeSimple("list_entry_id", payload$.list_entry_id, {
55079
+ explode: false,
55080
+ charEncoding: "percent"
55081
+ }),
55082
+ workspace_id: encodeSimple("workspace_id", payload$.workspace_id, {
55083
+ explode: false,
55084
+ charEncoding: "percent"
55085
+ })
55086
+ };
55087
+ const path$ = pathToFunc("/v1/workspaces/{workspace_id}/lists/{environment}/{list_entry_id}")(pathParams$);
55088
+ const headers$ = new Headers(compactMap({
55089
+ Accept: "application/problem+json"
55090
+ }));
55091
+ const securityInput = await extractSecurity(client$._options.security);
55092
+ const requestSecurity = resolveGlobalSecurity(securityInput);
55093
+ const context = {
55094
+ options: client$._options,
55095
+ baseURL: options?.serverURL ?? client$._baseURL ?? "",
55096
+ operationID: "deleteListEntry",
55097
+ oAuth2Scopes: null,
55098
+ resolvedSecurity: requestSecurity,
55099
+ securitySource: client$._options.security,
55100
+ retryConfig: options?.retries || client$._options.retryConfig || {
55101
+ strategy: "backoff",
55102
+ backoff: {
55103
+ initialInterval: 500,
55104
+ maxInterval: 8000,
55105
+ exponent: 2,
55106
+ maxElapsedTime: 30000
55107
+ },
55108
+ retryConnectionErrors: true
55109
+ },
55110
+ retryCodes: options?.retryCodes || [
55111
+ "408",
55112
+ "429",
55113
+ "5XX"
55114
+ ]
55115
+ };
55116
+ const requestRes = client$._createRequest(context, {
55117
+ security: requestSecurity,
55118
+ method: "DELETE",
55119
+ baseURL: options?.serverURL,
55120
+ path: path$,
55121
+ headers: headers$,
55122
+ body: body$,
55123
+ userAgent: client$._options.userAgent,
55124
+ timeoutMs: options?.timeoutMs || client$._options.timeoutMs || -1
55125
+ }, options);
55126
+ if (!requestRes.ok) {
55127
+ return [requestRes, { status: "invalid" }];
55128
+ }
55129
+ const req$ = requestRes.value;
55130
+ const doResult = await client$._do(req$, {
55131
+ context,
55132
+ errorCodes: [],
55133
+ retryConfig: context.retryConfig,
55134
+ retryCodes: context.retryCodes
55135
+ });
55136
+ if (!doResult.ok) {
55137
+ return [doResult, { status: "request-error", request: req$ }];
55138
+ }
55139
+ return [doResult, {
55140
+ status: "complete",
55141
+ request: req$,
55142
+ response: doResult.value
55143
+ }];
55144
+ }
55145
+ var init_listsDelete = __esm(() => {
55146
+ init_encodings();
55147
+ init_primitives();
55148
+ init_schemas3();
55149
+ init_security();
55150
+ init_url();
55151
+ init_deletelistentryop();
55152
+ init_async();
55153
+ });
55154
+
55155
+ // src/mcp-server/tools/listsDelete.ts
55156
+ var args18, tool$listsDelete;
55157
+ var init_listsDelete2 = __esm(() => {
55158
+ init_listsDelete();
55159
+ init_deletelistentryop();
55160
+ init_tools();
55161
+ args18 = {
55162
+ request: DeleteListEntryRequest$zodSchema
55163
+ };
55164
+ tool$listsDelete = {
55165
+ name: "delete_list_entry",
55166
+ description: `Remove an entry from an environment's list.
55167
+
55168
+ Removes an entry from the signing key's environment's list and re-decides the accounts it matched, the 5,000 most recently assessed at most, each sending account.risk_changed when its decision changes. An unknown or already removed entry answers 404 not_found. Requires the management scope.`,
55169
+ annotations: {
55170
+ title: "Delete an entry from the allow or block list",
55171
+ destructiveHint: true,
55172
+ idempotentHint: true,
55173
+ openWorldHint: false,
55174
+ readOnlyHint: false
55175
+ },
55176
+ args: args18,
55177
+ tool: async (client, args, ctx) => {
55178
+ const [result] = await listsDelete(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55179
+ if (!result.ok) {
55180
+ return {
55181
+ content: [{ type: "text", text: result.error.message }],
55182
+ isError: true
55183
+ };
55184
+ }
55185
+ return formatResult(result.value);
55186
+ }
55187
+ };
55188
+ });
55189
+
55190
+ // src/models/listentrylist.ts
55191
+ var ListEntryList$zodSchema;
55192
+ var init_listentrylist = __esm(() => {
55193
+ init_zod();
55194
+ init_listentry();
55195
+ ListEntryList$zodSchema = object({
55196
+ items: array(ListEntry$zodSchema)
55197
+ }).describe("GET /v1/workspaces/{workspace_id}/lists/{environment}: every entry of the environment's list, newest first. An environment holds at most 10,000 entries.");
55198
+ });
55199
+
55200
+ // src/models/listlistentriesop.ts
55201
+ var ListListEntriesRequest$zodSchema, ListListEntriesResponseResult$zodSchema, ListListEntriesResponse$zodSchema;
55202
+ var init_listlistentriesop = __esm(() => {
55203
+ init_zod();
55204
+ init_authenticationerror();
55205
+ init_badrequesterror();
55206
+ init_conflicterror();
55207
+ init_keyenvironment();
55208
+ init_listentrylist();
55209
+ init_notfounderror();
55210
+ init_permissiondeniederror();
55211
+ init_ratelimiterror();
55212
+ ListListEntriesRequest$zodSchema = object({
55213
+ environment: KeyEnvironment$zodSchema.describe("The environment: live or test. Each has its own settings. Any other value answers 400. An API key reads and changes only its own environment's; the other answers 404."),
55214
+ workspace_id: string2().describe("Your workspace id, as each key lists it in workspace_id. Another workspace, a malformed id and a test environment's id answer 404.")
55215
+ });
55216
+ ListListEntriesResponseResult$zodSchema = union([
55217
+ BadRequestError$zodSchema,
55218
+ AuthenticationError$zodSchema,
55219
+ PermissionDeniedError$zodSchema,
55220
+ NotFoundError$zodSchema,
55221
+ ConflictError$zodSchema,
55222
+ RateLimitError$zodSchema,
55223
+ ListEntryList$zodSchema
55224
+ ]);
55225
+ ListListEntriesResponse$zodSchema = object({
55226
+ Headers: record(string2(), array(string2())).default({}),
55227
+ Result: union([
55228
+ BadRequestError$zodSchema,
55229
+ AuthenticationError$zodSchema,
55230
+ PermissionDeniedError$zodSchema,
55231
+ NotFoundError$zodSchema,
55232
+ ConflictError$zodSchema,
55233
+ RateLimitError$zodSchema,
55234
+ ListEntryList$zodSchema
55235
+ ])
55236
+ });
55237
+ });
55238
+
55239
+ // src/funcs/listsList.ts
55240
+ function listsList(client$, request, options) {
55241
+ return new APIPromise($do19(client$, request, options));
55242
+ }
55243
+ async function $do19(client$, request, options) {
55244
+ const parsed$ = safeParse2(request, (value$) => ListListEntriesRequest$zodSchema.parse(value$), "Input validation failed");
55245
+ if (!parsed$.ok) {
55246
+ return [parsed$, { status: "invalid" }];
55247
+ }
55248
+ const payload$ = parsed$.value;
55249
+ const body$ = null;
55250
+ const pathParams$ = {
55251
+ environment: encodeSimple("environment", payload$.environment, {
55252
+ explode: false,
55253
+ charEncoding: "percent"
55254
+ }),
55255
+ workspace_id: encodeSimple("workspace_id", payload$.workspace_id, {
55256
+ explode: false,
55257
+ charEncoding: "percent"
55258
+ })
55259
+ };
55260
+ const path$ = pathToFunc("/v1/workspaces/{workspace_id}/lists/{environment}")(pathParams$);
55261
+ const headers$ = new Headers(compactMap({
55262
+ Accept: options?.acceptHeaderOverride || "application/json;q=1, application/problem+json;q=0"
55263
+ }));
55264
+ const securityInput = await extractSecurity(client$._options.security);
55265
+ const requestSecurity = resolveGlobalSecurity(securityInput);
55266
+ const context = {
55267
+ options: client$._options,
55268
+ baseURL: options?.serverURL ?? client$._baseURL ?? "",
55269
+ operationID: "listListEntries",
55270
+ oAuth2Scopes: null,
55271
+ resolvedSecurity: requestSecurity,
55272
+ securitySource: client$._options.security,
55273
+ retryConfig: options?.retries || client$._options.retryConfig || {
55274
+ strategy: "backoff",
55275
+ backoff: {
55276
+ initialInterval: 500,
55277
+ maxInterval: 8000,
55278
+ exponent: 2,
55279
+ maxElapsedTime: 30000
55280
+ },
55281
+ retryConnectionErrors: true
55282
+ },
55283
+ retryCodes: options?.retryCodes || [
55284
+ "408",
55285
+ "429",
55286
+ "5XX"
55287
+ ]
55288
+ };
55289
+ const requestRes = client$._createRequest(context, {
55290
+ security: requestSecurity,
55291
+ method: "GET",
55292
+ baseURL: options?.serverURL,
55293
+ path: path$,
55294
+ headers: headers$,
55295
+ body: body$,
55296
+ userAgent: client$._options.userAgent,
55297
+ timeoutMs: options?.timeoutMs || client$._options.timeoutMs || -1
55298
+ }, options);
55299
+ if (!requestRes.ok) {
55300
+ return [requestRes, { status: "invalid" }];
55301
+ }
55302
+ const req$ = requestRes.value;
55303
+ const doResult = await client$._do(req$, {
55304
+ context,
55305
+ errorCodes: [],
55306
+ retryConfig: context.retryConfig,
55307
+ retryCodes: context.retryCodes
55308
+ });
55309
+ if (!doResult.ok) {
55310
+ return [doResult, { status: "request-error", request: req$ }];
55311
+ }
55312
+ return [doResult, {
55313
+ status: "complete",
55314
+ request: req$,
55315
+ response: doResult.value
55316
+ }];
55317
+ }
55318
+ var init_listsList = __esm(() => {
55319
+ init_encodings();
55320
+ init_primitives();
55321
+ init_schemas3();
55322
+ init_security();
55323
+ init_url();
55324
+ init_listlistentriesop();
55325
+ init_async();
55326
+ });
55327
+
55328
+ // src/mcp-server/tools/listsList.ts
55329
+ var args19, tool$listsList;
55330
+ var init_listsList2 = __esm(() => {
55331
+ init_listsList();
55332
+ init_listlistentriesop();
55333
+ init_tools();
55334
+ args19 = {
55335
+ request: ListListEntriesRequest$zodSchema
55336
+ };
55337
+ tool$listsList = {
55338
+ name: "list_list_entries",
55339
+ description: `List an environment's list entries.
55340
+
55341
+ Lists every entry of the signing key's environment's list, newest first: each an email or an email domain that decides the accounts it matches, block or allow, whatever their score. Requires the management scope; the other environment answers 404 not_found. Read-only and safe to retry.`,
55342
+ annotations: {
55343
+ title: "List this environment's allow and block list",
55344
+ destructiveHint: false,
55345
+ idempotentHint: true,
55346
+ openWorldHint: false,
55347
+ readOnlyHint: true
55348
+ },
55349
+ args: args19,
55350
+ tool: async (client, args, ctx) => {
55351
+ const [result] = await listsList(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55352
+ if (!result.ok) {
55353
+ return {
55354
+ content: [{ type: "text", text: result.error.message }],
55355
+ isError: true
55356
+ };
55357
+ }
55358
+ return formatResult(result.value);
55359
+ }
55360
+ };
55361
+ });
55362
+
54799
55363
  // src/models/admission.ts
54800
55364
  var Admission$zodSchema;
54801
55365
  var init_admission = __esm(() => {
@@ -54932,9 +55496,9 @@ var init_getsettingsop = __esm(() => {
54932
55496
 
54933
55497
  // src/funcs/settingsGet.ts
54934
55498
  function settingsGet(client$, request, options) {
54935
- return new APIPromise($do17(client$, request, options));
55499
+ return new APIPromise($do20(client$, request, options));
54936
55500
  }
54937
- async function $do17(client$, request, options) {
55501
+ async function $do20(client$, request, options) {
54938
55502
  const parsed$ = safeParse2(request, (value$) => GetSettingsRequest$zodSchema.parse(value$), "Input validation failed");
54939
55503
  if (!parsed$.ok) {
54940
55504
  return [parsed$, { status: "invalid" }];
@@ -55020,12 +55584,12 @@ var init_settingsGet = __esm(() => {
55020
55584
  });
55021
55585
 
55022
55586
  // src/mcp-server/tools/settingsGet.ts
55023
- var args17, tool$settingsGet;
55587
+ var args20, tool$settingsGet;
55024
55588
  var init_settingsGet2 = __esm(() => {
55025
55589
  init_settingsGet();
55026
55590
  init_getsettingsop();
55027
55591
  init_tools();
55028
- args17 = {
55592
+ args20 = {
55029
55593
  request: GetSettingsRequest$zodSchema
55030
55594
  };
55031
55595
  tool$settingsGet = {
@@ -55040,7 +55604,7 @@ Reads the settings of the signing key's environment: retention in days; per flow
55040
55604
  openWorldHint: false,
55041
55605
  readOnlyHint: true
55042
55606
  },
55043
- args: args17,
55607
+ args: args20,
55044
55608
  tool: async (client, args, ctx) => {
55045
55609
  const [result] = await settingsGet(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55046
55610
  if (!result.ok) {
@@ -55143,9 +55707,9 @@ var init_updatesettingsop = __esm(() => {
55143
55707
 
55144
55708
  // src/funcs/settingsUpdate.ts
55145
55709
  function settingsUpdate(client$, request, options) {
55146
- return new APIPromise($do18(client$, request, options));
55710
+ return new APIPromise($do21(client$, request, options));
55147
55711
  }
55148
- async function $do18(client$, request, options) {
55712
+ async function $do21(client$, request, options) {
55149
55713
  const parsed$ = safeParse2(request, (value$) => UpdateSettingsRequest$zodSchema.parse(value$), "Input validation failed");
55150
55714
  if (!parsed$.ok) {
55151
55715
  return [parsed$, { status: "invalid" }];
@@ -55232,12 +55796,12 @@ var init_settingsUpdate = __esm(() => {
55232
55796
  });
55233
55797
 
55234
55798
  // src/mcp-server/tools/settingsUpdate.ts
55235
- var args18, tool$settingsUpdate;
55799
+ var args21, tool$settingsUpdate;
55236
55800
  var init_settingsUpdate2 = __esm(() => {
55237
55801
  init_settingsUpdate();
55238
55802
  init_updatesettingsop();
55239
55803
  init_tools();
55240
- args18 = {
55804
+ args21 = {
55241
55805
  request: UpdateSettingsRequest$zodSchema
55242
55806
  };
55243
55807
  tool$settingsUpdate = {
@@ -55252,7 +55816,7 @@ Changes only what the body names, in one transaction: retention_days, refused_so
55252
55816
  openWorldHint: false,
55253
55817
  readOnlyHint: false
55254
55818
  },
55255
- args: args18,
55819
+ args: args21,
55256
55820
  tool: async (client, args, ctx) => {
55257
55821
  const [result] = await settingsUpdate(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55258
55822
  if (!result.ok) {
@@ -55279,9 +55843,9 @@ var init_webhookendpointrequest = __esm(() => {
55279
55843
 
55280
55844
  // src/funcs/webhookEndpointsCreate.ts
55281
55845
  function webhookEndpointsCreate(client$, request, options) {
55282
- return new APIPromise($do19(client$, request, options));
55846
+ return new APIPromise($do22(client$, request, options));
55283
55847
  }
55284
- async function $do19(client$, request, options) {
55848
+ async function $do22(client$, request, options) {
55285
55849
  const parsed$ = safeParse2(request, (value$) => WebhookEndpointRequest$zodSchema.parse(value$), "Input validation failed");
55286
55850
  if (!parsed$.ok) {
55287
55851
  return [parsed$, { status: "invalid" }];
@@ -55345,12 +55909,12 @@ var init_webhookEndpointsCreate = __esm(() => {
55345
55909
  });
55346
55910
 
55347
55911
  // src/mcp-server/tools/webhookEndpointsCreate.ts
55348
- var args19, tool$webhookEndpointsCreate;
55912
+ var args22, tool$webhookEndpointsCreate;
55349
55913
  var init_webhookEndpointsCreate2 = __esm(() => {
55350
55914
  init_webhookEndpointsCreate();
55351
55915
  init_webhookendpointrequest();
55352
55916
  init_tools();
55353
- args19 = {
55917
+ args22 = {
55354
55918
  request: WebhookEndpointRequest$zodSchema
55355
55919
  };
55356
55920
  tool$webhookEndpointsCreate = {
@@ -55365,7 +55929,7 @@ Registers a webhook endpoint and returns it with its first signing secret, shown
55365
55929
  openWorldHint: false,
55366
55930
  readOnlyHint: false
55367
55931
  },
55368
- args: args19,
55932
+ args: args22,
55369
55933
  tool: async (client, args, ctx) => {
55370
55934
  const [result] = await webhookEndpointsCreate(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55371
55935
  if (!result.ok) {
@@ -55415,9 +55979,9 @@ var init_deletewebhookendpointop = __esm(() => {
55415
55979
 
55416
55980
  // src/funcs/webhookEndpointsDelete.ts
55417
55981
  function webhookEndpointsDelete(client$, request, options) {
55418
- return new APIPromise($do20(client$, request, options));
55982
+ return new APIPromise($do23(client$, request, options));
55419
55983
  }
55420
- async function $do20(client$, request, options) {
55984
+ async function $do23(client$, request, options) {
55421
55985
  const parsed$ = safeParse2(request, (value$) => DeleteWebhookEndpointRequest$zodSchema.parse(value$), "Input validation failed");
55422
55986
  if (!parsed$.ok) {
55423
55987
  return [parsed$, { status: "invalid" }];
@@ -55499,12 +56063,12 @@ var init_webhookEndpointsDelete = __esm(() => {
55499
56063
  });
55500
56064
 
55501
56065
  // src/mcp-server/tools/webhookEndpointsDelete.ts
55502
- var args20, tool$webhookEndpointsDelete;
56066
+ var args23, tool$webhookEndpointsDelete;
55503
56067
  var init_webhookEndpointsDelete2 = __esm(() => {
55504
56068
  init_webhookEndpointsDelete();
55505
56069
  init_deletewebhookendpointop();
55506
56070
  init_tools();
55507
- args20 = {
56071
+ args23 = {
55508
56072
  request: DeleteWebhookEndpointRequest$zodSchema
55509
56073
  };
55510
56074
  tool$webhookEndpointsDelete = {
@@ -55519,7 +56083,7 @@ Deletes the endpoint and its signing keys. Deliveries still queued for it are dr
55519
56083
  openWorldHint: false,
55520
56084
  readOnlyHint: false
55521
56085
  },
55522
- args: args20,
56086
+ args: args23,
55523
56087
  tool: async (client, args, ctx) => {
55524
56088
  const [result] = await webhookEndpointsDelete(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55525
56089
  if (!result.ok) {
@@ -55535,9 +56099,9 @@ Deletes the endpoint and its signing keys. Deliveries still queued for it are dr
55535
56099
 
55536
56100
  // src/funcs/webhookEndpointsList.ts
55537
56101
  function webhookEndpointsList(client$, options) {
55538
- return new APIPromise($do21(client$, options));
56102
+ return new APIPromise($do24(client$, options));
55539
56103
  }
55540
- async function $do21(client$, options) {
56104
+ async function $do24(client$, options) {
55541
56105
  const path$ = pathToFunc("/v1/webhooks")();
55542
56106
  const headers$ = new Headers(compactMap({
55543
56107
  Accept: options?.acceptHeaderOverride || "application/json;q=1, application/problem+json;q=0"
@@ -55729,9 +56293,9 @@ var init_listwebhookdeliveriesop = __esm(() => {
55729
56293
 
55730
56294
  // src/funcs/webhookEndpointsListDeliveries.ts
55731
56295
  function webhookEndpointsListDeliveries(client$, request, options) {
55732
- return new APIPromise($do22(client$, request, options));
56296
+ return new APIPromise($do25(client$, request, options));
55733
56297
  }
55734
- async function $do22(client$, request, options) {
56298
+ async function $do25(client$, request, options) {
55735
56299
  const parsed$ = safeParse2(request, (value$) => ListWebhookDeliveriesRequest$zodSchema.parse(value$), "Input validation failed");
55736
56300
  if (!parsed$.ok) {
55737
56301
  return [parsed$, { status: "invalid" }];
@@ -55818,12 +56382,12 @@ var init_webhookEndpointsListDeliveries = __esm(() => {
55818
56382
  });
55819
56383
 
55820
56384
  // src/mcp-server/tools/webhookEndpointsListDeliveries.ts
55821
- var args21, tool$webhookEndpointsListDeliveries;
56385
+ var args24, tool$webhookEndpointsListDeliveries;
55822
56386
  var init_webhookEndpointsListDeliveries2 = __esm(() => {
55823
56387
  init_webhookEndpointsListDeliveries();
55824
56388
  init_listwebhookdeliveriesop();
55825
56389
  init_tools();
55826
- args21 = {
56390
+ args24 = {
55827
56391
  request: ListWebhookDeliveriesRequest$zodSchema
55828
56392
  };
55829
56393
  tool$webhookEndpointsListDeliveries = {
@@ -55838,7 +56402,7 @@ Every POST the endpoint received, newest first: the event id and type, which att
55838
56402
  openWorldHint: false,
55839
56403
  readOnlyHint: true
55840
56404
  },
55841
- args: args21,
56405
+ args: args24,
55842
56406
  tool: async (client, args, ctx) => {
55843
56407
  const [result] = await webhookEndpointsListDeliveries(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
55844
56408
  if (!result.ok) {
@@ -55912,9 +56476,9 @@ var init_replaywebhookdeliveryop = __esm(() => {
55912
56476
 
55913
56477
  // src/funcs/webhookEndpointsReplayDelivery.ts
55914
56478
  function webhookEndpointsReplayDelivery(client$, request, options) {
55915
- return new APIPromise($do23(client$, request, options));
56479
+ return new APIPromise($do26(client$, request, options));
55916
56480
  }
55917
- async function $do23(client$, request, options) {
56481
+ async function $do26(client$, request, options) {
55918
56482
  const parsed$ = safeParse2(request, (value$) => ReplayWebhookDeliveryRequest$zodSchema.parse(value$), "Input validation failed");
55919
56483
  if (!parsed$.ok) {
55920
56484
  return [parsed$, { status: "invalid" }];
@@ -55988,12 +56552,12 @@ var init_webhookEndpointsReplayDelivery = __esm(() => {
55988
56552
  });
55989
56553
 
55990
56554
  // src/mcp-server/tools/webhookEndpointsReplayDelivery.ts
55991
- var args22, tool$webhookEndpointsReplayDelivery;
56555
+ var args25, tool$webhookEndpointsReplayDelivery;
55992
56556
  var init_webhookEndpointsReplayDelivery2 = __esm(() => {
55993
56557
  init_webhookEndpointsReplayDelivery();
55994
56558
  init_replaywebhookdeliveryop();
55995
56559
  init_tools();
55996
- args22 = {
56560
+ args25 = {
55997
56561
  request: ReplayWebhookDeliveryRequest$zodSchema
55998
56562
  };
55999
56563
  tool$webhookEndpointsReplayDelivery = {
@@ -56008,7 +56572,7 @@ Queues the event for the endpoint again: the same event id and body it received,
56008
56572
  openWorldHint: false,
56009
56573
  readOnlyHint: false
56010
56574
  },
56011
- args: args22,
56575
+ args: args25,
56012
56576
  tool: async (client, args, ctx) => {
56013
56577
  const [result] = await webhookEndpointsReplayDelivery(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
56014
56578
  if (!result.ok) {
@@ -56094,9 +56658,9 @@ var init_rotatewebhooksigningkeyop = __esm(() => {
56094
56658
 
56095
56659
  // src/funcs/webhookEndpointsRotateSigningKey.ts
56096
56660
  function webhookEndpointsRotateSigningKey(client$, request, options) {
56097
- return new APIPromise($do24(client$, request, options));
56661
+ return new APIPromise($do27(client$, request, options));
56098
56662
  }
56099
- async function $do24(client$, request, options) {
56663
+ async function $do27(client$, request, options) {
56100
56664
  const parsed$ = safeParse2(request, (value$) => RotateWebhookSigningKeyRequest$zodSchema.parse(value$), "Input validation failed");
56101
56665
  if (!parsed$.ok) {
56102
56666
  return [parsed$, { status: "invalid" }];
@@ -56166,12 +56730,12 @@ var init_webhookEndpointsRotateSigningKey = __esm(() => {
56166
56730
  });
56167
56731
 
56168
56732
  // src/mcp-server/tools/webhookEndpointsRotateSigningKey.ts
56169
- var args23, tool$webhookEndpointsRotateSigningKey;
56733
+ var args26, tool$webhookEndpointsRotateSigningKey;
56170
56734
  var init_webhookEndpointsRotateSigningKey2 = __esm(() => {
56171
56735
  init_webhookEndpointsRotateSigningKey();
56172
56736
  init_rotatewebhooksigningkeyop();
56173
56737
  init_tools();
56174
- args23 = {
56738
+ args26 = {
56175
56739
  request: RotateWebhookSigningKeyRequest$zodSchema
56176
56740
  };
56177
56741
  tool$webhookEndpointsRotateSigningKey = {
@@ -56186,7 +56750,7 @@ Issues a new signing key for the endpoint and returns its secret once. Every del
56186
56750
  openWorldHint: false,
56187
56751
  readOnlyHint: false
56188
56752
  },
56189
- args: args23,
56753
+ args: args26,
56190
56754
  tool: async (client, args, ctx) => {
56191
56755
  const [result] = await webhookEndpointsRotateSigningKey(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
56192
56756
  if (!result.ok) {
@@ -56287,9 +56851,9 @@ var init_sendwebhooktesteventop = __esm(() => {
56287
56851
 
56288
56852
  // src/funcs/webhookEndpointsSendTestEvent.ts
56289
56853
  function webhookEndpointsSendTestEvent(client$, request, options) {
56290
- return new APIPromise($do25(client$, request, options));
56854
+ return new APIPromise($do28(client$, request, options));
56291
56855
  }
56292
- async function $do25(client$, request, options) {
56856
+ async function $do28(client$, request, options) {
56293
56857
  const parsed$ = safeParse2(request, (value$) => SendWebhookTestEventRequest$zodSchema.parse(value$), "Input validation failed");
56294
56858
  if (!parsed$.ok) {
56295
56859
  return [parsed$, { status: "invalid" }];
@@ -56359,12 +56923,12 @@ var init_webhookEndpointsSendTestEvent = __esm(() => {
56359
56923
  });
56360
56924
 
56361
56925
  // src/mcp-server/tools/webhookEndpointsSendTestEvent.ts
56362
- var args24, tool$webhookEndpointsSendTestEvent;
56926
+ var args27, tool$webhookEndpointsSendTestEvent;
56363
56927
  var init_webhookEndpointsSendTestEvent2 = __esm(() => {
56364
56928
  init_webhookEndpointsSendTestEvent();
56365
56929
  init_sendwebhooktesteventop();
56366
56930
  init_tools();
56367
- args24 = {
56931
+ args27 = {
56368
56932
  request: SendWebhookTestEventRequest$zodSchema
56369
56933
  };
56370
56934
  tool$webhookEndpointsSendTestEvent = {
@@ -56379,7 +56943,7 @@ endpoint.verification sends a signed challenge now and answers whether the endpo
56379
56943
  openWorldHint: false,
56380
56944
  readOnlyHint: false
56381
56945
  },
56382
- args: args24,
56946
+ args: args27,
56383
56947
  tool: async (client, args, ctx) => {
56384
56948
  const [result] = await webhookEndpointsSendTestEvent(client, args.request, { fetchOptions: { signal: ctx.mcpReq.signal } }).$inspect();
56385
56949
  if (!result.ok) {
@@ -56397,7 +56961,7 @@ endpoint.verification sends a signed challenge now and answers whether the endpo
56397
56961
  function createMCPServer(deps) {
56398
56962
  const server = new McpServer({
56399
56963
  name: "NoResponse",
56400
- version: "0.6.9"
56964
+ version: "0.6.11"
56401
56965
  });
56402
56966
  const getClient = deps.getSDK || (() => new NoResponseCore({
56403
56967
  security: deps.security,
@@ -56441,6 +57005,9 @@ function createMCPServer(deps) {
56441
57005
  tool(tool$webhookEndpointsReplayDelivery);
56442
57006
  tool(tool$settingsGet);
56443
57007
  tool(tool$settingsUpdate);
57008
+ tool(tool$listsList);
57009
+ tool(tool$listsCreate);
57010
+ tool(tool$listsDelete);
56444
57011
  if (deps.dynamic) {
56445
57012
  registerDynamicTools(deps.logger, server, getClient, toolMap, scopes);
56446
57013
  }
@@ -56470,6 +57037,9 @@ var init_server = __esm(() => {
56470
57037
  init_integrationsRotate2();
56471
57038
  init_keysList2();
56472
57039
  init_keysRevoke2();
57040
+ init_listsCreate2();
57041
+ init_listsDelete2();
57042
+ init_listsList2();
56473
57043
  init_settingsGet2();
56474
57044
  init_settingsUpdate2();
56475
57045
  init_webhookEndpointsCreate2();
@@ -56634,6 +57204,24 @@ Reads the settings of the signing key's environment: retention in days; per flow
56634
57204
  description: `Change an environment's settings.
56635
57205
 
56636
57206
  Changes only what the body names, in one transaction: retention_days, refused_sources, and per flow step_up, review, block (null turns blocking off), default_depth, admission, hold_seconds, on_expiry, or inherits_account_creation to return login or purchase to account_creation's thresholds. After the change each flow keeps 0 < step_up < review <= 100 and block off or review <= block <= 100; a change that breaks it answers 400 naming the flow. A policy change is one new policy_version with the signing key's prefix as updated_by, and every change is recorded in the workspace's audit log with the key as its actor. Requires the management scope; the other environment answers 404 not_found. A change reaches assessments within a minute.`
57207
+ },
57208
+ {
57209
+ name: "list_list_entries",
57210
+ description: `List an environment's list entries.
57211
+
57212
+ Lists every entry of the signing key's environment's list, newest first: each an email or an email domain that decides the accounts it matches, block or allow, whatever their score. Requires the management scope; the other environment answers 404 not_found. Read-only and safe to retry.`
57213
+ },
57214
+ {
57215
+ name: "create_list_entry",
57216
+ description: `Add an entry to an environment's list.
57217
+
57218
+ Adds an exact email (kind email) or an email domain (kind email_domain) to the signing key's environment's list with the action block or allow, and answers the entry with its value in canonical form. An account matches when one of its assessments sent the email, or an email of the domain: a block entry decides block for every flow and an allow entry allow, block winning when both match, and the account's risk carries list_match with the entry's id while its score is unchanged. Every matching account is re-decided at once and sends account.risk_changed when its decision changes. A value already on the list answers 409 list_entry_exists, a full list 409 list_limit_reached, and an entry matching more than 5,000 accounts 409 list_entry_too_broad. Requires the management scope; the other environment answers 404 not_found.`
57219
+ },
57220
+ {
57221
+ name: "delete_list_entry",
57222
+ description: `Remove an entry from an environment's list.
57223
+
57224
+ Removes an entry from the signing key's environment's list and re-decides the accounts it matched, the 5,000 most recently assessed at most, each sending account.risk_changed when its decision changes. An unknown or already removed entry answers 404 not_found. Requires the management scope.`
56637
57225
  },
56638
57226
  {
56639
57227
  name: "wait_for_assessment",
@@ -65134,7 +65722,7 @@ var routes = buildRouteMap({
65134
65722
  var app = buildApplication(routes, {
65135
65723
  name: "mcp",
65136
65724
  versionInfo: {
65137
- currentVersion: "0.6.9"
65725
+ currentVersion: "0.6.11"
65138
65726
  }
65139
65727
  });
65140
65728
  run(app, process3.argv.slice(2), buildContext(process3));
@@ -65142,5 +65730,5 @@ export {
65142
65730
  app
65143
65731
  };
65144
65732
 
65145
- //# debugId=26CD1D1E48E0776D64756E2164756E21
65733
+ //# debugId=8204760734E2D1B964756E2164756E21
65146
65734
  //# sourceMappingURL=mcp-server.js.map