conductor-node-mcp 12.13.0 → 12.14.0
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 +8 -0
- package/package.json +2 -2
- package/server.js +1 -1
- package/server.mjs +1 -1
- package/src/server.ts +1 -1
- package/src/tools/index.ts +10 -0
- package/src/tools/qbd/build-assemblies/create-qbd-build-assemblies.ts +97 -0
- package/src/tools/qbd/build-assemblies/delete-qbd-build-assemblies.ts +42 -0
- package/src/tools/qbd/build-assemblies/list-qbd-build-assemblies.ts +127 -0
- package/src/tools/qbd/build-assemblies/retrieve-qbd-build-assemblies.ts +41 -0
- package/src/tools/qbd/build-assemblies/update-qbd-build-assemblies.ts +101 -0
- package/src/tools/qbd/inventory-adjustments/create-qbd-inventory-adjustments.ts +5 -5
- package/src/tools/qbd/price-levels/create-qbd-price-levels.ts +6 -6
- package/src/tools/qbd/price-levels/update-qbd-price-levels.ts +6 -6
- package/tools/index.d.mts.map +1 -1
- package/tools/index.d.ts.map +1 -1
- package/tools/index.js +10 -0
- package/tools/index.js.map +1 -1
- package/tools/index.mjs +10 -0
- package/tools/index.mjs.map +1 -1
- package/tools/qbd/build-assemblies/create-qbd-build-assemblies.d.mts +45 -0
- package/tools/qbd/build-assemblies/create-qbd-build-assemblies.d.mts.map +1 -0
- package/tools/qbd/build-assemblies/create-qbd-build-assemblies.d.ts +45 -0
- package/tools/qbd/build-assemblies/create-qbd-build-assemblies.d.ts.map +1 -0
- package/tools/qbd/build-assemblies/create-qbd-build-assemblies.js +82 -0
- package/tools/qbd/build-assemblies/create-qbd-build-assemblies.js.map +1 -0
- package/tools/qbd/build-assemblies/create-qbd-build-assemblies.mjs +78 -0
- package/tools/qbd/build-assemblies/create-qbd-build-assemblies.mjs.map +1 -0
- package/tools/qbd/build-assemblies/delete-qbd-build-assemblies.d.mts +45 -0
- package/tools/qbd/build-assemblies/delete-qbd-build-assemblies.d.mts.map +1 -0
- package/tools/qbd/build-assemblies/delete-qbd-build-assemblies.d.ts +45 -0
- package/tools/qbd/build-assemblies/delete-qbd-build-assemblies.d.ts.map +1 -0
- package/tools/qbd/build-assemblies/delete-qbd-build-assemblies.js +36 -0
- package/tools/qbd/build-assemblies/delete-qbd-build-assemblies.js.map +1 -0
- package/tools/qbd/build-assemblies/delete-qbd-build-assemblies.mjs +32 -0
- package/tools/qbd/build-assemblies/delete-qbd-build-assemblies.mjs.map +1 -0
- package/tools/qbd/build-assemblies/list-qbd-build-assemblies.d.mts +45 -0
- package/tools/qbd/build-assemblies/list-qbd-build-assemblies.d.mts.map +1 -0
- package/tools/qbd/build-assemblies/list-qbd-build-assemblies.d.ts +45 -0
- package/tools/qbd/build-assemblies/list-qbd-build-assemblies.d.ts.map +1 -0
- package/tools/qbd/build-assemblies/list-qbd-build-assemblies.js +108 -0
- package/tools/qbd/build-assemblies/list-qbd-build-assemblies.js.map +1 -0
- package/tools/qbd/build-assemblies/list-qbd-build-assemblies.mjs +104 -0
- package/tools/qbd/build-assemblies/list-qbd-build-assemblies.mjs.map +1 -0
- package/tools/qbd/build-assemblies/retrieve-qbd-build-assemblies.d.mts +45 -0
- package/tools/qbd/build-assemblies/retrieve-qbd-build-assemblies.d.mts.map +1 -0
- package/tools/qbd/build-assemblies/retrieve-qbd-build-assemblies.d.ts +45 -0
- package/tools/qbd/build-assemblies/retrieve-qbd-build-assemblies.d.ts.map +1 -0
- package/tools/qbd/build-assemblies/retrieve-qbd-build-assemblies.js +36 -0
- package/tools/qbd/build-assemblies/retrieve-qbd-build-assemblies.js.map +1 -0
- package/tools/qbd/build-assemblies/retrieve-qbd-build-assemblies.mjs +32 -0
- package/tools/qbd/build-assemblies/retrieve-qbd-build-assemblies.mjs.map +1 -0
- package/tools/qbd/build-assemblies/update-qbd-build-assemblies.d.mts +45 -0
- package/tools/qbd/build-assemblies/update-qbd-build-assemblies.d.mts.map +1 -0
- package/tools/qbd/build-assemblies/update-qbd-build-assemblies.d.ts +45 -0
- package/tools/qbd/build-assemblies/update-qbd-build-assemblies.d.ts.map +1 -0
- package/tools/qbd/build-assemblies/update-qbd-build-assemblies.js +86 -0
- package/tools/qbd/build-assemblies/update-qbd-build-assemblies.js.map +1 -0
- package/tools/qbd/build-assemblies/update-qbd-build-assemblies.mjs +82 -0
- package/tools/qbd/build-assemblies/update-qbd-build-assemblies.mjs.map +1 -0
- package/tools/qbd/inventory-adjustments/create-qbd-inventory-adjustments.js +5 -5
- package/tools/qbd/inventory-adjustments/create-qbd-inventory-adjustments.js.map +1 -1
- package/tools/qbd/inventory-adjustments/create-qbd-inventory-adjustments.mjs +5 -5
- package/tools/qbd/inventory-adjustments/create-qbd-inventory-adjustments.mjs.map +1 -1
- package/tools/qbd/price-levels/create-qbd-price-levels.js +5 -5
- package/tools/qbd/price-levels/create-qbd-price-levels.js.map +1 -1
- package/tools/qbd/price-levels/create-qbd-price-levels.mjs +5 -5
- package/tools/qbd/price-levels/create-qbd-price-levels.mjs.map +1 -1
- package/tools/qbd/price-levels/update-qbd-price-levels.js +5 -5
- package/tools/qbd/price-levels/update-qbd-price-levels.js.map +1 -1
- package/tools/qbd/price-levels/update-qbd-price-levels.mjs +5 -5
- package/tools/qbd/price-levels/update-qbd-price-levels.mjs.map +1 -1
package/README.md
CHANGED
|
@@ -213,6 +213,14 @@ The following tools are available in this MCP server.
|
|
|
213
213
|
- `list_qbd_bills` (`read`): Returns a list of bills. Use the `cursor` parameter to paginate through the results.
|
|
214
214
|
- `delete_qbd_bills` (`write`): Permanently deletes a a bill. The deletion will fail if the bill is currently in use or has any linked transactions that are in use.
|
|
215
215
|
|
|
216
|
+
### Resource `qbd.build_assemblies`:
|
|
217
|
+
|
|
218
|
+
- `create_qbd_build_assemblies` (`write`): Creates a new build assembly.
|
|
219
|
+
- `retrieve_qbd_build_assemblies` (`read`): Retrieves a build assembly by ID.
|
|
220
|
+
- `update_qbd_build_assemblies` (`write`): Updates an existing build assembly.
|
|
221
|
+
- `list_qbd_build_assemblies` (`read`): Returns a list of build assemblies. Use the `cursor` parameter to paginate through the results.
|
|
222
|
+
- `delete_qbd_build_assemblies` (`write`): Permanently deletes a a build assembly. The deletion will fail if the build assembly is currently in use or has any linked transactions that are in use.
|
|
223
|
+
|
|
216
224
|
### Resource `qbd.checks`:
|
|
217
225
|
|
|
218
226
|
- `create_qbd_checks` (`write`): Creates a new check.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "conductor-node-mcp",
|
|
3
|
-
"version": "12.
|
|
3
|
+
"version": "12.14.0",
|
|
4
4
|
"description": "The official MCP Server for the Conductor API",
|
|
5
5
|
"author": "Conductor <support@conductor.is>",
|
|
6
6
|
"types": "./index.d.ts",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"fix": "eslint --fix --ext ts,js ."
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"conductor-node": "^12.
|
|
27
|
+
"conductor-node": "^12.14.0",
|
|
28
28
|
"@modelcontextprotocol/sdk": "^1.11.5",
|
|
29
29
|
"yargs": "^17.7.2",
|
|
30
30
|
"@cloudflare/cabidela": "^0.2.4",
|
package/server.js
CHANGED
|
@@ -20,7 +20,7 @@ Object.defineProperty(exports, "endpoints", { enumerable: true, get: function ()
|
|
|
20
20
|
// Create server instance
|
|
21
21
|
exports.server = new mcp_js_1.McpServer({
|
|
22
22
|
name: 'conductor_node_api',
|
|
23
|
-
version: '12.
|
|
23
|
+
version: '12.14.0',
|
|
24
24
|
}, {
|
|
25
25
|
capabilities: {
|
|
26
26
|
tools: {},
|
package/server.mjs
CHANGED
package/src/server.ts
CHANGED
package/src/tools/index.ts
CHANGED
|
@@ -30,6 +30,11 @@ import retrieve_qbd_bills from './qbd/bills/retrieve-qbd-bills';
|
|
|
30
30
|
import update_qbd_bills from './qbd/bills/update-qbd-bills';
|
|
31
31
|
import list_qbd_bills from './qbd/bills/list-qbd-bills';
|
|
32
32
|
import delete_qbd_bills from './qbd/bills/delete-qbd-bills';
|
|
33
|
+
import create_qbd_build_assemblies from './qbd/build-assemblies/create-qbd-build-assemblies';
|
|
34
|
+
import retrieve_qbd_build_assemblies from './qbd/build-assemblies/retrieve-qbd-build-assemblies';
|
|
35
|
+
import update_qbd_build_assemblies from './qbd/build-assemblies/update-qbd-build-assemblies';
|
|
36
|
+
import list_qbd_build_assemblies from './qbd/build-assemblies/list-qbd-build-assemblies';
|
|
37
|
+
import delete_qbd_build_assemblies from './qbd/build-assemblies/delete-qbd-build-assemblies';
|
|
33
38
|
import create_qbd_checks from './qbd/checks/create-qbd-checks';
|
|
34
39
|
import retrieve_qbd_checks from './qbd/checks/retrieve-qbd-checks';
|
|
35
40
|
import update_qbd_checks from './qbd/checks/update-qbd-checks';
|
|
@@ -228,6 +233,11 @@ addEndpoint(retrieve_qbd_bills);
|
|
|
228
233
|
addEndpoint(update_qbd_bills);
|
|
229
234
|
addEndpoint(list_qbd_bills);
|
|
230
235
|
addEndpoint(delete_qbd_bills);
|
|
236
|
+
addEndpoint(create_qbd_build_assemblies);
|
|
237
|
+
addEndpoint(retrieve_qbd_build_assemblies);
|
|
238
|
+
addEndpoint(update_qbd_build_assemblies);
|
|
239
|
+
addEndpoint(list_qbd_build_assemblies);
|
|
240
|
+
addEndpoint(delete_qbd_build_assemblies);
|
|
231
241
|
addEndpoint(create_qbd_checks);
|
|
232
242
|
addEndpoint(retrieve_qbd_checks);
|
|
233
243
|
addEndpoint(update_qbd_checks);
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
import { asTextContentResult } from 'conductor-node-mcp/tools/types';
|
|
4
|
+
|
|
5
|
+
import { Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
6
|
+
import type { Metadata } from '../../';
|
|
7
|
+
import Conductor from 'conductor-node';
|
|
8
|
+
|
|
9
|
+
export const metadata: Metadata = {
|
|
10
|
+
resource: 'qbd.build_assemblies',
|
|
11
|
+
operation: 'write',
|
|
12
|
+
tags: [],
|
|
13
|
+
httpMethod: 'post',
|
|
14
|
+
httpPath: '/quickbooks-desktop/build-assemblies',
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export const tool: Tool = {
|
|
18
|
+
name: 'create_qbd_build_assemblies',
|
|
19
|
+
description: 'Creates a new build assembly.',
|
|
20
|
+
inputSchema: {
|
|
21
|
+
type: 'object',
|
|
22
|
+
properties: {
|
|
23
|
+
inventoryAssemblyItemId: {
|
|
24
|
+
type: 'string',
|
|
25
|
+
description:
|
|
26
|
+
'The inventory assembly item associated with this build assembly. An inventory assembly item is assembled or manufactured from other inventory items, and the items and/or assemblies that make up the assembly are called components.',
|
|
27
|
+
},
|
|
28
|
+
quantityToBuild: {
|
|
29
|
+
type: 'number',
|
|
30
|
+
description:
|
|
31
|
+
'The number of build assembly to be built. The transaction will fail if the number specified here exceeds the number of on-hand components.',
|
|
32
|
+
},
|
|
33
|
+
transactionDate: {
|
|
34
|
+
type: 'string',
|
|
35
|
+
description: 'The date of this build assembly, in ISO 8601 format (YYYY-MM-DD).',
|
|
36
|
+
format: 'date',
|
|
37
|
+
},
|
|
38
|
+
'Conductor-End-User-Id': {
|
|
39
|
+
type: 'string',
|
|
40
|
+
description:
|
|
41
|
+
'The ID of the EndUser to receive this request (e.g., `"Conductor-End-User-Id: {{END_USER_ID}}"`).',
|
|
42
|
+
},
|
|
43
|
+
expirationDate: {
|
|
44
|
+
type: 'string',
|
|
45
|
+
description:
|
|
46
|
+
'The expiration date for the serial number or lot number of the item associated with this build assembly, in ISO 8601 format (YYYY-MM-DD). This is particularly relevant for perishable or time-sensitive inventory items. Note that this field is only supported on QuickBooks Desktop 2023 or later.',
|
|
47
|
+
format: 'date',
|
|
48
|
+
},
|
|
49
|
+
externalId: {
|
|
50
|
+
type: 'string',
|
|
51
|
+
description:
|
|
52
|
+
'A globally unique identifier (GUID) you, the developer, can provide for tracking this object in your external system. This field is immutable and can only be set during object creation.\n\n**IMPORTANT**: This field must be formatted as a valid GUID; otherwise, QuickBooks will return an error.',
|
|
53
|
+
},
|
|
54
|
+
inventorySiteId: {
|
|
55
|
+
type: 'string',
|
|
56
|
+
description:
|
|
57
|
+
'The site location where inventory for the item associated with this build assembly is stored.',
|
|
58
|
+
},
|
|
59
|
+
inventorySiteLocationId: {
|
|
60
|
+
type: 'string',
|
|
61
|
+
description:
|
|
62
|
+
'The specific location (e.g., bin or shelf) within the inventory site where the item associated with this build assembly is stored.',
|
|
63
|
+
},
|
|
64
|
+
lotNumber: {
|
|
65
|
+
type: 'string',
|
|
66
|
+
description:
|
|
67
|
+
'The lot number of the item associated with this build assembly. Used for tracking groups of inventory items that are purchased or manufactured together.',
|
|
68
|
+
},
|
|
69
|
+
markPendingIfRequired: {
|
|
70
|
+
type: 'boolean',
|
|
71
|
+
description:
|
|
72
|
+
'When `true`, the build assembly will be marked pending if there are insufficient quantities to complete the build assembly.',
|
|
73
|
+
},
|
|
74
|
+
memo: {
|
|
75
|
+
type: 'string',
|
|
76
|
+
description: 'A memo or note for this build assembly.',
|
|
77
|
+
},
|
|
78
|
+
refNumber: {
|
|
79
|
+
type: 'string',
|
|
80
|
+
description:
|
|
81
|
+
'The case-sensitive user-defined reference number for this build assembly, which can be used to identify the transaction in QuickBooks. This value is not required to be unique and can be arbitrarily changed by the QuickBooks user. When left blank in this create request, this field will be left blank in QuickBooks (i.e., it does *not* auto-increment).',
|
|
82
|
+
},
|
|
83
|
+
serialNumber: {
|
|
84
|
+
type: 'string',
|
|
85
|
+
description:
|
|
86
|
+
'The serial number of the item associated with this build assembly. This is used for tracking individual units of serialized inventory items.',
|
|
87
|
+
},
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
export const handler = async (conductor: Conductor, args: Record<string, unknown> | undefined) => {
|
|
93
|
+
const body = args as any;
|
|
94
|
+
return asTextContentResult(await conductor.qbd.buildAssemblies.create(body));
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
export default { metadata, tool, handler };
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
import { asTextContentResult } from 'conductor-node-mcp/tools/types';
|
|
4
|
+
|
|
5
|
+
import { Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
6
|
+
import type { Metadata } from '../../';
|
|
7
|
+
import Conductor from 'conductor-node';
|
|
8
|
+
|
|
9
|
+
export const metadata: Metadata = {
|
|
10
|
+
resource: 'qbd.build_assemblies',
|
|
11
|
+
operation: 'write',
|
|
12
|
+
tags: [],
|
|
13
|
+
httpMethod: 'delete',
|
|
14
|
+
httpPath: '/quickbooks-desktop/build-assemblies/{id}',
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export const tool: Tool = {
|
|
18
|
+
name: 'delete_qbd_build_assemblies',
|
|
19
|
+
description:
|
|
20
|
+
'Permanently deletes a a build assembly. The deletion will fail if the build assembly is currently in use or has any linked transactions that are in use.',
|
|
21
|
+
inputSchema: {
|
|
22
|
+
type: 'object',
|
|
23
|
+
properties: {
|
|
24
|
+
id: {
|
|
25
|
+
type: 'string',
|
|
26
|
+
description: 'The QuickBooks-assigned unique identifier of the build assembly to delete.',
|
|
27
|
+
},
|
|
28
|
+
'Conductor-End-User-Id': {
|
|
29
|
+
type: 'string',
|
|
30
|
+
description:
|
|
31
|
+
'The ID of the EndUser to receive this request (e.g., `"Conductor-End-User-Id: {{END_USER_ID}}"`).',
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export const handler = async (conductor: Conductor, args: Record<string, unknown> | undefined) => {
|
|
38
|
+
const { id, ...body } = args as any;
|
|
39
|
+
return asTextContentResult(await conductor.qbd.buildAssemblies.delete(id, body));
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
export default { metadata, tool, handler };
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
import { asTextContentResult } from 'conductor-node-mcp/tools/types';
|
|
4
|
+
|
|
5
|
+
import { Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
6
|
+
import type { Metadata } from '../../';
|
|
7
|
+
import Conductor from 'conductor-node';
|
|
8
|
+
|
|
9
|
+
export const metadata: Metadata = {
|
|
10
|
+
resource: 'qbd.build_assemblies',
|
|
11
|
+
operation: 'read',
|
|
12
|
+
tags: [],
|
|
13
|
+
httpMethod: 'get',
|
|
14
|
+
httpPath: '/quickbooks-desktop/build-assemblies',
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export const tool: Tool = {
|
|
18
|
+
name: 'list_qbd_build_assemblies',
|
|
19
|
+
description:
|
|
20
|
+
'Returns a list of build assemblies. Use the `cursor` parameter to paginate through the results.',
|
|
21
|
+
inputSchema: {
|
|
22
|
+
type: 'object',
|
|
23
|
+
properties: {
|
|
24
|
+
'Conductor-End-User-Id': {
|
|
25
|
+
type: 'string',
|
|
26
|
+
description:
|
|
27
|
+
'The ID of the EndUser to receive this request (e.g., `"Conductor-End-User-Id: {{END_USER_ID}}"`).',
|
|
28
|
+
},
|
|
29
|
+
cursor: {
|
|
30
|
+
type: 'string',
|
|
31
|
+
description:
|
|
32
|
+
'The pagination token to fetch the next set of results when paginating with the `limit` parameter. Do not include this parameter on the first call. Use the `nextCursor` value returned in the previous response to request subsequent results.',
|
|
33
|
+
},
|
|
34
|
+
ids: {
|
|
35
|
+
type: 'array',
|
|
36
|
+
description:
|
|
37
|
+
'Filter for specific build assemblies by their QuickBooks-assigned unique identifier(s).\n\n**IMPORTANT**: If you include this parameter, QuickBooks will ignore all other query parameters for this request.\n\n**NOTE**: If any of the values you specify in this parameter are not found, the request will return an error.',
|
|
38
|
+
items: {
|
|
39
|
+
type: 'string',
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
includeComponentLineItems: {
|
|
43
|
+
type: 'boolean',
|
|
44
|
+
description: 'Whether to include component line items in the response. Defaults to `true`.',
|
|
45
|
+
},
|
|
46
|
+
itemIds: {
|
|
47
|
+
type: 'array',
|
|
48
|
+
description: 'Filter for build assemblies containing these items.',
|
|
49
|
+
items: {
|
|
50
|
+
type: 'string',
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
limit: {
|
|
54
|
+
type: 'integer',
|
|
55
|
+
description:
|
|
56
|
+
'The maximum number of objects to return. Accepts values ranging from 1 to 150, defaults to 150. When used with cursor-based pagination, this parameter controls how many results are returned per page. To paginate through results, combine this with the `cursor` parameter. Each response will include a `nextCursor` value that can be passed to subsequent requests to retrieve the next page of results.',
|
|
57
|
+
},
|
|
58
|
+
pendingStatus: {
|
|
59
|
+
type: 'string',
|
|
60
|
+
description: 'Filter for build assemblies that are pending, not pending, or both.',
|
|
61
|
+
enum: ['all', 'not_pending', 'pending'],
|
|
62
|
+
},
|
|
63
|
+
refNumberContains: {
|
|
64
|
+
type: 'string',
|
|
65
|
+
description:
|
|
66
|
+
'Filter for build assemblies whose `refNumber` contains this substring.\n\n**NOTE**: If you use this parameter, you cannot also use `refNumberStartsWith` or `refNumberEndsWith`.',
|
|
67
|
+
},
|
|
68
|
+
refNumberEndsWith: {
|
|
69
|
+
type: 'string',
|
|
70
|
+
description:
|
|
71
|
+
'Filter for build assemblies whose `refNumber` ends with this substring.\n\n**NOTE**: If you use this parameter, you cannot also use `refNumberContains` or `refNumberStartsWith`.',
|
|
72
|
+
},
|
|
73
|
+
refNumberFrom: {
|
|
74
|
+
type: 'string',
|
|
75
|
+
description:
|
|
76
|
+
'Filter for build assemblies whose `refNumber` is greater than or equal to this value. If omitted, the range will begin with the first number of the list. Uses a numerical comparison for values that contain only digits; otherwise, uses a lexicographical comparison.',
|
|
77
|
+
},
|
|
78
|
+
refNumbers: {
|
|
79
|
+
type: 'array',
|
|
80
|
+
description:
|
|
81
|
+
'Filter for specific build assemblies by their ref-number(s), case-sensitive. In QuickBooks, ref-numbers are not required to be unique and can be arbitrarily changed by the QuickBooks user.\n\n**IMPORTANT**: If you include this parameter, QuickBooks will ignore all other query parameters for this request.\n\n**NOTE**: If any of the values you specify in this parameter are not found, the request will return an error.',
|
|
82
|
+
items: {
|
|
83
|
+
type: 'string',
|
|
84
|
+
},
|
|
85
|
+
},
|
|
86
|
+
refNumberStartsWith: {
|
|
87
|
+
type: 'string',
|
|
88
|
+
description:
|
|
89
|
+
'Filter for build assemblies whose `refNumber` starts with this substring.\n\n**NOTE**: If you use this parameter, you cannot also use `refNumberContains` or `refNumberEndsWith`.',
|
|
90
|
+
},
|
|
91
|
+
refNumberTo: {
|
|
92
|
+
type: 'string',
|
|
93
|
+
description:
|
|
94
|
+
'Filter for build assemblies whose `refNumber` is less than or equal to this value. If omitted, the range will end with the last number of the list. Uses a numerical comparison for values that contain only digits; otherwise, uses a lexicographical comparison.',
|
|
95
|
+
},
|
|
96
|
+
transactionDateFrom: {
|
|
97
|
+
type: 'string',
|
|
98
|
+
description:
|
|
99
|
+
'Filter for build assemblies whose `date` field is on or after this date, in ISO 8601 format (YYYY-MM-DD).',
|
|
100
|
+
format: 'date',
|
|
101
|
+
},
|
|
102
|
+
transactionDateTo: {
|
|
103
|
+
type: 'string',
|
|
104
|
+
description:
|
|
105
|
+
'Filter for build assemblies whose `date` field is on or before this date, in ISO 8601 format (YYYY-MM-DD).',
|
|
106
|
+
format: 'date',
|
|
107
|
+
},
|
|
108
|
+
updatedAfter: {
|
|
109
|
+
type: 'string',
|
|
110
|
+
description:
|
|
111
|
+
'Filter for build assemblies updated on or after this date and time, in ISO 8601 format (YYYY-MM-DDTHH:mm:ss). If you only provide a date (YYYY-MM-DD), the time is assumed to be 00:00:00 of that day.',
|
|
112
|
+
},
|
|
113
|
+
updatedBefore: {
|
|
114
|
+
type: 'string',
|
|
115
|
+
description:
|
|
116
|
+
'Filter for build assemblies updated on or before this date and time, in ISO 8601 format (YYYY-MM-DDTHH:mm:ss). If you only provide a date (YYYY-MM-DD), the time is assumed to be 23:59:59 of that day.',
|
|
117
|
+
},
|
|
118
|
+
},
|
|
119
|
+
},
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
export const handler = async (conductor: Conductor, args: Record<string, unknown> | undefined) => {
|
|
123
|
+
const body = args as any;
|
|
124
|
+
return asTextContentResult(await conductor.qbd.buildAssemblies.list(body));
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
export default { metadata, tool, handler };
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
import { asTextContentResult } from 'conductor-node-mcp/tools/types';
|
|
4
|
+
|
|
5
|
+
import { Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
6
|
+
import type { Metadata } from '../../';
|
|
7
|
+
import Conductor from 'conductor-node';
|
|
8
|
+
|
|
9
|
+
export const metadata: Metadata = {
|
|
10
|
+
resource: 'qbd.build_assemblies',
|
|
11
|
+
operation: 'read',
|
|
12
|
+
tags: [],
|
|
13
|
+
httpMethod: 'get',
|
|
14
|
+
httpPath: '/quickbooks-desktop/build-assemblies/{id}',
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export const tool: Tool = {
|
|
18
|
+
name: 'retrieve_qbd_build_assemblies',
|
|
19
|
+
description: 'Retrieves a build assembly by ID.',
|
|
20
|
+
inputSchema: {
|
|
21
|
+
type: 'object',
|
|
22
|
+
properties: {
|
|
23
|
+
id: {
|
|
24
|
+
type: 'string',
|
|
25
|
+
description: 'The QuickBooks-assigned unique identifier of the build assembly to retrieve.',
|
|
26
|
+
},
|
|
27
|
+
'Conductor-End-User-Id': {
|
|
28
|
+
type: 'string',
|
|
29
|
+
description:
|
|
30
|
+
'The ID of the EndUser to receive this request (e.g., `"Conductor-End-User-Id: {{END_USER_ID}}"`).',
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
export const handler = async (conductor: Conductor, args: Record<string, unknown> | undefined) => {
|
|
37
|
+
const { id, ...body } = args as any;
|
|
38
|
+
return asTextContentResult(await conductor.qbd.buildAssemblies.retrieve(id, body));
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
export default { metadata, tool, handler };
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
import { asTextContentResult } from 'conductor-node-mcp/tools/types';
|
|
4
|
+
|
|
5
|
+
import { Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
6
|
+
import type { Metadata } from '../../';
|
|
7
|
+
import Conductor from 'conductor-node';
|
|
8
|
+
|
|
9
|
+
export const metadata: Metadata = {
|
|
10
|
+
resource: 'qbd.build_assemblies',
|
|
11
|
+
operation: 'write',
|
|
12
|
+
tags: [],
|
|
13
|
+
httpMethod: 'post',
|
|
14
|
+
httpPath: '/quickbooks-desktop/build-assemblies/{id}',
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export const tool: Tool = {
|
|
18
|
+
name: 'update_qbd_build_assemblies',
|
|
19
|
+
description: 'Updates an existing build assembly.',
|
|
20
|
+
inputSchema: {
|
|
21
|
+
type: 'object',
|
|
22
|
+
properties: {
|
|
23
|
+
id: {
|
|
24
|
+
type: 'string',
|
|
25
|
+
description: 'The QuickBooks-assigned unique identifier of the build assembly to update.',
|
|
26
|
+
},
|
|
27
|
+
revisionNumber: {
|
|
28
|
+
type: 'string',
|
|
29
|
+
description:
|
|
30
|
+
"The current QuickBooks-assigned revision number of the build assembly object you are updating, which you can get by fetching the object first. Provide the most recent `revisionNumber` to ensure you're working with the latest data; otherwise, the update will return an error.",
|
|
31
|
+
},
|
|
32
|
+
'Conductor-End-User-Id': {
|
|
33
|
+
type: 'string',
|
|
34
|
+
description:
|
|
35
|
+
'The ID of the EndUser to receive this request (e.g., `"Conductor-End-User-Id: {{END_USER_ID}}"`).',
|
|
36
|
+
},
|
|
37
|
+
expirationDate: {
|
|
38
|
+
type: 'string',
|
|
39
|
+
description:
|
|
40
|
+
'The expiration date for the serial number or lot number of the item associated with this build assembly, in ISO 8601 format (YYYY-MM-DD). This is particularly relevant for perishable or time-sensitive inventory items. Note that this field is only supported on QuickBooks Desktop 2023 or later.',
|
|
41
|
+
format: 'date',
|
|
42
|
+
},
|
|
43
|
+
inventorySiteId: {
|
|
44
|
+
type: 'string',
|
|
45
|
+
description:
|
|
46
|
+
'The site location where inventory for the item associated with this build assembly is stored.',
|
|
47
|
+
},
|
|
48
|
+
inventorySiteLocationId: {
|
|
49
|
+
type: 'string',
|
|
50
|
+
description:
|
|
51
|
+
'The specific location (e.g., bin or shelf) within the inventory site where the item associated with this build assembly is stored.',
|
|
52
|
+
},
|
|
53
|
+
lotNumber: {
|
|
54
|
+
type: 'string',
|
|
55
|
+
description:
|
|
56
|
+
'The lot number of the item associated with this build assembly. Used for tracking groups of inventory items that are purchased or manufactured together.',
|
|
57
|
+
},
|
|
58
|
+
markPendingIfRequired: {
|
|
59
|
+
type: 'boolean',
|
|
60
|
+
description:
|
|
61
|
+
'When `true`, the build assembly will be marked pending if there are insufficient quantities to complete the build assembly.',
|
|
62
|
+
},
|
|
63
|
+
memo: {
|
|
64
|
+
type: 'string',
|
|
65
|
+
description: 'A memo or note for this build assembly.',
|
|
66
|
+
},
|
|
67
|
+
quantityToBuild: {
|
|
68
|
+
type: 'number',
|
|
69
|
+
description:
|
|
70
|
+
'The number of build assembly to be built. The transaction will fail if the number specified here exceeds the number of on-hand components.',
|
|
71
|
+
},
|
|
72
|
+
refNumber: {
|
|
73
|
+
type: 'string',
|
|
74
|
+
description:
|
|
75
|
+
'The case-sensitive user-defined reference number for this build assembly, which can be used to identify the transaction in QuickBooks. This value is not required to be unique and can be arbitrarily changed by the QuickBooks user.',
|
|
76
|
+
},
|
|
77
|
+
removePending: {
|
|
78
|
+
type: 'boolean',
|
|
79
|
+
description:
|
|
80
|
+
"When `true`, changes this build assembly's status from pending to non-pending, which effectively performs the build transaction. The operation will fail if there are insufficient component quantities on hand to complete the build.",
|
|
81
|
+
},
|
|
82
|
+
serialNumber: {
|
|
83
|
+
type: 'string',
|
|
84
|
+
description:
|
|
85
|
+
'The serial number of the item associated with this build assembly. This is used for tracking individual units of serialized inventory items.',
|
|
86
|
+
},
|
|
87
|
+
transactionDate: {
|
|
88
|
+
type: 'string',
|
|
89
|
+
description: 'The date of this build assembly, in ISO 8601 format (YYYY-MM-DD).',
|
|
90
|
+
format: 'date',
|
|
91
|
+
},
|
|
92
|
+
},
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
export const handler = async (conductor: Conductor, args: Record<string, unknown> | undefined) => {
|
|
97
|
+
const { id, ...body } = args as any;
|
|
98
|
+
return asTextContentResult(await conductor.qbd.buildAssemblies.update(id, body));
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
export default { metadata, tool, handler };
|
|
@@ -61,6 +61,10 @@ export const tool: Tool = {
|
|
|
61
61
|
items: {
|
|
62
62
|
type: 'object',
|
|
63
63
|
properties: {
|
|
64
|
+
itemId: {
|
|
65
|
+
type: 'string',
|
|
66
|
+
description: 'The inventory item associated with this inventory adjustment line.',
|
|
67
|
+
},
|
|
64
68
|
adjustLotNumber: {
|
|
65
69
|
type: 'object',
|
|
66
70
|
description: 'Adjusts the lot number of this inventory adjustment line.',
|
|
@@ -185,12 +189,8 @@ export const tool: Tool = {
|
|
|
185
189
|
},
|
|
186
190
|
required: [],
|
|
187
191
|
},
|
|
188
|
-
itemId: {
|
|
189
|
-
type: 'string',
|
|
190
|
-
description: 'The inventory item associated with this inventory adjustment line.',
|
|
191
|
-
},
|
|
192
192
|
},
|
|
193
|
-
required: [],
|
|
193
|
+
required: ['itemId'],
|
|
194
194
|
},
|
|
195
195
|
},
|
|
196
196
|
memo: {
|
|
@@ -62,6 +62,11 @@ export const tool: Tool = {
|
|
|
62
62
|
"The base value reference for this per-item price level's percentage adjustment. Specifies which price to use as the starting point for the adjustment calculation in the price level.\n\n**NOTE:** The price level must use either a fixed pricing approach (`customPrice` or `customPricePercent`) or a relative adjustment approach (`adjustPercentage` with `adjustRelativeTo`) when configuring per-item price levels.",
|
|
63
63
|
enum: ['cost', 'current_custom_price', 'standard_price'],
|
|
64
64
|
},
|
|
65
|
+
itemId: {
|
|
66
|
+
type: 'string',
|
|
67
|
+
description:
|
|
68
|
+
'The item associated with this per-item price level. This can refer to any good or service that the business buys or sells, including item types such as a service item, inventory item, or special calculation item like a discount item or sales-tax item.',
|
|
69
|
+
},
|
|
65
70
|
customPrice: {
|
|
66
71
|
type: 'string',
|
|
67
72
|
description:
|
|
@@ -72,13 +77,8 @@ export const tool: Tool = {
|
|
|
72
77
|
description:
|
|
73
78
|
"The fixed discount percentage for this per-item price level that modifies the specified item's standard price. Used to create a fixed percentage markup or discount specific to this item within this price level.",
|
|
74
79
|
},
|
|
75
|
-
itemId: {
|
|
76
|
-
type: 'string',
|
|
77
|
-
description:
|
|
78
|
-
'The item associated with this per-item price level. This can refer to any good or service that the business buys or sells, including item types such as a service item, inventory item, or special calculation item like a discount item or sales-tax item.',
|
|
79
|
-
},
|
|
80
80
|
},
|
|
81
|
-
required: ['adjustPercentage', 'adjustRelativeTo'],
|
|
81
|
+
required: ['adjustPercentage', 'adjustRelativeTo', 'itemId'],
|
|
82
82
|
},
|
|
83
83
|
},
|
|
84
84
|
},
|
|
@@ -71,6 +71,11 @@ export const tool: Tool = {
|
|
|
71
71
|
"The base value reference for this per-item price level's percentage adjustment. Specifies which price to use as the starting point for the adjustment calculation in the price level.\n\n**NOTE:** The price level must use either a fixed pricing approach (`customPrice` or `customPricePercent`) or a relative adjustment approach (`adjustPercentage` with `adjustRelativeTo`) when configuring per-item price levels.",
|
|
72
72
|
enum: ['cost', 'current_custom_price', 'standard_price'],
|
|
73
73
|
},
|
|
74
|
+
itemId: {
|
|
75
|
+
type: 'string',
|
|
76
|
+
description:
|
|
77
|
+
'The item associated with this per-item price level. This can refer to any good or service that the business buys or sells, including item types such as a service item, inventory item, or special calculation item like a discount item or sales-tax item.',
|
|
78
|
+
},
|
|
74
79
|
customPrice: {
|
|
75
80
|
type: 'string',
|
|
76
81
|
description:
|
|
@@ -81,13 +86,8 @@ export const tool: Tool = {
|
|
|
81
86
|
description:
|
|
82
87
|
"The fixed discount percentage for this per-item price level that modifies the specified item's standard price. Used to create a fixed percentage markup or discount specific to this item within this price level.",
|
|
83
88
|
},
|
|
84
|
-
itemId: {
|
|
85
|
-
type: 'string',
|
|
86
|
-
description:
|
|
87
|
-
'The item associated with this per-item price level. This can refer to any good or service that the business buys or sells, including item types such as a service item, inventory item, or special calculation item like a discount item or sales-tax item.',
|
|
88
|
-
},
|
|
89
89
|
},
|
|
90
|
-
required: ['adjustPercentage', 'adjustRelativeTo'],
|
|
90
|
+
required: ['adjustPercentage', 'adjustRelativeTo', 'itemId'],
|
|
91
91
|
},
|
|
92
92
|
},
|
|
93
93
|
},
|
package/tools/index.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/tools/index.ts"],"names":[],"mappings":"OAEO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE;AAE9C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/tools/index.ts"],"names":[],"mappings":"OAEO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE;AAE9C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;AAuM/C,eAAO,MAAM,SAAS,EAAE,QAAQ,EAAO,CAAC;AA2MxC,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC;IAChD,EAAE,EAAE,SAAS,GAAG,SAAS,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,CA4B1E"}
|
package/tools/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/tools/index.ts"],"names":[],"mappings":"OAEO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE;AAE9C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/tools/index.ts"],"names":[],"mappings":"OAEO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE;AAE9C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;AAuM/C,eAAO,MAAM,SAAS,EAAE,QAAQ,EAAO,CAAC;AA2MxC,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC;IAChD,EAAE,EAAE,SAAS,GAAG,SAAS,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,CA4B1E"}
|
package/tools/index.js
CHANGED
|
@@ -32,6 +32,11 @@ const retrieve_qbd_bills_1 = __importDefault(require("./qbd/bills/retrieve-qbd-b
|
|
|
32
32
|
const update_qbd_bills_1 = __importDefault(require("./qbd/bills/update-qbd-bills.js"));
|
|
33
33
|
const list_qbd_bills_1 = __importDefault(require("./qbd/bills/list-qbd-bills.js"));
|
|
34
34
|
const delete_qbd_bills_1 = __importDefault(require("./qbd/bills/delete-qbd-bills.js"));
|
|
35
|
+
const create_qbd_build_assemblies_1 = __importDefault(require("./qbd/build-assemblies/create-qbd-build-assemblies.js"));
|
|
36
|
+
const retrieve_qbd_build_assemblies_1 = __importDefault(require("./qbd/build-assemblies/retrieve-qbd-build-assemblies.js"));
|
|
37
|
+
const update_qbd_build_assemblies_1 = __importDefault(require("./qbd/build-assemblies/update-qbd-build-assemblies.js"));
|
|
38
|
+
const list_qbd_build_assemblies_1 = __importDefault(require("./qbd/build-assemblies/list-qbd-build-assemblies.js"));
|
|
39
|
+
const delete_qbd_build_assemblies_1 = __importDefault(require("./qbd/build-assemblies/delete-qbd-build-assemblies.js"));
|
|
35
40
|
const create_qbd_checks_1 = __importDefault(require("./qbd/checks/create-qbd-checks.js"));
|
|
36
41
|
const retrieve_qbd_checks_1 = __importDefault(require("./qbd/checks/retrieve-qbd-checks.js"));
|
|
37
42
|
const update_qbd_checks_1 = __importDefault(require("./qbd/checks/update-qbd-checks.js"));
|
|
@@ -227,6 +232,11 @@ addEndpoint(retrieve_qbd_bills_1.default);
|
|
|
227
232
|
addEndpoint(update_qbd_bills_1.default);
|
|
228
233
|
addEndpoint(list_qbd_bills_1.default);
|
|
229
234
|
addEndpoint(delete_qbd_bills_1.default);
|
|
235
|
+
addEndpoint(create_qbd_build_assemblies_1.default);
|
|
236
|
+
addEndpoint(retrieve_qbd_build_assemblies_1.default);
|
|
237
|
+
addEndpoint(update_qbd_build_assemblies_1.default);
|
|
238
|
+
addEndpoint(list_qbd_build_assemblies_1.default);
|
|
239
|
+
addEndpoint(delete_qbd_build_assemblies_1.default);
|
|
230
240
|
addEndpoint(create_qbd_checks_1.default);
|
|
231
241
|
addEndpoint(retrieve_qbd_checks_1.default);
|
|
232
242
|
addEndpoint(update_qbd_checks_1.default);
|