web-task-api 0.2.2 → 0.2.4
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 +22 -0
- package/README.md +36 -9
- package/dist/src/config.d.ts +5 -2
- package/dist/src/config.js +60 -4
- package/dist/src/config.js.map +1 -1
- package/dist/src/mcp-server.js +114 -33
- package/dist/src/mcp-server.js.map +1 -1
- package/dist/src/sessions/store.js +1 -2
- package/dist/src/sessions/store.js.map +1 -1
- package/dist/tests/config-paths.test.d.ts +1 -0
- package/dist/tests/config-paths.test.js +89 -0
- package/dist/tests/config-paths.test.js.map +1 -0
- package/dist/tests/mcp.test.js +24 -0
- package/dist/tests/mcp.test.js.map +1 -1
- package/docs/design.md +13 -2
- package/package.json +2 -2
- package/server.json +25 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.2.4] - 2026-03-29
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
|
|
7
|
+
- mutable runtime state now defaults to a platform user-data root instead of the ambient working directory, while bundled starter recipes continue to load from the installed package tree
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- launching the MCP or HTTP runtime from `~/` or another unrelated cwd no longer leaks `runs/`, `profiles/`, or `sessions/` folders into that directory
|
|
12
|
+
- when incoming temp env variables point at the operator's home or current working directory, the runtime now redirects them into an app-owned temp root before browser tooling starts creating scratch state
|
|
13
|
+
|
|
14
|
+
## [0.2.3] - 2026-03-27
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
|
|
18
|
+
- MCP-facing metadata now uses the human-facing title `Web Task` while keeping the stable package and registry identifiers `web-task-api`
|
|
19
|
+
- MCP tool definitions now publish clearer titles, routing-oriented descriptions, field descriptions, and behavior annotations so hosts can distinguish task runs from task/session inspection more reliably
|
|
20
|
+
|
|
21
|
+
### Fixed
|
|
22
|
+
|
|
23
|
+
- metadata checks now enforce the `Web Task` display title and README naming guidance so package-vs-display naming does not drift silently
|
|
24
|
+
|
|
3
25
|
## [0.2.2] - 2026-03-27
|
|
4
26
|
|
|
5
27
|
### Fixed
|
package/README.md
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
`web-task-api` is a generalized browser-task runtime for projects that want to treat websites like programmable APIs.
|
|
4
4
|
|
|
5
|
+
For MCP discovery and host UI, the human-facing title should be **Web Task**. The package and registry IDs stay `web-task-api` for compatibility because the same package ships both the HTTP API and the MCP server.[^2]
|
|
6
|
+
|
|
5
7
|
It exposes one API for:
|
|
6
8
|
|
|
7
9
|
- starting from a URL + goal
|
|
@@ -96,14 +98,16 @@ npx -y -p web-task-api web-task-api-http
|
|
|
96
98
|
|
|
97
99
|
### MCP tools
|
|
98
100
|
|
|
99
|
-
- `webtask_run`
|
|
100
|
-
- `webtask_get_task`
|
|
101
|
-
- `webtask_list_recipes`
|
|
102
|
-
- `webtask_create_session`
|
|
103
|
-
- `webtask_list_sessions`
|
|
104
|
-
- `webtask_get_session`
|
|
105
|
-
- `webtask_update_session`
|
|
106
|
-
- `webtask_health`
|
|
101
|
+
- `webtask_run` — start a new browser task from a goal and optional URL
|
|
102
|
+
- `webtask_get_task` — inspect one persisted task run
|
|
103
|
+
- `webtask_list_recipes` — list reusable starter recipes before a run
|
|
104
|
+
- `webtask_create_session` — create continuity for related tasks
|
|
105
|
+
- `webtask_list_sessions` — list saved continuity sessions
|
|
106
|
+
- `webtask_get_session` — inspect one saved session and its recent history
|
|
107
|
+
- `webtask_update_session` — update session metadata like name, notes, or defaults
|
|
108
|
+
- `webtask_health` — verify the runtime is alive
|
|
109
|
+
|
|
110
|
+
Tool-selection guidance follows MCP best practice: use human-readable titles/descriptions, make the “when should I use this tool?” boundary explicit, and publish accurate behavior hints instead of vague marketing copy.[^3]
|
|
107
111
|
|
|
108
112
|
### MCP config examples
|
|
109
113
|
|
|
@@ -203,7 +207,7 @@ To create a reusable login profile:
|
|
|
203
207
|
npm run profile:login -- --id my-profile --url https://example.com/login
|
|
204
208
|
```
|
|
205
209
|
|
|
206
|
-
This opens a real persistent browser profile. Log in manually or solve bot challenges, then press Enter in the terminal. The runtime saves a reusable Chromium user-data directory at
|
|
210
|
+
This opens a real persistent browser profile. Log in manually or solve bot challenges, then press Enter in the terminal. The runtime saves a reusable Chromium user-data directory at `<data-root>/profiles/<id>/user-data-dir` and later tasks can use `"profile": "my-profile"`.
|
|
207
211
|
|
|
208
212
|
This matters for sites like Dexscreener or GMGN that may block fresh headless sessions behind Cloudflare or similar anti-bot checks.
|
|
209
213
|
|
|
@@ -213,6 +217,28 @@ If you want the runtime to behave as closely as possible to your normal local Ch
|
|
|
213
217
|
|
|
214
218
|
That is the closest match to “it works in my Chrome already”.
|
|
215
219
|
|
|
220
|
+
## Runtime storage roots
|
|
221
|
+
|
|
222
|
+
By default the runtime keeps mutable data out of the ambient working directory:
|
|
223
|
+
|
|
224
|
+
- Linux: `~/.local/share/web-task-api`
|
|
225
|
+
- macOS: `~/Library/Application Support/web-task-api`
|
|
226
|
+
- Windows: `%LOCALAPPDATA%\web-task-api`
|
|
227
|
+
|
|
228
|
+
Under that data root the runtime writes:
|
|
229
|
+
|
|
230
|
+
- `profiles/<id>/user-data-dir`
|
|
231
|
+
- `runs/<taskId>/...`
|
|
232
|
+
- `sessions/<sessionId>.json`
|
|
233
|
+
|
|
234
|
+
Bundled starter recipes are read from the installed package's `recipes/` directory, not from the current shell cwd.
|
|
235
|
+
|
|
236
|
+
Useful overrides:
|
|
237
|
+
|
|
238
|
+
- `WEB_TASK_API_DATA_DIR` — custom mutable data root
|
|
239
|
+
- `WEB_TASK_API_RECIPES_DIR` — custom recipes directory
|
|
240
|
+
- `WEB_TASK_API_TEMP_DIR` — custom temp root used when the incoming temp env points at your home/cwd
|
|
241
|
+
|
|
216
242
|
## Planner backends
|
|
217
243
|
|
|
218
244
|
### Recommended: CLIProxyAPI
|
|
@@ -282,3 +308,4 @@ Then use:
|
|
|
282
308
|
|
|
283
309
|
[^1]: `docs/design.md` for the detailed system design, tradeoffs, and roadmap.
|
|
284
310
|
[^2]: `server.json` is the MCP registry metadata source of truth; `package.json` carries the npm package and executable metadata.
|
|
311
|
+
[^3]: Model Context Protocol, "Tools" specification and tool-annotation guidance — titles, descriptions, JSON Schema field descriptions, and accurate hints improve host UX and tool selection.
|
package/dist/src/config.d.ts
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
export declare const
|
|
1
|
+
export declare const PACKAGE_ROOT: string;
|
|
2
|
+
export declare const DATA_ROOT: string;
|
|
3
|
+
export declare const RECIPES_DIR: string;
|
|
4
|
+
export declare const TMP_ROOT: string;
|
|
2
5
|
export declare const RUNS_DIR: string;
|
|
3
6
|
export declare const PROFILES_DIR: string;
|
|
4
|
-
export declare const
|
|
7
|
+
export declare const SESSIONS_DIR: string;
|
|
5
8
|
export declare const DEFAULT_PORT: number;
|
|
6
9
|
export declare const DEFAULT_HOST: string;
|
|
7
10
|
export declare const DEFAULT_MAX_STEPS = 12;
|
package/dist/src/config.js
CHANGED
|
@@ -1,8 +1,64 @@
|
|
|
1
|
+
import { existsSync, mkdirSync } from "node:fs";
|
|
2
|
+
import os from "node:os";
|
|
1
3
|
import path from "node:path";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
import { fileURLToPath } from "node:url";
|
|
5
|
+
function clean(value) {
|
|
6
|
+
const next = value?.trim();
|
|
7
|
+
return next ? next : undefined;
|
|
8
|
+
}
|
|
9
|
+
function findPackageRoot(startDir) {
|
|
10
|
+
let current = startDir;
|
|
11
|
+
for (;;) {
|
|
12
|
+
if (existsSync(path.join(current, "package.json")))
|
|
13
|
+
return current;
|
|
14
|
+
const parent = path.dirname(current);
|
|
15
|
+
if (parent === current)
|
|
16
|
+
return startDir;
|
|
17
|
+
current = parent;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
function defaultDataHome() {
|
|
21
|
+
if (process.platform === "win32") {
|
|
22
|
+
const localAppData = clean(process.env.LOCALAPPDATA);
|
|
23
|
+
if (localAppData)
|
|
24
|
+
return localAppData;
|
|
25
|
+
}
|
|
26
|
+
const home = clean(process.env.HOME) || os.homedir();
|
|
27
|
+
if (process.platform === "darwin")
|
|
28
|
+
return path.join(home, "Library", "Application Support");
|
|
29
|
+
return clean(process.env.XDG_DATA_HOME) || path.join(home, ".local", "share");
|
|
30
|
+
}
|
|
31
|
+
function resolveDataRoot() {
|
|
32
|
+
return clean(process.env.WEB_TASK_API_DATA_DIR) || path.join(defaultDataHome(), "web-task-api");
|
|
33
|
+
}
|
|
34
|
+
function resolveRecipesRoot(packageRoot) {
|
|
35
|
+
return clean(process.env.WEB_TASK_API_RECIPES_DIR) || path.join(packageRoot, "recipes");
|
|
36
|
+
}
|
|
37
|
+
function resolveTempRoot(dataRoot) {
|
|
38
|
+
return clean(process.env.WEB_TASK_API_TEMP_DIR) || path.join(dataRoot, "tmp");
|
|
39
|
+
}
|
|
40
|
+
function sanitizeTempEnv(tempRoot, cwd = process.cwd()) {
|
|
41
|
+
const home = clean(process.env.HOME) || os.homedir();
|
|
42
|
+
const normalizedHome = path.resolve(home);
|
|
43
|
+
const normalizedCwd = path.resolve(cwd);
|
|
44
|
+
mkdirSync(tempRoot, { recursive: true });
|
|
45
|
+
for (const name of ["TMPDIR", "TMP", "TEMP", "BUN_TMPDIR"]) {
|
|
46
|
+
const current = clean(process.env[name]);
|
|
47
|
+
if (!current)
|
|
48
|
+
continue;
|
|
49
|
+
const normalizedCurrent = path.resolve(cwd, current);
|
|
50
|
+
if (normalizedCurrent === normalizedHome || normalizedCurrent === normalizedCwd)
|
|
51
|
+
process.env[name] = tempRoot;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
export const PACKAGE_ROOT = findPackageRoot(path.dirname(fileURLToPath(import.meta.url)));
|
|
55
|
+
export const DATA_ROOT = resolveDataRoot();
|
|
56
|
+
export const RECIPES_DIR = resolveRecipesRoot(PACKAGE_ROOT);
|
|
57
|
+
export const TMP_ROOT = resolveTempRoot(DATA_ROOT);
|
|
58
|
+
sanitizeTempEnv(TMP_ROOT);
|
|
59
|
+
export const RUNS_DIR = path.join(DATA_ROOT, "runs");
|
|
60
|
+
export const PROFILES_DIR = path.join(DATA_ROOT, "profiles");
|
|
61
|
+
export const SESSIONS_DIR = path.join(DATA_ROOT, "sessions");
|
|
6
62
|
export const DEFAULT_PORT = Number.parseInt(process.env.PORT ?? "4317", 10);
|
|
7
63
|
export const DEFAULT_HOST = process.env.HOST ?? "127.0.0.1";
|
|
8
64
|
export const DEFAULT_MAX_STEPS = 12;
|
package/dist/src/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/src/mcp-server.js
CHANGED
|
@@ -61,22 +61,23 @@ function renderSessions(sessions) {
|
|
|
61
61
|
export function createMcpServer(taskRunner = new TaskRunner()) {
|
|
62
62
|
const server = new McpServer({
|
|
63
63
|
name: "web-task-api",
|
|
64
|
+
title: "Web Task",
|
|
64
65
|
version: packageVersion,
|
|
65
66
|
});
|
|
66
|
-
server.tool("webtask_run", "
|
|
67
|
-
goal: z.string().min(1).describe("
|
|
68
|
-
start_url: z.string().url().optional().describe("Optional starting URL"),
|
|
69
|
-
mode: z.enum(["read", "act"]).optional().describe("Task mode"),
|
|
70
|
-
profile: z.string().min(1).optional().describe("Optional named browser profile"),
|
|
71
|
-
session_id: z.string().uuid().optional().describe("Optional session to reuse"),
|
|
72
|
-
input: JsonRecordSchema.optional().describe("
|
|
73
|
-
output_schema: JsonRecordSchema.optional().describe("Optional JSON Schema-like object
|
|
74
|
-
recipe_id: z.string().min(1).optional().describe("Optional recipe id
|
|
75
|
-
agent_kind: AgentKindSchema.optional().describe("Planner backend"),
|
|
76
|
-
agent_model: z.string().optional().describe("Optional planner model override"),
|
|
77
|
-
max_steps: z.number().int().min(1).max(50).optional().describe("Maximum browser steps"),
|
|
78
|
-
timeout_ms: z.number().int().min(1000).max(600000).optional().describe("
|
|
79
|
-
headless: z.boolean().optional().describe("Whether to prefer headless browser mode"),
|
|
67
|
+
const runTool = server.tool("webtask_run", "Start a new browser task from a goal and optional URL. Use this when you want the runtime to visit, read, or act on a site now; use session tools for continuity and get_task to inspect a saved run.", {
|
|
68
|
+
goal: z.string().min(1).describe("What the browser task should accomplish right now."),
|
|
69
|
+
start_url: z.string().url().optional().describe("Optional starting URL when you already know where the task should begin."),
|
|
70
|
+
mode: z.enum(["read", "act"]).optional().describe("Task mode: read for extraction or research, act for interactive changes."),
|
|
71
|
+
profile: z.string().min(1).optional().describe("Optional named browser profile for authenticated or warmed browser state."),
|
|
72
|
+
session_id: z.string().uuid().optional().describe("Optional saved session to reuse when this task should continue earlier browser state or context."),
|
|
73
|
+
input: JsonRecordSchema.optional().describe("Structured task inputs that the recipe or planner can reference."),
|
|
74
|
+
output_schema: JsonRecordSchema.optional().describe("Optional JSON Schema-like object used to validate the final structured result."),
|
|
75
|
+
recipe_id: z.string().min(1).optional().describe("Optional starter recipe id when you want a known flow instead of a purely freeform run."),
|
|
76
|
+
agent_kind: AgentKindSchema.optional().describe("Planner backend to use for this run."),
|
|
77
|
+
agent_model: z.string().optional().describe("Optional planner model override for this run."),
|
|
78
|
+
max_steps: z.number().int().min(1).max(50).optional().describe("Maximum browser steps before the run stops."),
|
|
79
|
+
timeout_ms: z.number().int().min(1000).max(600000).optional().describe("Overall run timeout in milliseconds."),
|
|
80
|
+
headless: z.boolean().optional().describe("Whether to prefer headless browser mode for this run."),
|
|
80
81
|
}, async ({ goal, start_url, mode, profile, session_id, input, output_schema, recipe_id, agent_kind, agent_model, max_steps, timeout_ms, headless }) => {
|
|
81
82
|
const request = TaskRequestSchema.parse({
|
|
82
83
|
goal,
|
|
@@ -103,7 +104,17 @@ export function createMcpServer(taskRunner = new TaskRunner()) {
|
|
|
103
104
|
content: [{ type: "text", text: renderTask(result) }],
|
|
104
105
|
};
|
|
105
106
|
});
|
|
106
|
-
|
|
107
|
+
runTool.update({
|
|
108
|
+
title: "Run Web Task",
|
|
109
|
+
annotations: {
|
|
110
|
+
title: "Run Web Task",
|
|
111
|
+
readOnlyHint: false,
|
|
112
|
+
destructiveHint: false,
|
|
113
|
+
idempotentHint: false,
|
|
114
|
+
openWorldHint: true,
|
|
115
|
+
},
|
|
116
|
+
});
|
|
117
|
+
const getTaskTool = server.tool("webtask_get_task", "Fetch one persisted task run with step history and artifact paths. Use this to inspect an earlier run instead of starting a new task.", { task_id: z.string().min(1).describe("Task id to fetch.") }, async ({ task_id }) => {
|
|
107
118
|
const result = await taskRunner.get(task_id);
|
|
108
119
|
if (!result) {
|
|
109
120
|
throw new Error(`Task not found: ${task_id}`);
|
|
@@ -113,21 +124,41 @@ export function createMcpServer(taskRunner = new TaskRunner()) {
|
|
|
113
124
|
content: [{ type: "text", text: renderTask(result) }],
|
|
114
125
|
};
|
|
115
126
|
});
|
|
116
|
-
|
|
127
|
+
getTaskTool.update({
|
|
128
|
+
title: "Get Web Task",
|
|
129
|
+
annotations: {
|
|
130
|
+
title: "Get Web Task",
|
|
131
|
+
readOnlyHint: true,
|
|
132
|
+
destructiveHint: false,
|
|
133
|
+
idempotentHint: true,
|
|
134
|
+
openWorldHint: false,
|
|
135
|
+
},
|
|
136
|
+
});
|
|
137
|
+
const listRecipesTool = server.tool("webtask_list_recipes", "List promoted starter recipes for common browser-task flows. Use this before a run when you want to see reusable guided paths.", {}, async () => {
|
|
117
138
|
const recipes = await taskRunner.listRecipes();
|
|
118
139
|
return {
|
|
119
140
|
structuredContent: { recipes },
|
|
120
141
|
content: [{ type: "text", text: renderRecipes(recipes) }],
|
|
121
142
|
};
|
|
122
143
|
});
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
144
|
+
listRecipesTool.update({
|
|
145
|
+
title: "List Web Recipes",
|
|
146
|
+
annotations: {
|
|
147
|
+
title: "List Web Recipes",
|
|
148
|
+
readOnlyHint: true,
|
|
149
|
+
destructiveHint: false,
|
|
150
|
+
idempotentHint: true,
|
|
151
|
+
openWorldHint: false,
|
|
152
|
+
},
|
|
153
|
+
});
|
|
154
|
+
const createSessionTool = server.tool("webtask_create_session", "Create a reusable session for browser-state continuity across related tasks. Use this before multiple runs that should share login state, defaults, or recent context.", {
|
|
155
|
+
name: z.string().min(1).describe("Session name."),
|
|
156
|
+
mode: z.enum(["guest", "profile"]).optional().describe("Session mode: guest for reusable browser state, profile for a named bound profile."),
|
|
157
|
+
profile: z.string().min(1).optional().describe("Optional bound browser profile for profile-mode sessions."),
|
|
158
|
+
start_url: z.string().url().optional().describe("Optional default start URL for later tasks in this session."),
|
|
159
|
+
agent_kind: AgentKindSchema.optional().describe("Optional default planner backend for the session."),
|
|
160
|
+
agent_model: z.string().optional().describe("Optional default planner model for the session."),
|
|
161
|
+
notes: z.string().optional().describe("Optional operator notes for the session."),
|
|
131
162
|
}, async ({ name, mode, profile, start_url, agent_kind, agent_model, notes }) => {
|
|
132
163
|
const session = await taskRunner.createSession(SessionCreateSchema.parse({
|
|
133
164
|
name,
|
|
@@ -144,14 +175,34 @@ export function createMcpServer(taskRunner = new TaskRunner()) {
|
|
|
144
175
|
content: [{ type: "text", text: renderSession(session) }],
|
|
145
176
|
};
|
|
146
177
|
});
|
|
147
|
-
|
|
178
|
+
createSessionTool.update({
|
|
179
|
+
title: "Create Web Session",
|
|
180
|
+
annotations: {
|
|
181
|
+
title: "Create Web Session",
|
|
182
|
+
readOnlyHint: false,
|
|
183
|
+
destructiveHint: false,
|
|
184
|
+
idempotentHint: false,
|
|
185
|
+
openWorldHint: false,
|
|
186
|
+
},
|
|
187
|
+
});
|
|
188
|
+
const listSessionsTool = server.tool("webtask_list_sessions", "List saved sessions with browser-state continuity metadata. Use this when you need to find an existing session to reuse or inspect.", {}, async () => {
|
|
148
189
|
const sessions = await taskRunner.listSessions();
|
|
149
190
|
return {
|
|
150
191
|
structuredContent: { sessions },
|
|
151
192
|
content: [{ type: "text", text: renderSessions(sessions) }],
|
|
152
193
|
};
|
|
153
194
|
});
|
|
154
|
-
|
|
195
|
+
listSessionsTool.update({
|
|
196
|
+
title: "List Web Sessions",
|
|
197
|
+
annotations: {
|
|
198
|
+
title: "List Web Sessions",
|
|
199
|
+
readOnlyHint: true,
|
|
200
|
+
destructiveHint: false,
|
|
201
|
+
idempotentHint: true,
|
|
202
|
+
openWorldHint: false,
|
|
203
|
+
},
|
|
204
|
+
});
|
|
205
|
+
const getSessionTool = server.tool("webtask_get_session", "Fetch one saved session including recent task history. Use this to inspect continuity context before reusing a session in a new run.", { session_id: z.string().uuid().describe("Session id to fetch.") }, async ({ session_id }) => {
|
|
155
206
|
const session = await taskRunner.getSession(session_id);
|
|
156
207
|
if (!session) {
|
|
157
208
|
throw new Error(`Session not found: ${session_id}`);
|
|
@@ -161,12 +212,22 @@ export function createMcpServer(taskRunner = new TaskRunner()) {
|
|
|
161
212
|
content: [{ type: "text", text: renderSession(session) }],
|
|
162
213
|
};
|
|
163
214
|
});
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
215
|
+
getSessionTool.update({
|
|
216
|
+
title: "Get Web Session",
|
|
217
|
+
annotations: {
|
|
218
|
+
title: "Get Web Session",
|
|
219
|
+
readOnlyHint: true,
|
|
220
|
+
destructiveHint: false,
|
|
221
|
+
idempotentHint: true,
|
|
222
|
+
openWorldHint: false,
|
|
223
|
+
},
|
|
224
|
+
});
|
|
225
|
+
const updateSessionTool = server.tool("webtask_update_session", "Update saved session metadata like name, profile, notes, or default start URL. Use this to adjust continuity defaults without creating a new session.", {
|
|
226
|
+
session_id: z.string().uuid().describe("Session id to update."),
|
|
227
|
+
name: z.string().min(1).optional().describe("Updated session name."),
|
|
228
|
+
profile: z.string().min(1).optional().describe("Updated bound profile."),
|
|
229
|
+
start_url: z.string().url().optional().describe("Updated default start URL."),
|
|
230
|
+
notes: z.string().optional().describe("Updated session notes."),
|
|
170
231
|
}, async ({ session_id, name, profile, start_url, notes }) => {
|
|
171
232
|
const session = await taskRunner.updateSession(session_id, SessionUpdateSchema.parse({
|
|
172
233
|
...(name === undefined ? {} : { name }),
|
|
@@ -182,10 +243,30 @@ export function createMcpServer(taskRunner = new TaskRunner()) {
|
|
|
182
243
|
content: [{ type: "text", text: renderSession(session) }],
|
|
183
244
|
};
|
|
184
245
|
});
|
|
185
|
-
|
|
246
|
+
updateSessionTool.update({
|
|
247
|
+
title: "Update Web Session",
|
|
248
|
+
annotations: {
|
|
249
|
+
title: "Update Web Session",
|
|
250
|
+
readOnlyHint: false,
|
|
251
|
+
destructiveHint: false,
|
|
252
|
+
idempotentHint: false,
|
|
253
|
+
openWorldHint: false,
|
|
254
|
+
},
|
|
255
|
+
});
|
|
256
|
+
const healthTool = server.tool("webtask_health", "Quick health check for the MCP runtime. Use this only to verify the server is alive, not to inspect tasks or sessions.", {}, async () => ({
|
|
186
257
|
structuredContent: { healthy: true },
|
|
187
258
|
content: [{ type: "text", text: "healthy: true" }],
|
|
188
259
|
}));
|
|
260
|
+
healthTool.update({
|
|
261
|
+
title: "Web Task Health",
|
|
262
|
+
annotations: {
|
|
263
|
+
title: "Web Task Health",
|
|
264
|
+
readOnlyHint: true,
|
|
265
|
+
destructiveHint: false,
|
|
266
|
+
idempotentHint: true,
|
|
267
|
+
openWorldHint: false,
|
|
268
|
+
},
|
|
269
|
+
});
|
|
189
270
|
return server;
|
|
190
271
|
}
|
|
191
272
|
//# sourceMappingURL=mcp-server.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../src/mcp-server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../src/mcp-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import crypto from "node:crypto";
|
|
2
2
|
import fs from "node:fs/promises";
|
|
3
3
|
import path from "node:path";
|
|
4
|
-
import {
|
|
5
|
-
const SESSIONS_DIR = path.join(PROJECT_ROOT, "sessions");
|
|
4
|
+
import { SESSIONS_DIR } from "../config.js";
|
|
6
5
|
export function sessionUserDataDir(sessionId) {
|
|
7
6
|
return path.join(SESSIONS_DIR, sessionId, "user-data-dir");
|
|
8
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/sessions/store.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAmC5C,MAAM,
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/sessions/store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import test from "node:test";
|
|
2
|
+
import assert from "node:assert/strict";
|
|
3
|
+
import { mkdtempSync, mkdirSync, rmSync } from "node:fs";
|
|
4
|
+
import path from "node:path";
|
|
5
|
+
import { tmpdir } from "node:os";
|
|
6
|
+
import { spawnSync } from "node:child_process";
|
|
7
|
+
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
8
|
+
const projectRoot = fileURLToPath(new URL("..", import.meta.url));
|
|
9
|
+
const configHref = pathToFileURL(path.join(projectRoot, "src", "config.ts")).href;
|
|
10
|
+
const tsxBin = path.join(projectRoot, "node_modules", ".bin", "tsx");
|
|
11
|
+
test("config defaults use package/data roots instead of ambient cwd", () => {
|
|
12
|
+
const sandbox = mkdtempSync(path.join(tmpdir(), "web-task-api-config-"));
|
|
13
|
+
const home = path.join(sandbox, "home");
|
|
14
|
+
const cwd = path.join(sandbox, "ambient-cwd");
|
|
15
|
+
const xdgDataHome = path.join(home, ".local", "share");
|
|
16
|
+
mkdirSync(home, { recursive: true });
|
|
17
|
+
mkdirSync(cwd, { recursive: true });
|
|
18
|
+
try {
|
|
19
|
+
const result = spawnSync(tsxBin, [
|
|
20
|
+
"-e",
|
|
21
|
+
`import { DATA_ROOT, RECIPES_DIR, RUNS_DIR, PROFILES_DIR, SESSIONS_DIR, TMP_ROOT } from ${JSON.stringify(configHref)}; console.log(JSON.stringify({ DATA_ROOT, RECIPES_DIR, RUNS_DIR, PROFILES_DIR, SESSIONS_DIR, TMP_ROOT, TMPDIR: process.env.TMPDIR, TMP: process.env.TMP, TEMP: process.env.TEMP, BUN_TMPDIR: process.env.BUN_TMPDIR }));`,
|
|
22
|
+
], {
|
|
23
|
+
cwd,
|
|
24
|
+
encoding: "utf8",
|
|
25
|
+
env: {
|
|
26
|
+
...process.env,
|
|
27
|
+
HOME: home,
|
|
28
|
+
XDG_DATA_HOME: xdgDataHome,
|
|
29
|
+
TMPDIR: ".",
|
|
30
|
+
TMP: `${home}${path.sep}`,
|
|
31
|
+
TEMP: "./",
|
|
32
|
+
BUN_TMPDIR: `${cwd}${path.sep}`,
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
assert.equal(result.status, 0, result.stderr);
|
|
36
|
+
const parsed = JSON.parse(result.stdout.trim());
|
|
37
|
+
const expectedDataRoot = path.join(xdgDataHome, "web-task-api");
|
|
38
|
+
const expectedTempRoot = path.join(expectedDataRoot, "tmp");
|
|
39
|
+
assert.equal(parsed.DATA_ROOT, expectedDataRoot);
|
|
40
|
+
assert.equal(parsed.RUNS_DIR, path.join(expectedDataRoot, "runs"));
|
|
41
|
+
assert.equal(parsed.PROFILES_DIR, path.join(expectedDataRoot, "profiles"));
|
|
42
|
+
assert.equal(parsed.SESSIONS_DIR, path.join(expectedDataRoot, "sessions"));
|
|
43
|
+
assert.equal(parsed.RECIPES_DIR, path.join(projectRoot, "recipes"));
|
|
44
|
+
assert.equal(parsed.TMP_ROOT, expectedTempRoot);
|
|
45
|
+
assert.equal(parsed.TMPDIR, expectedTempRoot);
|
|
46
|
+
assert.equal(parsed.TMP, expectedTempRoot);
|
|
47
|
+
assert.equal(parsed.TEMP, expectedTempRoot);
|
|
48
|
+
assert.equal(parsed.BUN_TMPDIR, expectedTempRoot);
|
|
49
|
+
}
|
|
50
|
+
finally {
|
|
51
|
+
rmSync(sandbox, { recursive: true, force: true });
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
test("config honors explicit data, recipes, and temp overrides", () => {
|
|
55
|
+
const sandbox = mkdtempSync(path.join(tmpdir(), "web-task-api-config-override-"));
|
|
56
|
+
const cwd = path.join(sandbox, "ambient-cwd");
|
|
57
|
+
const dataRoot = path.join(sandbox, "custom-data");
|
|
58
|
+
const recipesRoot = path.join(sandbox, "custom-recipes");
|
|
59
|
+
const tempRoot = path.join(sandbox, "custom-temp");
|
|
60
|
+
mkdirSync(cwd, { recursive: true });
|
|
61
|
+
mkdirSync(recipesRoot, { recursive: true });
|
|
62
|
+
try {
|
|
63
|
+
const result = spawnSync(tsxBin, [
|
|
64
|
+
"-e",
|
|
65
|
+
`import { DATA_ROOT, RECIPES_DIR, RUNS_DIR, PROFILES_DIR, SESSIONS_DIR, TMP_ROOT } from ${JSON.stringify(configHref)}; console.log(JSON.stringify({ DATA_ROOT, RECIPES_DIR, RUNS_DIR, PROFILES_DIR, SESSIONS_DIR, TMP_ROOT }));`,
|
|
66
|
+
], {
|
|
67
|
+
cwd,
|
|
68
|
+
encoding: "utf8",
|
|
69
|
+
env: {
|
|
70
|
+
...process.env,
|
|
71
|
+
WEB_TASK_API_DATA_DIR: dataRoot,
|
|
72
|
+
WEB_TASK_API_RECIPES_DIR: recipesRoot,
|
|
73
|
+
WEB_TASK_API_TEMP_DIR: tempRoot,
|
|
74
|
+
},
|
|
75
|
+
});
|
|
76
|
+
assert.equal(result.status, 0, result.stderr);
|
|
77
|
+
const parsed = JSON.parse(result.stdout.trim());
|
|
78
|
+
assert.equal(parsed.DATA_ROOT, dataRoot);
|
|
79
|
+
assert.equal(parsed.RECIPES_DIR, recipesRoot);
|
|
80
|
+
assert.equal(parsed.RUNS_DIR, path.join(dataRoot, "runs"));
|
|
81
|
+
assert.equal(parsed.PROFILES_DIR, path.join(dataRoot, "profiles"));
|
|
82
|
+
assert.equal(parsed.SESSIONS_DIR, path.join(dataRoot, "sessions"));
|
|
83
|
+
assert.equal(parsed.TMP_ROOT, tempRoot);
|
|
84
|
+
}
|
|
85
|
+
finally {
|
|
86
|
+
rmSync(sandbox, { recursive: true, force: true });
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
//# sourceMappingURL=config-paths.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-paths.test.js","sourceRoot":"","sources":["../../tests/config-paths.test.ts"],"names":[],"mappings":"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"}
|
package/dist/tests/mcp.test.js
CHANGED
|
@@ -24,7 +24,10 @@ test("MCP server exposes web-task tools", async (t) => {
|
|
|
24
24
|
await transport.close();
|
|
25
25
|
});
|
|
26
26
|
const result = await client.listTools();
|
|
27
|
+
const serverInfo = client.getServerVersion();
|
|
27
28
|
const toolNames = result.tools.map((tool) => tool.name).sort();
|
|
29
|
+
assert.equal(serverInfo?.name, "web-task-api");
|
|
30
|
+
assert.equal(serverInfo?.title, "Web Task");
|
|
28
31
|
assert.deepEqual(toolNames, [
|
|
29
32
|
"webtask_create_session",
|
|
30
33
|
"webtask_get_session",
|
|
@@ -37,10 +40,31 @@ test("MCP server exposes web-task tools", async (t) => {
|
|
|
37
40
|
]);
|
|
38
41
|
const runTool = result.tools.find((tool) => tool.name === "webtask_run");
|
|
39
42
|
assert.ok(runTool);
|
|
43
|
+
assert.equal(runTool.title, "Run Web Task");
|
|
44
|
+
assert.match(runTool.description || "", /goal and optional URL/i);
|
|
45
|
+
assert.equal(runTool.annotations?.title, "Run Web Task");
|
|
46
|
+
assert.equal(runTool.annotations?.readOnlyHint, false);
|
|
47
|
+
assert.equal(runTool.annotations?.openWorldHint, true);
|
|
40
48
|
const runProperties = runTool.inputSchema.properties || {};
|
|
41
49
|
assert.ok("session_id" in runProperties);
|
|
42
50
|
assert.ok("recipe_id" in runProperties);
|
|
43
51
|
assert.ok("output_schema" in runProperties);
|
|
52
|
+
assert.match(String(runProperties.session_id?.description || ""), /reuse|continue/i);
|
|
53
|
+
const getTaskTool = result.tools.find((tool) => tool.name === "webtask_get_task");
|
|
54
|
+
assert.ok(getTaskTool);
|
|
55
|
+
assert.equal(getTaskTool.title, "Get Web Task");
|
|
56
|
+
assert.equal(getTaskTool.annotations?.readOnlyHint, true);
|
|
57
|
+
assert.equal(getTaskTool.annotations?.openWorldHint, false);
|
|
58
|
+
const createSessionTool = result.tools.find((tool) => tool.name === "webtask_create_session");
|
|
59
|
+
assert.ok(createSessionTool);
|
|
60
|
+
assert.equal(createSessionTool.title, "Create Web Session");
|
|
61
|
+
assert.match(createSessionTool.description || "", /browser-state continuity/i);
|
|
62
|
+
assert.equal(createSessionTool.annotations?.readOnlyHint, false);
|
|
63
|
+
assert.equal(createSessionTool.annotations?.openWorldHint, false);
|
|
64
|
+
const healthTool = result.tools.find((tool) => tool.name === "webtask_health");
|
|
65
|
+
assert.ok(healthTool);
|
|
66
|
+
assert.equal(healthTool.title, "Web Task Health");
|
|
67
|
+
assert.equal(healthTool.annotations?.readOnlyHint, true);
|
|
44
68
|
assert.equal(stderrChunks.join(""), "");
|
|
45
69
|
});
|
|
46
70
|
test("MCP session tools roundtrip and run a fixture task", async (t) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.test.js","sourceRoot":"","sources":["../../tests/mcp.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAA;AACvC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAA;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAA;AAEhF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEpD,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AAE1E,SAAS,eAAe;IACtB,OAAO,IAAI,oBAAoB,CAAC;QAC9B,OAAO,EAAE,OAAO,CAAC,QAAQ;QACzB,IAAI,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC;QACvC,GAAG,EAAE,WAAW;QAChB,MAAM,EAAE,MAAM;KACf,CAAC,CAAA;AACJ,CAAC;AAED,IAAI,CAAC,mCAAmC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACpD,MAAM,SAAS,GAAG,eAAe,EAAE,CAAA;IACnC,MAAM,YAAY,GAAa,EAAE,CAAA;IACjC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACzE,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAA;IAC1E,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAC/B,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,SAAS,CAAC,KAAK,EAAE,CAAA;IACzB,CAAC,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAA;IACvC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;IAE9D,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE;QAC1B,wBAAwB;QACxB,qBAAqB;QACrB,kBAAkB;QAClB,gBAAgB;QAChB,sBAAsB;QACtB,uBAAuB;QACvB,aAAa;QACb,wBAAwB;KACzB,CAAC,CAAA;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC,CAAA;IACxE,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;IAClB,MAAM,aAAa,GAAI,OAAO,CAAC,WAAwD,CAAC,UAAU,IAAI,EAAE,CAAA;IACxG,MAAM,CAAC,EAAE,CAAC,YAAY,IAAI,aAAa,CAAC,CAAA;IACxC,MAAM,CAAC,EAAE,CAAC,WAAW,IAAI,aAAa,CAAC,CAAA;IACvC,MAAM,CAAC,EAAE,CAAC,eAAe,IAAI,aAAa,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"mcp.test.js","sourceRoot":"","sources":["../../tests/mcp.test.ts"],"names":[],"mappings":"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"}
|
package/docs/design.md
CHANGED
|
@@ -419,6 +419,8 @@ The bundled GMGN/Dexscreener recipes should therefore be treated as starter reci
|
|
|
419
419
|
|
|
420
420
|
## Planned directory structure
|
|
421
421
|
|
|
422
|
+
Package tree:
|
|
423
|
+
|
|
422
424
|
```text
|
|
423
425
|
src/
|
|
424
426
|
agents/
|
|
@@ -433,8 +435,17 @@ tests/
|
|
|
433
435
|
scripts/
|
|
434
436
|
docs/
|
|
435
437
|
examples/
|
|
436
|
-
|
|
437
|
-
|
|
438
|
+
recipes/
|
|
439
|
+
```
|
|
440
|
+
|
|
441
|
+
Default runtime data root (outside the package / ambient cwd):
|
|
442
|
+
|
|
443
|
+
```text
|
|
444
|
+
<data-root>/
|
|
445
|
+
profiles/
|
|
446
|
+
runs/
|
|
447
|
+
sessions/
|
|
448
|
+
tmp/
|
|
438
449
|
```
|
|
439
450
|
|
|
440
451
|
## Detailed implementation plan
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "web-task-api",
|
|
3
3
|
"mcpName": "io.github.rich-jojo/web-task-api",
|
|
4
|
-
"version": "0.2.
|
|
4
|
+
"version": "0.2.4",
|
|
5
5
|
"packageManager": "npm@10.8.2",
|
|
6
6
|
"type": "module",
|
|
7
|
-
"description": "
|
|
7
|
+
"description": "Browser-task runtime for MCP and HTTP automation with runs, sessions, and recipes.",
|
|
8
8
|
"homepage": "https://github.com/rich-jojo/web-task-api",
|
|
9
9
|
"bugs": {
|
|
10
10
|
"url": "https://github.com/rich-jojo/web-task-api/issues"
|
package/server.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
|
|
3
3
|
"name": "io.github.rich-jojo/web-task-api",
|
|
4
|
-
"title": "
|
|
5
|
-
"description": "Browser
|
|
6
|
-
"version": "0.2.
|
|
4
|
+
"title": "Web Task",
|
|
5
|
+
"description": "Browser tasks, sessions, and recipes for MCP and HTTP automation.",
|
|
6
|
+
"version": "0.2.4",
|
|
7
7
|
"repository": {
|
|
8
8
|
"url": "https://github.com/rich-jojo/web-task-api",
|
|
9
9
|
"source": "github"
|
|
@@ -12,11 +12,32 @@
|
|
|
12
12
|
{
|
|
13
13
|
"registryType": "npm",
|
|
14
14
|
"identifier": "web-task-api",
|
|
15
|
-
"version": "0.2.
|
|
15
|
+
"version": "0.2.4",
|
|
16
16
|
"transport": {
|
|
17
17
|
"type": "stdio"
|
|
18
18
|
},
|
|
19
19
|
"environmentVariables": [
|
|
20
|
+
{
|
|
21
|
+
"name": "WEB_TASK_API_DATA_DIR",
|
|
22
|
+
"description": "Optional mutable data root for web-task-api runs, sessions, profiles, and temp state. When omitted, the runtime uses a platform user-data directory instead of the ambient cwd.",
|
|
23
|
+
"isRequired": false,
|
|
24
|
+
"isSecret": false,
|
|
25
|
+
"format": "string"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"name": "WEB_TASK_API_RECIPES_DIR",
|
|
29
|
+
"description": "Optional recipes directory override. When omitted, web-task-api reads bundled recipes from the installed package.",
|
|
30
|
+
"isRequired": false,
|
|
31
|
+
"isSecret": false,
|
|
32
|
+
"format": "string"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"name": "WEB_TASK_API_TEMP_DIR",
|
|
36
|
+
"description": "Optional temp root override used when incoming temp env variables point at your home directory or working directory.",
|
|
37
|
+
"isRequired": false,
|
|
38
|
+
"isSecret": false,
|
|
39
|
+
"format": "string"
|
|
40
|
+
},
|
|
20
41
|
{
|
|
21
42
|
"name": "CLIPROXY_BASE_URL",
|
|
22
43
|
"description": "Optional CLIProxy base URL for the cliproxy planner backend.",
|