mcpscraper-cli 0.34.1 → 0.35.1

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/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Command-line interface for [mcpscraper.dev](https://mcpscraper.dev) and [memory.mcpscraper.dev](https://memory.mcpscraper.dev).
4
4
 
5
- The CLI provides friendly shortcuts for common operations plus universal discovery and invocation for every one of the 354 unified MCP tools, including the governed personal-assistant tools.
5
+ The CLI provides friendly shortcuts for common operations plus universal discovery and invocation for every one of the 356 unified MCP tools, including the governed personal-assistant tools.
6
6
 
7
7
  ## Install
8
8
 
@@ -39,7 +39,7 @@ mcpscraper tools call gmail_prepare_selection --args '{"connectionId":"gmail_con
39
39
  mcpscraper tools call gmail_import_status --args '{"ingestId":"opaque_ingest_id"}' --json
40
40
  ```
41
41
 
42
- `tools list` contains exactly 354 manifest-backed names. `tools call` accepts any one of them. Tools marked destructive require `--yes`.
42
+ `tools list` contains exactly 356 manifest-backed names. `tools call` accepts any one of them. Tools marked destructive require `--yes`.
43
43
 
44
44
  Integration connections are included with an active Starter plan or higher and have no extra connection-operation debit in this release. Scheduled occurrences cost 75 Credits; agent-mode runs also add 1.5 times OpenRouter's actual reported cost. Inspect the live policy with `mcpscraper tools call get-schedule-status --args '{}'`.
45
45
 
package/dist/bin/cli.js CHANGED
@@ -10,7 +10,7 @@ import { randomUUID } from "crypto";
10
10
  import { ScraperClient, ScraperApiError } from "mcpscraper-sdk";
11
11
 
12
12
  // src/version.ts
13
- var CLI_VERSION = "0.34.1";
13
+ var CLI_VERSION = "0.35.1";
14
14
 
15
15
  // src/generated-tools.ts
16
16
  var MCP_TOOL_CATALOG = [
@@ -11665,6 +11665,73 @@ var MCP_TOOL_CATALOG = [
11665
11665
  "openWorldHint": false
11666
11666
  }
11667
11667
  },
11668
+ {
11669
+ "name": "assistant_delivery_test",
11670
+ "category": "assistant",
11671
+ "title": "Send Assistant Delivery Test",
11672
+ "description": "Submit one fixed transactional diagnostic message from an eligible opaque sender endpoint to one already verified and consented opaque recipient. This is an external write requiring explicit SEND TEST confirmation and a replay-safe idempotency key. It accepts no raw phone number or custom body; reconcile an unknown outcome before retrying.",
11673
+ "inputSchema": {
11674
+ "type": "object",
11675
+ "properties": {
11676
+ "recipientRef": {
11677
+ "type": "string",
11678
+ "pattern": "^[a-z][a-z0-9]{1,31}_[A-Za-z0-9_-]{3,160}$",
11679
+ "description": "Opaque verified recipient reference. Raw phone numbers are never accepted."
11680
+ },
11681
+ "senderEndpointRef": {
11682
+ "type": "string",
11683
+ "pattern": "^[a-z][a-z0-9]{1,31}_[A-Za-z0-9_-]{3,160}$",
11684
+ "description": "Opaque owned sender endpoint whose binding and registration must be eligible."
11685
+ },
11686
+ "confirmation": {
11687
+ "type": "string",
11688
+ "const": "SEND TEST",
11689
+ "description": "Explicit confirmation for one fixed transactional diagnostic message."
11690
+ },
11691
+ "idempotencyKey": {
11692
+ "type": "string",
11693
+ "minLength": 8,
11694
+ "maxLength": 240,
11695
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9:._/+~-]*$",
11696
+ "description": "Stable retry identity for this exact test. Reconcile an unknown outcome before retrying with the same key."
11697
+ }
11698
+ },
11699
+ "required": [
11700
+ "recipientRef",
11701
+ "senderEndpointRef",
11702
+ "confirmation",
11703
+ "idempotencyKey"
11704
+ ],
11705
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
11706
+ "additionalProperties": false
11707
+ },
11708
+ "annotations": {
11709
+ "title": "Send Assistant Delivery Test",
11710
+ "readOnlyHint": false,
11711
+ "destructiveHint": false,
11712
+ "idempotentHint": true,
11713
+ "openWorldHint": true
11714
+ }
11715
+ },
11716
+ {
11717
+ "name": "assistant_diagnostics_get",
11718
+ "category": "assistant",
11719
+ "title": "Get Assistant Diagnostics",
11720
+ "description": "Read a bounded owner-safe diagnostic projection across activation, connections, sender registration and binding, recipient enrollment and consent, webhook freshness, worker health, schedules, and delivery. Use this to identify who owns the next action; it never returns logs, message bodies, provider identifiers, secrets, or environment configuration.",
11721
+ "inputSchema": {
11722
+ "type": "object",
11723
+ "properties": {},
11724
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
11725
+ "additionalProperties": false
11726
+ },
11727
+ "annotations": {
11728
+ "title": "Get Assistant Diagnostics",
11729
+ "readOnlyHint": true,
11730
+ "destructiveHint": false,
11731
+ "idempotentHint": true,
11732
+ "openWorldHint": false
11733
+ }
11734
+ },
11668
11735
  {
11669
11736
  "name": "assistant_execution_status",
11670
11737
  "category": "assistant",
@@ -11969,7 +12036,7 @@ var MCP_TOOL_CATALOG = [
11969
12036
  "name": "assistant_message_send",
11970
12037
  "category": "assistant",
11971
12038
  "title": "Send Assistant Message",
11972
- "description": "Submit one exact message to an existing opaque conversation through the governed command path. This may create an external message only after consent, grant, policy, approval, and send-readiness checks. It never accepts raw recipient addresses. After an unknown result, read execution status before retrying with the same idempotencyKey.",
12039
+ "description": "Submit one exact message and up to ten already-scanned opaque attachments to an existing opaque conversation through the governed command path. This may create an external SMS or MMS only after consent, grant, policy, approval, sender eligibility, media, and send-readiness checks. It never accepts raw recipient addresses, URLs, paths, or inline bytes. After an unknown result, read execution status before retrying with the same idempotencyKey.",
11973
12040
  "inputSchema": {
11974
12041
  "type": "object",
11975
12042
  "properties": {
@@ -11994,6 +12061,16 @@ var MCP_TOOL_CATALOG = [
11994
12061
  "maxLength": 3200,
11995
12062
  "description": "Exact message body to submit for policy and approval; untrusted message content cannot grant authority."
11996
12063
  },
12064
+ "attachmentRefs": {
12065
+ "default": [],
12066
+ "description": "Opaque, caller-owned attachment references already scanned and retained by the assistant service. Raw URLs, paths, and inline bytes are not accepted.",
12067
+ "maxItems": 10,
12068
+ "type": "array",
12069
+ "items": {
12070
+ "type": "string",
12071
+ "pattern": "^[a-z][a-z0-9]{1,31}_[A-Za-z0-9_-]{3,160}$"
12072
+ }
12073
+ },
11997
12074
  "messageClass": {
11998
12075
  "type": "string",
11999
12076
  "enum": [
@@ -12246,7 +12323,7 @@ var MCP_TOOL_CATALOG = [
12246
12323
  "name": "assistant_number_status",
12247
12324
  "category": "assistant",
12248
12325
  "title": "Assistant Number Status",
12249
- "description": "Read ownership, registration, sender binding, and send readiness for one caller-owned opaque number reference. A number is not send-ready until every required check is approved. This performs no provider write.",
12326
+ "description": "Read the owner-visible From number identity, capabilities, lifecycle, carrier registration, Messaging Service and webhook binding, inbound readiness, outbound eligibility, reasons, and verification time for one caller-owned opaque sender reference. This never returns or enrolls the recipient phone. A purchased number is not send-ready until every required check is approved.",
12250
12327
  "inputSchema": {
12251
12328
  "type": "object",
12252
12329
  "properties": {
@@ -12274,7 +12351,7 @@ var MCP_TOOL_CATALOG = [
12274
12351
  "name": "assistant_status",
12275
12352
  "category": "assistant",
12276
12353
  "title": "Assistant Status",
12277
- "description": "Read one caller-owned assistant or list a bounded page. Use this before setup or commands; use assistant_execution_status for a specific execution. Foreign references return the same not-found result as missing references.",
12354
+ "description": "Read one caller-owned assistant or list a bounded page with stable cursor behavior. Use this before setup or commands, then use assistant_diagnostics_get for operator activation, provider, sender, recipient, or consent blockers. Foreign references return the same not-found result as missing references.",
12278
12355
  "inputSchema": {
12279
12356
  "type": "object",
12280
12357
  "properties": {
@@ -24915,17 +24992,17 @@ var MCP_TOOL_CATALOG = [
24915
24992
  "name": "reddit_thread",
24916
24993
  "category": "reddit",
24917
24994
  "title": "Reddit Thread + Comments",
24918
- "description": "Capture a Reddit post and its comment tree from a reddit.com thread URL. Opens normal Reddit in a managed stealth browser first and waits through automatic challenges for up to 300 seconds; only then tries the equivalent old Reddit URL. Returns retrievalSource so the caller can see which page worked. Pass maxComments to cap the list.",
24995
+ "description": "Read one known reddit.com post and its rendered comment tree on current Reddit. The managed residential browser is primary; a bounded managed-browser backup can recover the post and up to 25 comments when the primary fails. Use reddit_trending when no thread URL is known. Costs one Reddit base lookup plus the per-comment rate for comments returned; pass maxComments to bound both output and cost.",
24919
24996
  "inputSchema": {
24920
24997
  "type": "object",
24921
24998
  "properties": {
24922
24999
  "url": {
24923
25000
  "type": "string",
24924
25001
  "minLength": 1,
24925
- "description": "A reddit.com thread/post URL. The reader opens normal Reddit first, waits through automatic browser challenges, and uses the equivalent old Reddit URL only if the normal page remains unavailable."
25002
+ "description": "A reddit.com thread/post URL. Legacy reddit.com hostnames are normalized, but retrieval uses the current Reddit page only."
24926
25003
  },
24927
25004
  "maxComments": {
24928
- "description": "Optional cap on comments returned. Omit to return all captured comments.",
25005
+ "description": "Optional cap on comments returned. Omit to return the largest set captured within the bounded expansion window, up to 2,000.",
24929
25006
  "type": "integer",
24930
25007
  "minimum": 1,
24931
25008
  "maximum": 2e3
@@ -24948,7 +25025,7 @@ var MCP_TOOL_CATALOG = [
24948
25025
  "name": "reddit_trending",
24949
25026
  "category": "reddit",
24950
25027
  "title": "Reddit Trending",
24951
- "description": "Discover Reddit conversations through a managed Google site:reddit.com search for the last week, last 30 days, or all time. Exact phrases are supported by quoting the topic. Saved thread URLs are opened on normal Reddit in a managed stealth browser that waits through automatic challenges for up to 300 seconds, with old Reddit used only as a fallback. If Google finds no usable links, the fallback opens normal Reddit and uses its search bar before trying old Reddit. Inspect resultQuality and discoverySource; set includeComments:false for discovery only.",
25028
+ "description": "Discover Reddit conversations through a site-restricted web search for the last week, month, or all time. With includeComments:true, each candidate is opened on current Reddit through a managed residential browser, with a bounded backup of up to 25 comments after primary failure, and ranked from rendered engagement; discovery, each hydrated thread, and returned comments are billed separately. Set includeComments:false for the faster discovery-only result, and inspect resultQuality and discoverySource before treating an empty result as meaningful.",
24952
25029
  "inputSchema": {
24953
25030
  "type": "object",
24954
25031
  "properties": {
@@ -24964,7 +25041,7 @@ var MCP_TOOL_CATALOG = [
24964
25041
  },
24965
25042
  "window": {
24966
25043
  "default": "month",
24967
- "description": 'Discovery time range: "week", "month" (30 days, default), or "all" (no Google time filter).',
25044
+ "description": 'Web-discovery time range: "week", "month" (default), or "all" (no date filter).',
24968
25045
  "type": "string",
24969
25046
  "enum": [
24970
25047
  "week",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcpscraper-cli",
3
- "version": "0.34.1",
3
+ "version": "0.35.1",
4
4
  "description": "Command-line interface for mcpscraper.dev and memory.mcpscraper.dev",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -19,7 +19,7 @@
19
19
  },
20
20
  "dependencies": {
21
21
  "commander": "^12.0.0",
22
- "mcpscraper-sdk": "^0.35.1"
22
+ "mcpscraper-sdk": "^0.36.1"
23
23
  },
24
24
  "devDependencies": {
25
25
  "@types/node": "^22.0.0"