@countfinancial/cli 0.1.6 → 0.1.8
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/partner-mcp/config.js +1 -1
- package/dist/partner-mcp/helpers/mcpKnowledge.helper.d.ts +19 -0
- package/dist/partner-mcp/helpers/mcpKnowledge.helper.js +293 -0
- package/dist/partner-mcp/helpers/mcpKnowledge.helper.js.map +1 -0
- package/dist/partner-mcp/helpers/mcpPayloadValidation.helper.d.ts +42 -0
- package/dist/partner-mcp/helpers/mcpPayloadValidation.helper.js +741 -0
- package/dist/partner-mcp/helpers/mcpPayloadValidation.helper.js.map +1 -0
- package/dist/partner-mcp/helpers/mcpPlaybooks.helper.d.ts +26 -0
- package/dist/partner-mcp/helpers/mcpPlaybooks.helper.js +210 -0
- package/dist/partner-mcp/helpers/mcpPlaybooks.helper.js.map +1 -0
- package/dist/partner-mcp/helpers/mcpRecoveryHint.helper.d.ts +22 -0
- package/dist/partner-mcp/helpers/mcpRecoveryHint.helper.js +203 -0
- package/dist/partner-mcp/helpers/mcpRecoveryHint.helper.js.map +1 -0
- package/dist/partner-mcp/helpers/mcpReferenceResolution.helper.d.ts +52 -0
- package/dist/partner-mcp/helpers/mcpReferenceResolution.helper.js +343 -0
- package/dist/partner-mcp/helpers/mcpReferenceResolution.helper.js.map +1 -0
- package/dist/partner-mcp/helpers/partnerErrorSanitization.helper.d.ts +18 -0
- package/dist/partner-mcp/helpers/partnerErrorSanitization.helper.js +63 -0
- package/dist/partner-mcp/helpers/partnerErrorSanitization.helper.js.map +1 -0
- package/dist/partner-mcp/partnerApiClient.d.ts +4 -0
- package/dist/partner-mcp/partnerApiClient.js +38 -1
- package/dist/partner-mcp/partnerApiClient.js.map +1 -1
- package/dist/partner-mcp/tools/definitions.js +233 -12
- package/dist/partner-mcp/tools/definitions.js.map +1 -1
- package/dist/partner-mcp/tools/registerTools.js +107 -23
- package/dist/partner-mcp/tools/registerTools.js.map +1 -1
- package/dist/partner-mcp/tools/schemas.d.ts +40 -0
- package/dist/partner-mcp/tools/schemas.js +55 -0
- package/dist/partner-mcp/tools/schemas.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcpPayloadValidation.helper.js","sourceRoot":"","sources":["../../../src/partner-mcp/helpers/mcpPayloadValidation.helper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export interface McpPlaybookStep {
|
|
2
|
+
stepNumber: number;
|
|
3
|
+
instruction: string;
|
|
4
|
+
toolName: string;
|
|
5
|
+
inputGuidance?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface McpPlaybook {
|
|
8
|
+
id: string;
|
|
9
|
+
title: string;
|
|
10
|
+
summary: string;
|
|
11
|
+
steps: McpPlaybookStep[];
|
|
12
|
+
relatedPlaybookIds: string[];
|
|
13
|
+
relatedKnowledgeTopicIds: string[];
|
|
14
|
+
keywords: string[];
|
|
15
|
+
}
|
|
16
|
+
export declare const MCP_PLAYBOOKS: McpPlaybook[];
|
|
17
|
+
interface LookupMcpPlaybooksParams {
|
|
18
|
+
playbook?: string;
|
|
19
|
+
search?: string;
|
|
20
|
+
}
|
|
21
|
+
interface LookupMcpPlaybooksResult {
|
|
22
|
+
playbooks: McpPlaybook[];
|
|
23
|
+
availablePlaybookIds: string[];
|
|
24
|
+
}
|
|
25
|
+
export declare function lookupMcpPlaybooks(params: LookupMcpPlaybooksParams): LookupMcpPlaybooksResult;
|
|
26
|
+
export {};
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
export const MCP_PLAYBOOKS = [
|
|
2
|
+
{
|
|
3
|
+
id: 'pay_vendor_bill',
|
|
4
|
+
title: 'Pay a vendor bill with a bank transaction',
|
|
5
|
+
summary: 'Find an approved bill, locate or create an Expense transaction, and apply the payment via assign_transaction_to_bills_invoices.',
|
|
6
|
+
relatedPlaybookIds: [],
|
|
7
|
+
relatedKnowledgeTopicIds: ['external_uuids', 'describe_endpoint'],
|
|
8
|
+
keywords: ['bill', 'pay', 'vendor', 'ap', 'accounts payable', 'payment', 'expense'],
|
|
9
|
+
steps: [
|
|
10
|
+
{
|
|
11
|
+
stepNumber: 1,
|
|
12
|
+
instruction: 'List approved bills for the vendor or period you want to pay.',
|
|
13
|
+
toolName: 'COUNT_list_bills',
|
|
14
|
+
inputGuidance: 'query: { approvalStatus: "approved", vendorUuids: "<vendor-uuid>", page: 1, limit: 50 }. Use vendorUuids from list_vendors — never numeric vendors.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
stepNumber: 2,
|
|
18
|
+
instruction: 'Load bill detail and confirm amountDue, currency, and billType.',
|
|
19
|
+
toolName: 'COUNT_get_bill',
|
|
20
|
+
inputGuidance: 'id: bill UUID from list_bills row id field.',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
stepNumber: 3,
|
|
24
|
+
instruction: 'Find an existing Expense bank transaction to apply, or create one if the payment is new.',
|
|
25
|
+
toolName: 'COUNT_list_transactions',
|
|
26
|
+
inputGuidance: 'query filters for unreconciled Expense rows matching amount/date. Alternatively use COUNT_create_transaction with type Expense, accUuid, categoryAccountUuid, amount, postedDate.',
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
stepNumber: 4,
|
|
30
|
+
instruction: 'Apply the transaction to the bill.',
|
|
31
|
+
toolName: 'COUNT_assign_transaction_to_bills_invoices',
|
|
32
|
+
inputGuidance: 'id: transaction UUID. body: { matchingType: "bill", records: [{ id: "<bill-uuid>", paymentAmount: <amount> }] }. Bill must be approved; transaction must be Expense type for vendor bills.',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
stepNumber: 5,
|
|
36
|
+
instruction: 'Optional — reload bill detail to confirm paidAmount and amountDue updated.',
|
|
37
|
+
toolName: 'COUNT_get_bill',
|
|
38
|
+
inputGuidance: 'Same bill UUID as step 2.',
|
|
39
|
+
},
|
|
40
|
+
],
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
id: 'migration_import',
|
|
44
|
+
title: 'Bulk import customers or bank transactions from another system',
|
|
45
|
+
summary: 'Confirm workspace scope, map accounts, resolve name references, preflight each batch, import in ~25-row chunks, then sanity-check with a P&L report.',
|
|
46
|
+
relatedPlaybookIds: ['month_end_review'],
|
|
47
|
+
relatedKnowledgeTopicIds: ['bulk_operations', 'external_uuids', 'multiple_workspaces'],
|
|
48
|
+
keywords: ['import', 'migration', 'bulk', 'csv', 'backfill', 'qbo', 'xero', 'historical'],
|
|
49
|
+
steps: [
|
|
50
|
+
{
|
|
51
|
+
stepNumber: 1,
|
|
52
|
+
instruction: 'Confirm which workspace you are importing into.',
|
|
53
|
+
toolName: 'COUNT_auth_status',
|
|
54
|
+
inputGuidance: 'When multiple workspaces are authorized, also call COUNT_list_workspaces and pass workspace_id on every subsequent tool.',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
stepNumber: 2,
|
|
58
|
+
instruction: 'Map bank accounts and expense/income category accounts in the chart of accounts.',
|
|
59
|
+
toolName: 'COUNT_list_accounts',
|
|
60
|
+
inputGuidance: 'query: { search: "<name fragment>", type: "Expenses" } for categories; query without type for bank/cash accounts. Copy id UUIDs for accUuid and categoryAccountUuid.',
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
stepNumber: 3,
|
|
64
|
+
instruction: 'Resolve vendor/customer/account names to UUIDs before building bulk rows.',
|
|
65
|
+
toolName: 'COUNT_resolve_references',
|
|
66
|
+
inputGuidance: 'Pass vendorName, customerName, customerEmail, accountName, accountType as needed. Use returned UUIDs in bulk row bodies.',
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
stepNumber: 4,
|
|
70
|
+
instruction: 'Preflight each batch payload before calling a bulk create tool.',
|
|
71
|
+
toolName: 'COUNT_validate_payload',
|
|
72
|
+
inputGuidance: 'toolName: COUNT_bulk_create_transactions (or COUNT_bulk_create_customers). body: { transactions: [...] }. Set verifyReferences: true to confirm UUIDs exist.',
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
stepNumber: 5,
|
|
76
|
+
instruction: 'Import in batches of ~25 rows (hard cap 100 per call). Retry only failed row indices.',
|
|
77
|
+
toolName: 'COUNT_bulk_create_transactions',
|
|
78
|
+
inputGuidance: 'body: { transactions: [<same shape as create_transaction>] }. Read errorCount first; retry rows where success is false.',
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
stepNumber: 6,
|
|
82
|
+
instruction: 'Sanity-check totals with a profit and loss report for the imported period.',
|
|
83
|
+
toolName: 'COUNT_generate_profit_and_loss',
|
|
84
|
+
inputGuidance: 'query: { startDate, endDate, basis: "accrual" } under top-level query key.',
|
|
85
|
+
},
|
|
86
|
+
],
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
id: 'budget_import',
|
|
90
|
+
title: 'Export, edit, and re-import a P&L budget (Excel round-trip)',
|
|
91
|
+
summary: 'Export the budget grid as JSON, edit amounts offline, then bulk-import cell updates in ~25-row batches on a draft version.',
|
|
92
|
+
relatedPlaybookIds: ['month_end_review'],
|
|
93
|
+
relatedKnowledgeTopicIds: ['bulk_operations', 'external_uuids'],
|
|
94
|
+
keywords: ['budget', 'import', 'export', 'excel', 'spreadsheet', 'forecast', 'planning'],
|
|
95
|
+
steps: [
|
|
96
|
+
{
|
|
97
|
+
stepNumber: 1,
|
|
98
|
+
instruction: 'List budgets or create a new draft budget for the planning period.',
|
|
99
|
+
toolName: 'COUNT_list_budgets',
|
|
100
|
+
inputGuidance: 'Optional query.status: draft. Or COUNT_create_budget with name, startPeriod, cadence, actualPeriods, budgetPeriods.',
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
stepNumber: 2,
|
|
104
|
+
instruction: 'Export the budget grid with account UUIDs and period columns.',
|
|
105
|
+
toolName: 'COUNT_get_budget_grid',
|
|
106
|
+
inputGuidance: 'id: budget UUID. query: { includeActuals: "false", versionNumber: <draft version> } for faster budget-only export.',
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
stepNumber: 3,
|
|
110
|
+
instruction: 'Resolve account names to UUIDs when building import rows from a spreadsheet.',
|
|
111
|
+
toolName: 'COUNT_resolve_references',
|
|
112
|
+
inputGuidance: 'Pass accountName + accountType (Income or Expenses). Copy returned UUIDs into update rows.',
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
stepNumber: 4,
|
|
116
|
+
instruction: 'Preflight each import batch before writing cells.',
|
|
117
|
+
toolName: 'COUNT_validate_payload',
|
|
118
|
+
inputGuidance: 'toolName: COUNT_bulk_update_budget_cells. body: { updates: [{ accountUuid, periodStart, amount }] }.',
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
stepNumber: 5,
|
|
122
|
+
instruction: 'Import edited amounts in batches (~25 rows; cap 100). Retry only failed indices.',
|
|
123
|
+
toolName: 'COUNT_bulk_update_budget_cells',
|
|
124
|
+
inputGuidance: 'id + versionNumber + body.updates[]. Use periodStart values from get_budget_grid columns. Read errorCount first.',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
stepNumber: 6,
|
|
128
|
+
instruction: 'Publish the budget when amounts are final.',
|
|
129
|
+
toolName: 'COUNT_publish_budget',
|
|
130
|
+
inputGuidance: 'id: budget UUID. Optional body.versionNumber for the draft version to publish.',
|
|
131
|
+
},
|
|
132
|
+
],
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
id: 'month_end_review',
|
|
136
|
+
title: 'Month-end workspace health review',
|
|
137
|
+
summary: 'Pull workspace stats, review open AP/AR, scan for uncategorized transactions, and run a trial balance or P&L for the closing period.',
|
|
138
|
+
relatedPlaybookIds: ['migration_import'],
|
|
139
|
+
relatedKnowledgeTopicIds: ['report_category_filters', 'external_uuids'],
|
|
140
|
+
keywords: ['month end', 'close', 'review', 'reconcile', 'trial balance', 'stats', 'health'],
|
|
141
|
+
steps: [
|
|
142
|
+
{
|
|
143
|
+
stepNumber: 1,
|
|
144
|
+
instruction: 'Pull CFO-style workspace snapshot for cash, AR, AP, and profitability.',
|
|
145
|
+
toolName: 'COUNT_get_workspace_stats',
|
|
146
|
+
inputGuidance: 'query: { include: "cash,receivables,payables,profitability" }.',
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
stepNumber: 2,
|
|
150
|
+
instruction: 'Review draft or unpaid vendor bills.',
|
|
151
|
+
toolName: 'COUNT_list_bills',
|
|
152
|
+
inputGuidance: 'query: { approvalStatus: "draft" } or filter by status/approvalStatus as needed.',
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
stepNumber: 3,
|
|
156
|
+
instruction: 'Review overdue or open customer invoices.',
|
|
157
|
+
toolName: 'COUNT_list_invoices',
|
|
158
|
+
inputGuidance: 'query pagination and status filters from COUNT_describe_endpoint for list_invoices.',
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
stepNumber: 4,
|
|
162
|
+
instruction: 'Scan for uncategorized or unreconciled bank transactions.',
|
|
163
|
+
toolName: 'COUNT_list_transactions',
|
|
164
|
+
inputGuidance: 'Use query filters from COUNT_describe_endpoint. Uncategorized rows may lack a category account — use change_transaction_category to fix after review.',
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
stepNumber: 5,
|
|
168
|
+
instruction: 'Run trial balance or P&L for the closing period.',
|
|
169
|
+
toolName: 'COUNT_generate_trial_balance',
|
|
170
|
+
inputGuidance: 'query: { startDate, endDate }. Alternative: COUNT_generate_profit_and_loss for income statement review.',
|
|
171
|
+
},
|
|
172
|
+
],
|
|
173
|
+
},
|
|
174
|
+
];
|
|
175
|
+
export function lookupMcpPlaybooks(params) {
|
|
176
|
+
const { playbook, search } = params;
|
|
177
|
+
const availablePlaybookIds = MCP_PLAYBOOKS.map((_entry) => _entry.id);
|
|
178
|
+
if (playbook && playbook.trim() !== '') {
|
|
179
|
+
const normalizedPlaybook = playbook.trim().toLowerCase();
|
|
180
|
+
const matchedPlaybook = MCP_PLAYBOOKS.find((_entry) => _entry.id.toLowerCase() === normalizedPlaybook ||
|
|
181
|
+
_entry.id.toLowerCase().replace(/_/g, ' ') === normalizedPlaybook);
|
|
182
|
+
return {
|
|
183
|
+
playbooks: matchedPlaybook ? [matchedPlaybook] : [],
|
|
184
|
+
availablePlaybookIds,
|
|
185
|
+
};
|
|
186
|
+
}
|
|
187
|
+
if (search && search.trim() !== '') {
|
|
188
|
+
const normalizedSearch = search.trim().toLowerCase();
|
|
189
|
+
const matchedPlaybooks = MCP_PLAYBOOKS.filter((_entry) => {
|
|
190
|
+
const haystack = [_entry.id, _entry.title, _entry.summary, ..._entry.keywords, ..._entry.steps.map((_step) => _step.instruction)]
|
|
191
|
+
.join(' ')
|
|
192
|
+
.toLowerCase();
|
|
193
|
+
return haystack.includes(normalizedSearch);
|
|
194
|
+
});
|
|
195
|
+
return { playbooks: matchedPlaybooks, availablePlaybookIds };
|
|
196
|
+
}
|
|
197
|
+
return {
|
|
198
|
+
playbooks: MCP_PLAYBOOKS.map((_entry) => ({
|
|
199
|
+
id: _entry.id,
|
|
200
|
+
title: _entry.title,
|
|
201
|
+
summary: _entry.summary,
|
|
202
|
+
steps: _entry.steps,
|
|
203
|
+
relatedPlaybookIds: _entry.relatedPlaybookIds,
|
|
204
|
+
relatedKnowledgeTopicIds: _entry.relatedKnowledgeTopicIds,
|
|
205
|
+
keywords: _entry.keywords,
|
|
206
|
+
})),
|
|
207
|
+
availablePlaybookIds,
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
//# sourceMappingURL=mcpPlaybooks.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcpPlaybooks.helper.js","sourceRoot":"","sources":["../../../src/partner-mcp/helpers/mcpPlaybooks.helper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface McpRecoveryHint {
|
|
2
|
+
summary: string;
|
|
3
|
+
knowledgeTopic?: string;
|
|
4
|
+
playbook?: string;
|
|
5
|
+
describeTool?: string;
|
|
6
|
+
suggestedNextTools: string[];
|
|
7
|
+
}
|
|
8
|
+
interface BuildMcpRecoveryHintParams {
|
|
9
|
+
statusCode?: number;
|
|
10
|
+
message?: string;
|
|
11
|
+
errorCode?: string;
|
|
12
|
+
toolName?: string;
|
|
13
|
+
responseBody?: unknown;
|
|
14
|
+
}
|
|
15
|
+
export declare function buildMcpRecoveryHint(params: BuildMcpRecoveryHintParams): McpRecoveryHint | undefined;
|
|
16
|
+
interface AttachMcpRecoveryHintParams {
|
|
17
|
+
errorPayload: Record<string, unknown>;
|
|
18
|
+
toolName?: string;
|
|
19
|
+
}
|
|
20
|
+
/** Merge _mcpRecoveryHint onto an error JSON payload when a rule matches. */
|
|
21
|
+
export declare function attachMcpRecoveryHint(params: AttachMcpRecoveryHintParams): Record<string, unknown>;
|
|
22
|
+
export {};
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
const GENERIC_PARTNER_FAILURE_MESSAGE = 'could not process your request';
|
|
2
|
+
const RECOVERY_HINT_RULES = [
|
|
3
|
+
{
|
|
4
|
+
matches: (params) => params.toolName === 'COUNT_create_account' &&
|
|
5
|
+
params.statusCode === 500 &&
|
|
6
|
+
typeof params.message === 'string' &&
|
|
7
|
+
(params.message.includes(GENERIC_PARTNER_FAILURE_MESSAGE) ||
|
|
8
|
+
params.message.includes('WHERE parameter') ||
|
|
9
|
+
params.message.includes('accountTypeId')),
|
|
10
|
+
build: () => ({
|
|
11
|
+
summary: 'Account creation failed server-side. Do not expose stack traces or file paths to the user — share requestId and suggest creating the account in the COUNT UI or retrying after support checks the error.',
|
|
12
|
+
knowledgeTopic: 'partner_error_hygiene',
|
|
13
|
+
describeTool: 'COUNT_create_account',
|
|
14
|
+
suggestedNextTools: ['COUNT_knowledge', 'COUNT_list_account_sub_types', 'COUNT_describe_endpoint'],
|
|
15
|
+
}),
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
matches: (params) => params.statusCode === 500 &&
|
|
19
|
+
typeof params.message === 'string' &&
|
|
20
|
+
params.message.includes(GENERIC_PARTNER_FAILURE_MESSAGE),
|
|
21
|
+
build: (params) => ({
|
|
22
|
+
summary: 'COUNT returned a server error for this tool. Tell the user the action could not be completed, share requestId when present, and do not expose stack traces or file paths.',
|
|
23
|
+
knowledgeTopic: 'partner_error_hygiene',
|
|
24
|
+
describeTool: params.toolName,
|
|
25
|
+
suggestedNextTools: ['COUNT_knowledge', 'COUNT_describe_endpoint'],
|
|
26
|
+
}),
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
matches: (params) => typeof params.message === 'string' && params.message.includes('Invalid query parameter `type`'),
|
|
30
|
+
build: () => ({
|
|
31
|
+
summary: 'COUNT_list_account_sub_types rejected query.type — use one of Assets, Liabilities, Equity, Income, Expenses (plural, case-sensitive). Omit query.type to list all sub-types.',
|
|
32
|
+
knowledgeTopic: 'create_chart_of_accounts_account',
|
|
33
|
+
describeTool: 'COUNT_list_account_sub_types',
|
|
34
|
+
suggestedNextTools: ['COUNT_describe_endpoint', 'COUNT_knowledge'],
|
|
35
|
+
}),
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
matches: (params) => typeof params.message === 'string' && params.message.includes('Account sub type not found'),
|
|
39
|
+
build: () => ({
|
|
40
|
+
summary: 'Resolve subTypeId from COUNT_list_account_sub_types (preferred) or an existing list_accounts row — never guess ids.',
|
|
41
|
+
knowledgeTopic: 'create_chart_of_accounts_account',
|
|
42
|
+
describeTool: 'COUNT_create_account',
|
|
43
|
+
suggestedNextTools: ['COUNT_list_account_sub_types', 'COUNT_knowledge', 'COUNT_describe_endpoint'],
|
|
44
|
+
}),
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
matches: (params) => typeof params.message === 'string' && params.message.includes('numeric `vendors` is not accepted'),
|
|
48
|
+
build: () => ({
|
|
49
|
+
summary: 'Bill list filters must use vendorUuids from list_vendors, not numeric vendors.',
|
|
50
|
+
knowledgeTopic: 'external_uuids',
|
|
51
|
+
describeTool: 'COUNT_list_bills',
|
|
52
|
+
suggestedNextTools: ['COUNT_knowledge', 'COUNT_describe_endpoint'],
|
|
53
|
+
}),
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
matches: (params) => typeof params.message === 'string' && params.message.includes('numeric `projects` is not accepted'),
|
|
57
|
+
build: () => ({
|
|
58
|
+
summary: 'Bill list filters must use projectUuids from list_projects, not numeric projects.',
|
|
59
|
+
knowledgeTopic: 'external_uuids',
|
|
60
|
+
describeTool: 'COUNT_list_bills',
|
|
61
|
+
suggestedNextTools: ['COUNT_knowledge', 'COUNT_describe_endpoint'],
|
|
62
|
+
}),
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
matches: (params) => typeof params.message === 'string' &&
|
|
66
|
+
(params.message.includes('numeric `tags` is not accepted') ||
|
|
67
|
+
params.message.includes('Use `tagUuids`')),
|
|
68
|
+
build: () => ({
|
|
69
|
+
summary: 'Bill and transaction tag fields must use tagUuids from list_tags, not numeric tags.',
|
|
70
|
+
knowledgeTopic: 'external_uuids',
|
|
71
|
+
describeTool: 'COUNT_create_bill',
|
|
72
|
+
suggestedNextTools: ['COUNT_knowledge', 'COUNT_describe_endpoint'],
|
|
73
|
+
}),
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
matches: (params) => typeof params.message === 'string' &&
|
|
77
|
+
(params.message.includes('Use `vendorUuid`') || params.message.includes('numeric `vendorId` is not accepted')),
|
|
78
|
+
build: () => ({
|
|
79
|
+
summary: 'Use vendorUuid from list_vendors instead of numeric vendorId on bill requests.',
|
|
80
|
+
knowledgeTopic: 'external_uuids',
|
|
81
|
+
describeTool: 'COUNT_create_bill',
|
|
82
|
+
suggestedNextTools: ['COUNT_knowledge', 'COUNT_resolve_references'],
|
|
83
|
+
}),
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
matches: (params) => params.statusCode === 403 && params.errorCode === 'workspace_not_authorized',
|
|
87
|
+
build: () => ({
|
|
88
|
+
summary: 'The requested workspace is not authorized for this MCP connection. Reconnect to add workspaces or pick from list_workspaces.',
|
|
89
|
+
knowledgeTopic: 'authorize_additional_workspaces',
|
|
90
|
+
suggestedNextTools: ['COUNT_knowledge', 'COUNT_list_workspaces'],
|
|
91
|
+
}),
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
matches: (params) => params.statusCode === 403 && params.errorCode === 'firm_scope_required',
|
|
95
|
+
build: () => ({
|
|
96
|
+
summary: 'Firm consolidated report tools require an accounting firm staff connection. Connect with firm scope or use per-workspace report tools.',
|
|
97
|
+
knowledgeTopic: 'multiple_workspaces',
|
|
98
|
+
suggestedNextTools: ['COUNT_auth_status', 'COUNT_knowledge'],
|
|
99
|
+
}),
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
matches: (params) => params.statusCode === 400 &&
|
|
103
|
+
(params.errorCode === 'workspace_required' ||
|
|
104
|
+
params.errorCode === 'workspace_required_for_write' ||
|
|
105
|
+
(typeof params.message === 'string' &&
|
|
106
|
+
params.message.includes('Pass workspace_id when the connection has access to multiple workspaces'))),
|
|
107
|
+
build: () => ({
|
|
108
|
+
summary: 'Multiple workspaces are authorized — pass workspace_id on every read/write partner tool.',
|
|
109
|
+
knowledgeTopic: 'multiple_workspaces',
|
|
110
|
+
suggestedNextTools: ['COUNT_list_workspaces', 'COUNT_knowledge'],
|
|
111
|
+
}),
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
matches: (params) => typeof params.message === 'string' && params.message.includes('Bulk requests are capped at 100'),
|
|
115
|
+
build: () => ({
|
|
116
|
+
summary: 'Split the import into multiple bulk calls (~25 rows recommended). See migration_import playbook.',
|
|
117
|
+
knowledgeTopic: 'bulk_operations',
|
|
118
|
+
playbook: 'migration_import',
|
|
119
|
+
describeTool: 'COUNT_bulk_create_transactions',
|
|
120
|
+
suggestedNextTools: ['COUNT_playbooks', 'COUNT_validate_payload'],
|
|
121
|
+
}),
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
matches: (params) => {
|
|
125
|
+
if (!params.responseBody || typeof params.responseBody !== 'object')
|
|
126
|
+
return false;
|
|
127
|
+
const bodyRecord = params.responseBody;
|
|
128
|
+
const nestedData = bodyRecord.data && typeof bodyRecord.data === 'object'
|
|
129
|
+
? bodyRecord.data
|
|
130
|
+
: bodyRecord;
|
|
131
|
+
return Array.isArray(nestedData._partnerWarnings) && nestedData._partnerWarnings.length > 0;
|
|
132
|
+
},
|
|
133
|
+
build: (params) => ({
|
|
134
|
+
summary: 'Some fields in your payload were ignored. Read _partnerWarnings in the response — use describe_endpoint for the correct field names.',
|
|
135
|
+
knowledgeTopic: 'partner_warnings',
|
|
136
|
+
describeTool: params.toolName,
|
|
137
|
+
suggestedNextTools: ['COUNT_describe_endpoint', 'COUNT_knowledge'],
|
|
138
|
+
}),
|
|
139
|
+
},
|
|
140
|
+
];
|
|
141
|
+
export function buildMcpRecoveryHint(params) {
|
|
142
|
+
for (const rule of RECOVERY_HINT_RULES) {
|
|
143
|
+
if (rule.matches(params)) {
|
|
144
|
+
return rule.build(params);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
return undefined;
|
|
148
|
+
}
|
|
149
|
+
/** Read machine error codes from top-level fields or nested COUNT API responseBody. */
|
|
150
|
+
function extractMachineErrorCode(params) {
|
|
151
|
+
const { errorPayload } = params;
|
|
152
|
+
if (typeof errorPayload.error === 'string' && errorPayload.error.trim() !== '') {
|
|
153
|
+
return errorPayload.error.trim();
|
|
154
|
+
}
|
|
155
|
+
if (typeof errorPayload.errorCode === 'string' && errorPayload.errorCode.trim() !== '') {
|
|
156
|
+
return errorPayload.errorCode.trim();
|
|
157
|
+
}
|
|
158
|
+
const responseBody = errorPayload.responseBody;
|
|
159
|
+
if (!responseBody || typeof responseBody !== 'object') {
|
|
160
|
+
return undefined;
|
|
161
|
+
}
|
|
162
|
+
const responseBodyRecord = responseBody;
|
|
163
|
+
if (typeof responseBodyRecord.error === 'string' && responseBodyRecord.error.trim() !== '') {
|
|
164
|
+
return responseBodyRecord.error.trim();
|
|
165
|
+
}
|
|
166
|
+
if (typeof responseBodyRecord.errorCode === 'string' && responseBodyRecord.errorCode.trim() !== '') {
|
|
167
|
+
return responseBodyRecord.errorCode.trim();
|
|
168
|
+
}
|
|
169
|
+
const nestedData = responseBodyRecord.data;
|
|
170
|
+
if (nestedData && typeof nestedData === 'object') {
|
|
171
|
+
const nestedDataRecord = nestedData;
|
|
172
|
+
if (typeof nestedDataRecord.error === 'string' && nestedDataRecord.error.trim() !== '') {
|
|
173
|
+
return nestedDataRecord.error.trim();
|
|
174
|
+
}
|
|
175
|
+
if (typeof nestedDataRecord.errorCode === 'string' && nestedDataRecord.errorCode.trim() !== '') {
|
|
176
|
+
return nestedDataRecord.errorCode.trim();
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
return undefined;
|
|
180
|
+
}
|
|
181
|
+
/** Merge _mcpRecoveryHint onto an error JSON payload when a rule matches. */
|
|
182
|
+
export function attachMcpRecoveryHint(params) {
|
|
183
|
+
const { errorPayload, toolName } = params;
|
|
184
|
+
const message = typeof errorPayload.message === 'string' ? errorPayload.message : undefined;
|
|
185
|
+
const statusCode = typeof errorPayload.statusCode === 'number' ? errorPayload.statusCode : undefined;
|
|
186
|
+
const errorCode = extractMachineErrorCode({ errorPayload });
|
|
187
|
+
const responseBody = errorPayload.responseBody;
|
|
188
|
+
const recoveryHint = buildMcpRecoveryHint({
|
|
189
|
+
statusCode,
|
|
190
|
+
message,
|
|
191
|
+
errorCode,
|
|
192
|
+
toolName,
|
|
193
|
+
responseBody,
|
|
194
|
+
});
|
|
195
|
+
if (!recoveryHint) {
|
|
196
|
+
return errorPayload;
|
|
197
|
+
}
|
|
198
|
+
return {
|
|
199
|
+
...errorPayload,
|
|
200
|
+
_mcpRecoveryHint: recoveryHint,
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
//# sourceMappingURL=mcpRecoveryHint.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcpRecoveryHint.helper.js","sourceRoot":"","sources":["../../../src/partner-mcp/helpers/mcpRecoveryHint.helper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { QueryParams } from '../types.js';
|
|
2
|
+
export interface McpReferenceResolutionPartnerClient {
|
|
3
|
+
request(params: {
|
|
4
|
+
method: 'GET';
|
|
5
|
+
path: string;
|
|
6
|
+
query?: QueryParams;
|
|
7
|
+
requiresUserAuth?: boolean;
|
|
8
|
+
}): Promise<unknown>;
|
|
9
|
+
}
|
|
10
|
+
export type McpReferenceMatchConfidence = 'exact' | 'fuzzy' | 'ambiguous' | 'not_found';
|
|
11
|
+
export interface McpReferenceResolutionCandidate {
|
|
12
|
+
uuid: string;
|
|
13
|
+
name: string;
|
|
14
|
+
}
|
|
15
|
+
export interface McpReferenceResolutionFieldResult {
|
|
16
|
+
field: string;
|
|
17
|
+
searchTerm: string;
|
|
18
|
+
uuid: string | null;
|
|
19
|
+
name: string | null;
|
|
20
|
+
matchConfidence: McpReferenceMatchConfidence;
|
|
21
|
+
issue?: 'not_found' | 'ambiguous';
|
|
22
|
+
candidates?: McpReferenceResolutionCandidate[];
|
|
23
|
+
}
|
|
24
|
+
interface ResolveMcpReferencesParams {
|
|
25
|
+
client: McpReferenceResolutionPartnerClient;
|
|
26
|
+
vendorName?: string;
|
|
27
|
+
customerName?: string;
|
|
28
|
+
customerEmail?: string;
|
|
29
|
+
accountName?: string;
|
|
30
|
+
accountType?: string;
|
|
31
|
+
projectName?: string;
|
|
32
|
+
tagName?: string;
|
|
33
|
+
}
|
|
34
|
+
interface ResolveMcpReferencesResult {
|
|
35
|
+
resolutions: McpReferenceResolutionFieldResult[];
|
|
36
|
+
}
|
|
37
|
+
interface ScoreNameMatchParams {
|
|
38
|
+
searchTerm: string;
|
|
39
|
+
candidateName: string;
|
|
40
|
+
}
|
|
41
|
+
interface ScoreEmailMatchParams {
|
|
42
|
+
searchTerm: string;
|
|
43
|
+
candidateEmail: string;
|
|
44
|
+
}
|
|
45
|
+
interface ScoreNameMatchResult {
|
|
46
|
+
score: number;
|
|
47
|
+
matchConfidence: McpReferenceMatchConfidence;
|
|
48
|
+
}
|
|
49
|
+
export declare function resolveMcpReferences(params: ResolveMcpReferencesParams): Promise<ResolveMcpReferencesResult>;
|
|
50
|
+
export declare function scoreNameMatch(params: ScoreNameMatchParams): ScoreNameMatchResult;
|
|
51
|
+
export declare function scoreEmailMatch(params: ScoreEmailMatchParams): ScoreNameMatchResult;
|
|
52
|
+
export {};
|