@runhuman/mcp-server 2.0.0 → 2.0.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
@@ -54,22 +54,36 @@ Create a new QA job with human testers.
54
54
  - `url` (string): The URL to test
55
55
  - `description` (string): Instructions for the human tester describing what to test
56
56
  - `schema` (object): Expected result schema that the tester response will be extracted into
57
+ - `targetDurationMinutes` (number, optional): Time limit for tester (default: 5, range: 1-60)
57
58
 
58
- #### `get_job_status`
59
- Get the current status of a QA job.
59
+ #### `wait_for_result`
60
+ Check status, wait, and retrieve results for a QA job in a single convenient call.
60
61
 
61
62
  **Parameters:**
62
63
  - `jobId` (string): The ID of the job to check
63
-
64
- #### `get_job_result`
65
- Get the results of a completed QA job.
66
-
67
- **Parameters:**
68
- - `jobId` (string): The ID of the completed job
64
+ - `waitSeconds` (number, optional): How long to wait before checking again (default: 30, range: 1-300)
65
+
66
+ **Behavior:**
67
+ - Checks status BEFORE waiting (returns immediately if already complete)
68
+ - Waits for the specified duration
69
+ - Checks status AFTER waiting
70
+ - Returns results if complete, otherwise suggests calling again with longer wait time
71
+
72
+ **Usage Pattern:**
73
+ ```javascript
74
+ // After creating a job, call repeatedly with increasing wait times:
75
+ let result = await wait_for_result(jobId, { waitSeconds: 30 });
76
+ if (result.status !== 'completed') {
77
+ result = await wait_for_result(jobId, { waitSeconds: 45 });
78
+ }
79
+ if (result.status !== 'completed') {
80
+ result = await wait_for_result(jobId, { waitSeconds: 60 });
81
+ }
82
+ ```
69
83
 
70
84
  **Returns:**
71
85
  - `result`: Structured test results extracted from tester's response
72
- - `status`: Job status (completed, failed, etc.)
86
+ - `status`: Job status (completed, failed, timeout, pending, claimed, in_progress)
73
87
  - `costUsd`: Exact cost in USD with full precision (e.g., 0.396)
74
88
  - `testDurationSeconds`: Time spent by tester in seconds (rounded up)
75
89
  - Additional metadata (timestamps, tester info, etc.)
@@ -145,14 +159,14 @@ npm run test:inspector --workspace=@runhuman/mcp-server
145
159
 
146
160
  The test script will:
147
161
  1. ✅ Initialize a connection to the MCP server
148
- 2. ✅ List all available tools (create_job, get_job_status, get_job_result)
162
+ 2. ✅ List all available tools (create_job, wait_for_result)
149
163
  3. ✅ Test calling the create_job tool
150
164
 
151
165
  ### Expected Test Output
152
166
 
153
167
  ```
154
168
  ✅ Server initialized successfully
155
- ✅ Tools listed: create_job, get_job_status, get_job_result
169
+ ✅ Tools listed: create_job, wait_for_result
156
170
  ✅ create_job tool called successfully
157
171
  ```
158
172
 
@@ -198,7 +212,14 @@ Status: pending
198
212
  ...
199
213
  ```
200
214
 
201
- **Agent polls get_job_status until complete, then calls get_job_result:**
215
+ **Agent calls wait_for_result repeatedly until complete:**
216
+ ```
217
+ ⏳ Job Status: in_progress
218
+ Waited 30s, job not complete yet.
219
+ 💡 Suggestion: Call wait_for_result again with waitSeconds: 45
220
+ ```
221
+
222
+ **Finally:**
202
223
  ```
203
224
  ✅ Test completed!
204
225
  Results Summary:
package/dist/index.js CHANGED
@@ -75,7 +75,7 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
75
75
  tools: [
76
76
  {
77
77
  name: 'create_job',
78
- description: `⚠️ IMPORTANT: This ONLY creates and queues a job. It does NOT perform the test or return results. You MUST follow up with get_job_status and get_job_result.
78
+ description: `⚠️ IMPORTANT: This ONLY creates and queues a job. It does NOT perform the test or return results. You MUST follow up with wait_for_result.
79
79
 
80
80
  Creates a QA job that will be performed by a REAL HUMAN tester (not AI). The human will manually test your application, describe findings in natural language, and GPT-4o will extract structured data from their response.
81
81
 
@@ -88,8 +88,8 @@ Use this when you need human verification of:
88
88
 
89
89
  ⚠️ REQUIRED WORKFLOW (do NOT skip steps):
90
90
  1. create_job → Returns jobId (job is now QUEUED, not complete!)
91
- 2. get_job_statusPoll every 30-60 seconds until status="completed" (takes 2-10 min)
92
- 3. get_job_result Retrieve the actual test results
91
+ 2. wait_for_resultChecks status, waits, and retrieves results (takes 2-10 min total)
92
+ 3. If not complete, call wait_for_result again with longer wait time
93
93
 
94
94
  DO NOT treat job creation as completion. You MUST wait for and retrieve results.`,
95
95
  inputSchema: {
@@ -116,36 +116,36 @@ DO NOT treat job creation as completion. You MUST wait for and retrieve results.
116
116
  },
117
117
  },
118
118
  {
119
- name: 'get_job_status',
120
- description: `Check the current status of a QA job. Jobs progress through states: pending → claimed → in_progress → completed (or failed/timeout).
119
+ name: 'wait_for_result',
120
+ description: `Check status, wait, and retrieve results for a QA job in a single call.
121
121
 
122
- Use this to poll for completion before fetching results. Typical job completion time is 2-10 minutes depending on test complexity.
122
+ This tool combines status checking, waiting, and result retrieval into one convenient function:
123
+ - Checks status BEFORE waiting (returns immediately if already complete)
124
+ - Waits for the specified duration (default 30s, configurable 1-300s)
125
+ - Checks status AFTER waiting
126
+ - Returns results if complete, otherwise suggests calling again with longer wait
123
127
 
124
- Returns: { status: "pending" | "claimed" | "in_progress" | "completed" | "failed" | "timeout", message: "..." }`,
125
- inputSchema: {
126
- type: 'object',
127
- properties: {
128
- jobId: {
129
- type: 'string',
130
- description: 'The job ID returned from create_job. Example: "550e8400-e29b-41d4-a716-446655440000"',
131
- },
132
- },
133
- required: ['jobId'],
134
- },
135
- },
136
- {
137
- name: 'get_job_result',
138
- description: `Get the structured results of a completed QA job. Only call this after get_job_status shows status="completed".
128
+ Jobs progress through states: pending claimed in_progress completed (or failed/timeout)
129
+ Typical completion time: 2-10 minutes total
139
130
 
140
- Returns the tester's response extracted into your specified schema, plus metadata about timing and the raw tester response.
131
+ Use this tool repeatedly with increasing wait times until you get results:
132
+ - First call: wait_for_result(jobId, { waitSeconds: 30 })
133
+ - If not complete: wait_for_result(jobId, { waitSeconds: 45 })
134
+ - If still not complete: wait_for_result(jobId, { waitSeconds: 60 })
141
135
 
142
- If the job isn't complete yet, returns an error. If extraction failed, includes the raw response so you can see what the tester said.`,
136
+ Returns immediately if job is already complete (no waiting needed).`,
143
137
  inputSchema: {
144
138
  type: 'object',
145
139
  properties: {
146
140
  jobId: {
147
141
  type: 'string',
148
- description: 'The job ID of a completed job. Example: "550e8400-e29b-41d4-a716-446655440000"',
142
+ description: 'The job ID returned from create_job. Example: "550e8400-e29b-41d4-a716-446655440000"',
143
+ },
144
+ waitSeconds: {
145
+ type: 'number',
146
+ description: 'How long to wait (in seconds) before checking status again. Default: 30. Range: 1-300. Increase this on subsequent calls (30 → 45 → 60) for better efficiency.',
147
+ minimum: 1,
148
+ maximum: 300,
149
149
  },
150
150
  },
151
151
  required: ['jobId'],
@@ -213,10 +213,11 @@ Time limit: ${duration} minutes
213
213
  The test has been queued for a HUMAN tester. It is NOT complete yet.
214
214
 
215
215
  ⚠️ REQUIRED NEXT STEPS:
216
- 1. Wait 30-60 seconds
217
- 2. Call get_job_status(jobId: "${data.jobId}") to check if complete
218
- 3. Repeat step 2 until status="completed" (typical time: 2-10 minutes)
219
- 4. Call get_job_result(jobId: "${data.jobId}") to get the actual test results
216
+ 1. Call wait_for_result(jobId: "${data.jobId}", waitSeconds: 30)
217
+ 2. If not complete, call wait_for_result again with waitSeconds: 45
218
+ 3. Continue with increasing wait times (60, 90, etc.) until complete
219
+
220
+ Typical completion time: 2-10 minutes total.
220
221
 
221
222
  DO NOT consider this task done until you have retrieved the results!`,
222
223
  },
@@ -239,163 +240,156 @@ Please check:
239
240
  isError: true
240
241
  };
241
242
  }
242
- case 'get_job_status':
243
+ case 'wait_for_result':
243
244
  try {
244
- const response = await fetch(`${API_URL}/api/job/${args.jobId}`, {
245
- headers: {
246
- 'Authorization': `Bearer ${API_KEY}`
245
+ const waitSeconds = Math.min(Math.max(args.waitSeconds || 30, 1), 300);
246
+ // Helper function to check job status
247
+ const checkJobStatus = async () => {
248
+ const response = await fetch(`${API_URL}/api/job/${args.jobId}`, {
249
+ headers: {
250
+ 'Authorization': `Bearer ${API_KEY}`
251
+ }
252
+ });
253
+ if (!response.ok) {
254
+ if (response.status === 404) {
255
+ throw new Error(`Job not found: ${args.jobId}`);
256
+ }
257
+ throw new Error(`Failed to get job status: ${response.status} ${response.statusText}`);
247
258
  }
248
- });
249
- if (!response.ok) {
250
- if (response.status === 404) {
259
+ return await response.json();
260
+ };
261
+ // Check status BEFORE waiting
262
+ console.error(`[wait_for_result] Checking initial status for job ${args.jobId}...`);
263
+ let job = await checkJobStatus();
264
+ // If already complete, return immediately
265
+ if (job.status === 'completed' || job.status === 'failed' || job.status === 'timeout') {
266
+ console.error(`[wait_for_result] Job already in terminal state: ${job.status}`);
267
+ if (job.status === 'completed') {
251
268
  return {
252
- content: [{
269
+ content: [
270
+ {
253
271
  type: 'text',
254
- text: `❌ Job not found
272
+ text: `✅ Test completed!
255
273
 
256
- Job ID: ${args.jobId}
274
+ Job ID: ${job.id}
257
275
 
258
- The job does not exist or you don't have permission to access it.`
276
+ **Test Results:**`
277
+ },
278
+ {
279
+ type: 'text',
280
+ text: JSON.stringify(job.result || {}, null, 2)
281
+ }
282
+ ]
283
+ };
284
+ }
285
+ else if (job.status === 'failed') {
286
+ return {
287
+ content: [{
288
+ type: 'text',
289
+ text: `❌ Job failed
290
+
291
+ Job ID: ${job.id}
292
+ Error: ${job.error || 'Unknown error'}`
259
293
  }],
260
294
  isError: true
261
295
  };
262
296
  }
263
- return {
264
- content: [{
265
- type: 'text',
266
- text: `❌ Failed to get job status
297
+ else { // timeout
298
+ return {
299
+ content: [{
300
+ type: 'text',
301
+ text: `⏰ Job timed out
267
302
 
268
- Status: ${response.status}
269
- Error: ${response.statusText}`
270
- }],
271
- isError: true
272
- };
303
+ Job ID: ${job.id}
304
+
305
+ The tester did not complete the test in time.`
306
+ }],
307
+ isError: true
308
+ };
309
+ }
273
310
  }
274
- const job = await response.json();
311
+ // Job not complete yet, wait and check again
312
+ console.error(`[wait_for_result] Job status: ${job.status}. Waiting ${waitSeconds} seconds...`);
275
313
  const statusEmoji = {
276
314
  pending: '⏳',
277
315
  claimed: '👤',
278
- in_progress: '🔄',
279
- completed: '✅',
280
- failed: '❌',
281
- timeout: '⏰'
316
+ in_progress: '🔄'
282
317
  };
283
318
  const emoji = statusEmoji[job.status] || '📊';
284
- let message = `${emoji} Job Status: ${job.status}
319
+ await new Promise(resolve => setTimeout(resolve, waitSeconds * 1000));
320
+ // Check status AFTER waiting
321
+ console.error(`[wait_for_result] Checking status after ${waitSeconds}s wait...`);
322
+ job = await checkJobStatus();
323
+ // Check if complete now
324
+ if (job.status === 'completed') {
325
+ return {
326
+ content: [
327
+ {
328
+ type: 'text',
329
+ text: `✅ Test completed!
285
330
 
286
- Job ID: ${job.id}`;
287
- if (job.status === 'pending') {
288
- message += '\n\nWaiting for a tester to claim this job...\nTypical completion time: 2-10 minutes';
289
- }
290
- else if (job.status === 'claimed' || job.status === 'in_progress') {
291
- message += '\n\nThe tester is working on your test...\nTypical completion time: 2-10 minutes';
292
- }
293
- else if (job.status === 'completed') {
294
- message += '\n\n✅ Job is complete! Use get_job_result to retrieve the results.';
331
+ Job ID: ${job.id}
332
+
333
+ **Test Results:**`
334
+ },
335
+ {
336
+ type: 'text',
337
+ text: JSON.stringify(job.result || {}, null, 2)
338
+ }
339
+ ]
340
+ };
295
341
  }
296
342
  else if (job.status === 'failed') {
297
- message += '\n\n❌ Job failed.' + (job.error ? ` Error: ${job.error}` : ' Check the error with get_job_result.');
298
- }
299
- else if (job.status === 'timeout') {
300
- message += '\n\n⏰ Job timed out. The tester did not complete in time.';
301
- }
302
- return {
303
- content: [{
304
- type: 'text',
305
- text: message
306
- }]
307
- };
308
- }
309
- catch (error) {
310
- return {
311
- content: [{
312
- type: 'text',
313
- text: `❌ Error checking job status
314
-
315
- ${error instanceof Error ? error.message : 'Unknown error'}`
316
- }],
317
- isError: true
318
- };
319
- }
320
- case 'get_job_result':
321
- try {
322
- const response = await fetch(`${API_URL}/api/job/${args.jobId}`, {
323
- headers: {
324
- 'Authorization': `Bearer ${API_KEY}`
325
- }
326
- });
327
- if (!response.ok) {
328
- if (response.status === 404) {
329
- return {
330
- content: [{
331
- type: 'text',
332
- text: `❌ Job not found
333
-
334
- Job ID: ${args.jobId}
335
-
336
- The job does not exist or you don't have permission to access it.`
337
- }],
338
- isError: true
339
- };
340
- }
341
343
  return {
342
344
  content: [{
343
345
  type: 'text',
344
- text: `❌ Failed to get job result
346
+ text: `❌ Job failed
345
347
 
346
- Status: ${response.status}
347
- Error: ${response.statusText}`
348
+ Job ID: ${job.id}
349
+ Error: ${job.error || 'Unknown error'}`
348
350
  }],
349
351
  isError: true
350
352
  };
351
353
  }
352
- const job = await response.json();
353
- if (job.status !== 'completed') {
354
+ else if (job.status === 'timeout') {
354
355
  return {
355
356
  content: [{
356
357
  type: 'text',
357
- text: `⏳ Job not yet completed
358
+ text: `⏰ Job timed out
358
359
 
359
360
  Job ID: ${job.id}
360
- Current status: ${job.status}
361
-
362
- ${job.status === 'pending' ? 'Waiting for a tester to claim this job...' :
363
- job.status === 'claimed' || job.status === 'in_progress' ? 'The tester is working on your test...' :
364
- job.status === 'failed' ? '❌ Job failed. Error: ' + (job.error || 'Unknown error') :
365
- job.status === 'timeout' ? '⏰ Job timed out.' :
366
- 'Use get_job_status to check current status.'}`
367
- }]
361
+
362
+ The tester did not complete the test in time.`
363
+ }],
364
+ isError: true
368
365
  };
369
366
  }
370
- // Job is completed, format results
371
- const message = `✅ Test completed!
367
+ // Still not complete, suggest calling again with longer wait
368
+ const nextWait = Math.min(waitSeconds + 15, 120);
369
+ const statusMessage = job.status === 'pending' ?
370
+ 'Waiting for a tester to claim this job...' :
371
+ 'The tester is working on your test...';
372
+ return {
373
+ content: [{
374
+ type: 'text',
375
+ text: `${emoji} Job Status: ${job.status}
372
376
 
373
377
  Job ID: ${job.id}
374
378
 
375
- **Test Results:**`;
376
- const contents = [
377
- {
378
- type: 'text',
379
- text: message
380
- },
381
- {
382
- type: 'text',
383
- text: JSON.stringify(job.result || {}, null, 2)
384
- }
385
- ];
386
- if (job.error) {
387
- contents.push({
388
- type: 'text',
389
- text: `\n⚠️ Note: ${job.error}`
390
- });
391
- }
392
- return { content: contents };
379
+ ${statusMessage}
380
+
381
+ ⏰ Waited ${waitSeconds}s, job not complete yet.
382
+
383
+ 💡 Suggestion: Call wait_for_result again with waitSeconds: ${nextWait}
384
+ Typical completion time: 2-10 minutes total.`
385
+ }]
386
+ };
393
387
  }
394
388
  catch (error) {
395
389
  return {
396
390
  content: [{
397
391
  type: 'text',
398
- text: `❌ Error getting job result
392
+ text: `❌ Error waiting for result
399
393
 
400
394
  ${error instanceof Error ? error.message : 'Unknown error'}`
401
395
  }],
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC,iEAAiE;AACjE,MAAM,CAAC,MAAM,EAAE,CAAC;AAEhB,gBAAgB;AAChB,2CAA2C;AAC3C,0EAA0E;AAC1E,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACnC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAChF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAEhF,MAAM,OAAO,GAAG,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,+BAA+B,CAAC;AAC7F,MAAM,OAAO,GAAG,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;AAE1D,IAAI,CAAC,OAAO,EAAE,CAAC;IACb,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAC9C,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;IACzD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACnC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACnC,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IACzC,OAAO,CAAC,KAAK,CAAC,yEAAyE,CAAC,CAAC;IACzF,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACvB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACrB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAC;IAC7E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,OAAO,CAAC,KAAK,CAAC,oCAAoC,OAAO,EAAE,CAAC,CAAC;AAC7D,OAAO,CAAC,KAAK,CAAC,qBAAqB,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;AAElE;;GAEG;AACH,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB;IACE,IAAI,EAAE,qBAAqB;IAC3B,OAAO,EAAE,OAAO;CACjB,EACD;IACE,YAAY,EAAE;QACZ,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,EAAE;KACZ;CACF,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,iBAAiB,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;IAC5D,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,kBAAkB;gBACxB,WAAW,EAAE,0DAA0D;aACxE;SACF;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;IAC1D,OAAO;QACL,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,YAAY;gBAClB,WAAW,EAAE;;;;;;;;;;;;;;;;iFAgB4D;gBACzE,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,GAAG,EAAE;4BACH,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,sFAAsF;yBACpG;wBACD,WAAW,EAAE;4BACX,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,6PAA6P;yBAC3Q;wBACD,MAAM,EAAE;4BACN,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,mRAAmR;yBACjS;wBACD,qBAAqB,EAAE;4BACrB,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,4GAA4G;yBAC1H;qBACF;oBACD,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC;iBAC3C;aACF;YACD;gBACE,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE;;;;gHAI2F;gBACxG,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,sFAAsF;yBACpG;qBACF;oBACD,QAAQ,EAAE,CAAC,OAAO,CAAC;iBACpB;aACF;YACD;gBACE,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE;;;;sIAIiH;gBAC9H,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,gFAAgF;yBAC9F;qBACF;oBACD,QAAQ,EAAE,CAAC,OAAO,CAAC;iBACpB;aACF;SACF;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAChE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAED,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,YAAY;YACf,IAAI,CAAC;gBACH,kCAAkC;gBAClC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,WAAW,EAAE;oBAClD,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,eAAe,EAAE,UAAU,OAAO,EAAE;wBACpC,cAAc,EAAE,kBAAkB;qBACnC;oBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,GAAG,EAAE,IAAI,CAAC,GAAG;wBACb,WAAW,EAAE,IAAI,CAAC,WAAW;wBAC7B,YAAY,EAAE,IAAI,CAAC,MAAM;wBACzB,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;qBAClD,CAAC;iBACH,CAAC,CAAC;gBAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAQ,CAAC;oBACzF,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE;;SAEX,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,IAAI,QAAQ,CAAC,UAAU;UAClD,QAAQ,CAAC,MAAM;;;;iCAIQ,OAAO;6CACK;6BAChC,CAAC;wBACF,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAuC,CAAC;gBAExE,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,IAAI,CAAC,CAAC;gBACjD,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE;;UAEV,IAAI,CAAC,KAAK;UACV,IAAI,CAAC,MAAM;OACd,IAAI,CAAC,GAAG;cACD,QAAQ;;;;;;iCAMW,IAAI,CAAC,KAAK;;iCAEV,IAAI,CAAC,KAAK;;qEAE0B;yBACxD;qBACF;iBACF,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE;;EAEhB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;;;iCAGzB,OAAO;;+BAET;yBACpB,CAAC;oBACF,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;QAEH,KAAK,gBAAgB;YACnB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,YAAY,IAAI,CAAC,KAAK,EAAE,EAAE;oBAC/D,OAAO,EAAE;wBACP,eAAe,EAAE,UAAU,OAAO,EAAE;qBACrC;iBACF,CAAC,CAAC;gBAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;wBAC5B,OAAO;4BACL,OAAO,EAAE,CAAC;oCACR,IAAI,EAAE,MAAM;oCACZ,IAAI,EAAE;;UAEZ,IAAI,CAAC,KAAK;;kEAE8C;iCACnD,CAAC;4BACF,OAAO,EAAE,IAAI;yBACd,CAAC;oBACJ,CAAC;oBAED,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE;;UAEV,QAAQ,CAAC,MAAM;SAChB,QAAQ,CAAC,UAAU,EAAE;6BACjB,CAAC;wBACF,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAK9B,CAAC;gBAEF,MAAM,WAAW,GAA2B;oBAC1C,OAAO,EAAE,GAAG;oBACZ,OAAO,EAAE,IAAI;oBACb,WAAW,EAAE,IAAI;oBACjB,SAAS,EAAE,GAAG;oBACd,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,GAAG;iBACb,CAAC;gBACF,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC;gBAE9C,IAAI,OAAO,GAAG,GAAG,KAAK,gBAAgB,GAAG,CAAC,MAAM;;UAE9C,GAAG,CAAC,EAAE,EAAE,CAAC;gBAEX,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAC7B,OAAO,IAAI,sFAAsF,CAAC;gBACpG,CAAC;qBAAM,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;oBACpE,OAAO,IAAI,kFAAkF,CAAC;gBAChG,CAAC;qBAAM,IAAI,GAAG,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;oBACtC,OAAO,IAAI,oEAAoE,CAAC;gBAClF,CAAC;qBAAM,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACnC,OAAO,IAAI,mBAAmB,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,uCAAuC,CAAC,CAAC;gBAClH,CAAC;qBAAM,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBACpC,OAAO,IAAI,2DAA2D,CAAC;gBACzE,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,OAAO;yBACd,CAAC;iBACH,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE;;EAEhB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE;yBACjD,CAAC;oBACF,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;QAEH,KAAK,gBAAgB;YACnB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,YAAY,IAAI,CAAC,KAAK,EAAE,EAAE;oBAC/D,OAAO,EAAE;wBACP,eAAe,EAAE,UAAU,OAAO,EAAE;qBACrC;iBACF,CAAC,CAAC;gBAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;wBAC5B,OAAO;4BACL,OAAO,EAAE,CAAC;oCACR,IAAI,EAAE,MAAM;oCACZ,IAAI,EAAE;;UAEZ,IAAI,CAAC,KAAK;;kEAE8C;iCACnD,CAAC;4BACF,OAAO,EAAE,IAAI;yBACd,CAAC;oBACJ,CAAC;oBAED,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE;;UAEV,QAAQ,CAAC,MAAM;SAChB,QAAQ,CAAC,UAAU,EAAE;6BACjB,CAAC;wBACF,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAK9B,CAAC;gBAEF,IAAI,GAAG,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;oBAC/B,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE;;UAEV,GAAG,CAAC,EAAE;kBACE,GAAG,CAAC,MAAM;;EAE1B,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,2CAA2C,CAAC,CAAC;oCACxE,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,uCAAuC,CAAC,CAAC;wCACpG,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,uBAAuB,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,eAAe,CAAC,CAAC,CAAC;4CACpF,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;gDAC/C,6CAA6C,EAAE;6BACpC,CAAC;qBACH,CAAC;gBACJ,CAAC;gBAED,mCAAmC;gBACnC,MAAM,OAAO,GAAG;;UAEd,GAAG,CAAC,EAAE;;kBAEE,CAAC;gBAEX,MAAM,QAAQ,GAAG;oBACf;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,OAAO;qBACd;oBACD;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBAChD;iBACF,CAAC;gBAEF,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;oBACd,QAAQ,CAAC,IAAI,CAAC;wBACZ,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,cAAc,GAAG,CAAC,KAAK,EAAE;qBAChC,CAAC,CAAC;gBACL,CAAC;gBAED,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;YAC/B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE;;EAEhB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE;yBACjD,CAAC;oBACF,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;QAEH;YACE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;AACxD,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@runhuman/mcp-server",
3
- "version": "2.0.0",
3
+ "version": "2.0.1",
4
4
  "description": "Model Context Protocol (MCP) server for RunHuman - Human-powered QA testing for AI agents",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",