@noresponse/mcp 0.6.10 → 0.6.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +79 -0
- package/bin/mcp-server.js +3093 -933
- package/bin/mcp-server.js.map +72 -19
- package/manifest.json +47 -3
- package/package.json +1 -1
package/manifest.json
CHANGED
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"type": "string"
|
|
41
41
|
}
|
|
42
42
|
},
|
|
43
|
-
"version": "0.6.
|
|
43
|
+
"version": "0.6.12",
|
|
44
44
|
"tools": [
|
|
45
45
|
{
|
|
46
46
|
"name": "create_assessment",
|
|
@@ -62,6 +62,18 @@
|
|
|
62
62
|
"name": "query_assessments",
|
|
63
63
|
"description": "Page through one account's unexpired assessments.\n\nHistory 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."
|
|
64
64
|
},
|
|
65
|
+
{
|
|
66
|
+
"name": "search_assessments",
|
|
67
|
+
"description": "Search assessments across this environment\n\nSearch 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."
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"name": "get_assessment_version",
|
|
71
|
+
"description": "Retrieve an exact assessment revision\n\nRetrieve 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."
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"name": "bind_provisional_account",
|
|
75
|
+
"description": "Bind a provisional signup account\n\nOne-time association to an opaque stable customer account. The assessment is its natural idempotency key. Repeating the same binding returns its first receipt; a conflicting target is refused. No arbitrary account merging."
|
|
76
|
+
},
|
|
65
77
|
{
|
|
66
78
|
"name": "list_changed_accounts",
|
|
67
79
|
"description": "Poll the accounts whose risk changed.\n\nYour accounts whose risk changed, oldest change first, each as accounts.get answers it. Every page carries next_cursor: pass it back as changed_since to read the changes made after that page; without changed_since the list starts from the oldest change. When nothing changed, items is empty and next_cursor is the cursor you sent, so poll by calling again with the latest next_cursor. An account appears again each time its risk changes, with a higher risk_version; keep the copy with the highest. unenforced=true lists only accounts with a decision other than allow for some flow and no applied enforcement at their current risk_version; such a page can hold fewer than limit items, or none, while later changes exist, so keep polling with next_cursor. Requires the history scope. Read-only and safe to retry. A tampered or foreign cursor answers 400 invalid_cursor."
|
|
@@ -82,6 +94,34 @@
|
|
|
82
94
|
"name": "record_enforcement",
|
|
83
95
|
"description": "Record what you did to an account in your identity provider.\n\nRecords what you did to the account in your identity provider for one flow's decision at one risk_version: the action (or none), the account's state before it, the provider and whether it was applied or failed. It is your action, not an outcome, and it leaves the account's risk unchanged. A record is kept once per account, risk_version, flow and action: the first report answers 201, and a repeat answers 200 with the stored record unchanged, so retries are safe without an Idempotency-Key. An applied report after a failed one replaces the failed record, keeping its id and created_at, and answers 201. A risk_version older than the account's current one is accepted and stored, but only an applied record at the current risk_version takes the account out of listChanged with unenforced=true; a newer one answers 409 risk_version_ahead. An account with no current risk answers 404 not_found. error_code is allowed only with status failed. Requires the history scope."
|
|
84
96
|
},
|
|
97
|
+
{
|
|
98
|
+
"name": "record_account_outcome",
|
|
99
|
+
"description": "Record or correct an account outcome\n\nRecord a factual report, not an enforcement action. A known outcome replaces the effective report. unknown alone records uncertainty without changing it; unknown with supersedes explicitly retracts it. supersedes must name the current effective report or the request answers 409 outcome_conflict. Reports remain append-only. Idempotency-Key is required. observed_at defaults to receipt time and cannot be over five minutes ahead."
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"name": "list_account_outcomes",
|
|
103
|
+
"description": "List retained account feedback\n\nList retained account reports, newest first. The page-level effective outcome id names the current report. Each receipt preserves the effective report and risk version from its original write. Page with the returned cursor."
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
"name": "get_account_decision",
|
|
107
|
+
"description": "Retrieve an exact historical account decision\n\nRetrieve the account decision at one recorded risk version. The answer uses the original assessment and account-specific risk inputs. Earlier versions that were not captured return 404. The assessment version, policy version and account calculation version identify the decision."
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"name": "associate_account_credential",
|
|
111
|
+
"description": "Associate a customer-issued API key\n\nAssociate the SHA-256 of a high-entropy key issued by your service. Send the hash instead of the key. Repeating a hash returns its original association, including its retirement state. A hash associated with another account returns a conflict."
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
"name": "list_account_credentials",
|
|
115
|
+
"description": "List issued credential associations\n\nRetained credential associations, ordered by id. Page with the authenticated cursor. Associations are removed on account erasure."
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"name": "retire_account_credential",
|
|
119
|
+
"description": "Retire an issued credential association\n\nMark this association retired, idempotently. This does not revoke the actual key. Requires delete scope."
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"name": "export_account",
|
|
123
|
+
"description": "Export an account\n\nRetrieve 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."
|
|
124
|
+
},
|
|
85
125
|
{
|
|
86
126
|
"name": "list_keys",
|
|
87
127
|
"description": "List API keys.\n\nLists the keys of the signing key's environment, newest first, at most 200, revoked and expired keys included, without secrets: each key's id, prefix, scopes, status, and who created and revoked it. Requires the management scope. Read-only and safe to retry."
|
|
@@ -142,17 +182,21 @@
|
|
|
142
182
|
"name": "update_settings",
|
|
143
183
|
"description": "Change an environment's settings.\n\nChanges 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."
|
|
144
184
|
},
|
|
185
|
+
{
|
|
186
|
+
"name": "list_request_diagnostics",
|
|
187
|
+
"description": "Search request diagnostics\n\nSearch authenticated request attempts by time, route, status or request correlation id. The interval is at most seven days. Each attempt has a unique id and may include the exact served decision. Records are bounded best effort and exclude request bodies, secrets and source payloads. A repeated correlation id does not overwrite another attempt."
|
|
188
|
+
},
|
|
145
189
|
{
|
|
146
190
|
"name": "list_list_entries",
|
|
147
191
|
"description": "List an environment's list entries.\n\nLists 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."
|
|
148
192
|
},
|
|
149
193
|
{
|
|
150
194
|
"name": "create_list_entry",
|
|
151
|
-
"description": "Add an entry to an environment's list.\n\nAdds 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
|
|
195
|
+
"description": "Add an entry to an environment's list.\n\nAdds 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."
|
|
152
196
|
},
|
|
153
197
|
{
|
|
154
198
|
"name": "delete_list_entry",
|
|
155
|
-
"description": "Remove an entry from an environment's list.\n\nRemoves an entry from the signing key's environment's list and re-decides
|
|
199
|
+
"description": "Remove an entry from an environment's list.\n\nRemoves 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."
|
|
156
200
|
},
|
|
157
201
|
{
|
|
158
202
|
"name": "wait_for_assessment",
|