@opencraw/mcp 0.1.2 → 0.1.3

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
@@ -37,6 +37,9 @@ a module of its choosing.
37
37
  credentials as `{{env.NAME}}` read from the server's environment. The `probe` and `run` tools then take an
38
38
  `access` argument naming a profile. The file and the credentials never pass through a tool call.
39
39
 
40
+ `OPENCRAW_PROFILES` is the directory of the persistent browser profiles recipes name in
41
+ `session.browserProfile` (default `.opencraw/profiles` in the server's working directory).
42
+
40
43
  ## Tools
41
44
 
42
45
  ### `probe`
@@ -90,6 +93,7 @@ Crawls the recipes at the given paths, or passed inline.
90
93
  | `dryRun?` | One record per input recipe instead of a full crawl — for checking a recipe under construction. |
91
94
  | `headed?`, `browserPath?`, `insecureTls?`, `userAgent?` | As in the cli. |
92
95
  | `access?` | The access profile for recipes that name none, from the server's `OPENCRAW_ACCESS` config. |
96
+ | `parallel?` | How many input recipes run at once (1 to 16, default 1). |
93
97
 
94
98
  Returns `{ report: CrawlReport, records?, truncated? }`. `records`/`truncated` are present only when `out`
95
99
  was not given, and `records` is capped at 50 even then.
package/dist/index.esm.js CHANGED
@@ -130,7 +130,8 @@ const runInputShape = {
130
130
  browserPath: z.string().optional().describe('A browser binary other than the one Playwright installed. Defaults to OPENCRAW_CHROMIUM in the server\'s environment.'),
131
131
  insecureTls: z.boolean().optional().describe("Accept an intercepting proxy's certificate. Defaults to OPENCRAW_INSECURE_TLS=1 in the server's environment."),
132
132
  userAgent: z.string().optional().describe('The user agent to send.'),
133
- access: z.string().optional().describe('An access profile (a proxy) from the server\'s access config file, OPENCRAW_ACCESS, used by every recipe that names none. The error for an unknown name lists the profiles.')
133
+ access: z.string().optional().describe('An access profile (a proxy) from the server\'s access config file, OPENCRAW_ACCESS, used by every recipe that names none. The error for an unknown name lists the profiles.'),
134
+ parallel: z.int().min(1).max(16).optional().describe('How many input recipes run at once. Default 1. Iterations inside a recipe follow its limits.concurrency.')
134
135
  };
135
136
  /**
136
137
  * The `run` tool: crawls the recipes in `paths` or `recipes` (exactly one
@@ -179,6 +180,8 @@ async function runTool(args) {
179
180
  access: serverFile('OPENCRAW_ACCESS'),
180
181
  accessProfile: args.access
181
182
  }),
183
+ profilesDir: serverFile('OPENCRAW_PROFILES'),
184
+ parallel: args.parallel,
182
185
  resume: args.resume,
183
186
  browser: {
184
187
  headless: args.headed !== true,
@@ -14,6 +14,7 @@ export declare const runInputShape: {
14
14
  insecureTls: z.ZodOptional<z.ZodBoolean>;
15
15
  userAgent: z.ZodOptional<z.ZodString>;
16
16
  access: z.ZodOptional<z.ZodString>;
17
+ parallel: z.ZodOptional<z.ZodInt>;
17
18
  paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
18
19
  recipes: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>]>>;
19
20
  };
@@ -28,6 +29,7 @@ interface RunArgs extends RecipeSourceArgs {
28
29
  insecureTls?: boolean;
29
30
  userAgent?: string;
30
31
  access?: string;
32
+ parallel?: number;
31
33
  }
32
34
  /** What the `run` tool returns. */
33
35
  export interface RunResult {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opencraw/mcp",
3
- "version": "0.1.2",
3
+ "version": "0.1.3",
4
4
  "type": "module",
5
5
  "main": "./dist/index.esm.js",
6
6
  "module": "./dist/index.esm.js",
@@ -24,8 +24,8 @@
24
24
  "!**/*.js.map"
25
25
  ],
26
26
  "dependencies": {
27
- "@opencraw/core": "^0.1.2",
28
- "@opencraw/cli": "^0.1.2",
27
+ "@opencraw/core": "^0.1.3",
28
+ "@opencraw/cli": "^0.1.3",
29
29
  "@modelcontextprotocol/sdk": "^1.30.1",
30
30
  "playwright": "^1.63.0",
31
31
  "zod": "^4.6.5"