@crscreditapi/finstack-mcp-server 0.3.0-61c51ea → 0.4.0-0c53dac
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 +1 -1
- package/dist/api/customer.api.d.ts +18 -0
- package/dist/tools/customer.tools.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@ MCP server exposing CRS B2B (Finstack) customer data over the [Model Context Pro
|
|
|
7
7
|
| Name | Purpose |
|
|
8
8
|
|---|---|
|
|
9
9
|
| `finstack_search_customer` | Fuzzy-match a customer by name and return candidate CIDs. Use when only a name is known. |
|
|
10
|
-
| `finstack_get_customer_summary` | Non-PII summary for one customer: onboarding progress, products, API credentials, inspection status, recent billing. |
|
|
10
|
+
| `finstack_get_customer_summary` | Non-PII summary for one customer: portal account status and account type, onboarding progress, products, sales opportunities (type + stage), API credentials, inspection status, recent billing. |
|
|
11
11
|
| `finstack_get_customer_revenue` | Revenue for one customer over a date range, bucketed by `day` / `week` / `month` / `quarter` / `year`. |
|
|
12
12
|
| `finstack_get_customer_invoices` | Paginated list of finalized invoices for one customer with full line-item breakdown. |
|
|
13
13
|
| `finstack_get_customer_pricing_config` | Full configured pricing state for one customer: products, pricing addendums, and environment-user productPricing. Use to cross-check invoiced rates against contracted pricing. |
|
|
@@ -2,6 +2,12 @@ import type { ApiClient } from './client.js';
|
|
|
2
2
|
export interface CustomerSummary {
|
|
3
3
|
summary: string;
|
|
4
4
|
account: {
|
|
5
|
+
/**
|
|
6
|
+
* Portal account status as shown on the customer page, pre-formatted:
|
|
7
|
+
* 'active' | 'inactive' | 'blacklisted' | 'locked' | 'obsolete' | 'new_account'.
|
|
8
|
+
*/
|
|
9
|
+
status: string | null;
|
|
10
|
+
account_type: 'account' | 'channel_partner' | null;
|
|
5
11
|
onboarding_path: string | null;
|
|
6
12
|
onboarding_completion_percent: number;
|
|
7
13
|
completed_tasks: number;
|
|
@@ -19,6 +25,18 @@ export interface CustomerSummary {
|
|
|
19
25
|
platform: string | null;
|
|
20
26
|
status: 'activated' | 'not_activated';
|
|
21
27
|
}>;
|
|
28
|
+
/**
|
|
29
|
+
* Sales opportunities as shown on the portal's sales opportunity pages
|
|
30
|
+
* (distinct from compliance/vetting-path opportunities).
|
|
31
|
+
*/
|
|
32
|
+
sales_opportunities: Array<{
|
|
33
|
+
opportunity_code: string | null;
|
|
34
|
+
opportunity_type: 'full' | 'upsell' | 'expand' | 'land';
|
|
35
|
+
stage: 'closed_won' | 'closed_lost' | 'churned';
|
|
36
|
+
booking_value_mrr: number | null;
|
|
37
|
+
close_date: string | null;
|
|
38
|
+
activation_date: string | null;
|
|
39
|
+
}>;
|
|
22
40
|
api_credentials: Record<'sandbox' | 'production', {
|
|
23
41
|
configured: boolean;
|
|
24
42
|
enabled_count: number;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export const customerTools = [
|
|
2
2
|
{
|
|
3
3
|
name: 'finstack_get_customer_summary',
|
|
4
|
-
description:
|
|
4
|
+
description: "Fetch a non-PII summary of a B2B customer: portal account status (account.status: active/inactive/blacklisted/locked/obsolete/new_account) and account type (account/channel_partner), onboarding progress, products, sales opportunities (sales_opportunities[] with opportunity_type full/upsell/expand/land and stage closed_won/closed_lost/churned), API credentials, inspection status, and recent billing. Use this when asked for a customer's status or sales opp stage. Backed by the mware-portal chatbase customer_context endpoint.",
|
|
5
5
|
inputSchema: {
|
|
6
6
|
type: 'object',
|
|
7
7
|
properties: {
|