@vumasign/mcp 0.3.5 → 0.3.6

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/dist/meta.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /** The package's name and version, which `test/package.test.ts` holds equal to `package.json`. */
2
2
  export const PACKAGE_NAME = '@vumasign/mcp';
3
- export const VERSION = '0.3.5';
3
+ export const VERSION = '0.3.6';
4
4
  /** The command `npx` runs, from `bin` in `package.json`. */
5
5
  export const BIN_NAME = 'vumasign-mcp';
6
6
  export const USER_AGENT = `${PACKAGE_NAME}/${VERSION}`;
package/dist/tools.js CHANGED
@@ -258,8 +258,18 @@ const valuesProperty = {
258
258
  };
259
259
  const subjectsProperty = {
260
260
  type: 'object',
261
- description: 'Which of the template’s conditional subjects are on this envelope, keyed by subject key, as `POST /api/v1/envelopes` takes it.',
262
- additionalProperties: { type: 'boolean' },
261
+ description: 'Which of the template’s `conditional` subjects are on this envelope, keyed by subject key, as ' +
262
+ '`POST /api/v1/envelopes` takes it: `true` (on it), `false` (not), or `"ask"` (the signer who holds ' +
263
+ 'that person’s section is asked at the start of signing, and their answer decides). A conditional ' +
264
+ 'subject the template has now and you do not name is left out and the signer is not asked about ' +
265
+ 'them, whatever the template’s `starts_as` says. `false` and `"ask"` are refused for a `required` subject.',
266
+ // `anyOf`, not the published `oneOf`: the two cannot overlap, so it means the same, and more MCP clients accept it.
267
+ additionalProperties: {
268
+ anyOf: [
269
+ { type: 'boolean', description: '`true` if this subject is on the envelope, `false` if not.' },
270
+ { type: 'string', enum: ['ask'], description: 'Ask the signer, at the start of signing, whether this person is on the form.' },
271
+ ],
272
+ },
263
273
  };
264
274
  export const TOOLS = [
265
275
  {
@@ -295,7 +305,9 @@ export const TOOLS = [
295
305
  name: 'get_template',
296
306
  title: 'Get a template',
297
307
  description: 'Reads one template: its documents, page sizes, roles (each with its `kind`, a party or a witness, and ' +
298
- 'its `step`, when it is asked), subjects, questions, and every field with ' +
308
+ 'its `step`, when it is asked), subjects (each with its `presence`, `required` or `conditional`, and ' +
309
+ '`starts_as`, which a draft this server creates does not take for the subjects it records), questions, ' +
310
+ 'and every field with ' +
299
311
  'its data key, `rect` and `context` (the words printed around the box), plus `coverage`, ' +
300
312
  '`warnings` and the template’s `etag`. Use the fields’ data keys as the `key` of each value. A ' +
301
313
  'question has its own `data_key` and `options`, and each of its boxes an `option_value`: send the ' +
@@ -462,7 +474,7 @@ export const TOOLS = [
462
474
  name: 'get_envelope',
463
475
  title: 'Get an envelope',
464
476
  description: 'Reads one envelope by id: its status, recipients, documents and `subjects` (each with whether it is ' +
465
- '`present` on this envelope). Use it to confirm what ' +
477
+ '`present` on this envelope, and `awaiting_signer` while the signer is still to be asked). Use it to confirm what ' +
466
478
  '`create_envelope_draft` made.',
467
479
  inputSchema: {
468
480
  type: 'object',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vumasign/mcp",
3
- "version": "0.3.5",
3
+ "version": "0.3.6",
4
4
  "description": "MCP server for a Vumasign account: read templates and their pages, check values, and create draft envelopes that a person sends. It never sends and never mints a signing URL.",
5
5
  "keywords": [
6
6
  "mcp",