@attesso/mcp 1.3.0 → 1.3.2

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
@@ -1,24 +1,10 @@
1
1
  # @attesso/mcp
2
2
 
3
- Model Context Protocol server for Attesso settlement operations. Works with any MCP-compatible AI assistant:
4
-
5
- - Claude Desktop
6
- - Cursor
7
- - Windsurf
8
- - Continue
9
- - Zed
10
- - Cline
11
- - And more
12
-
13
- ## Installation
14
-
15
- ```bash
16
- npm install @attesso/mcp
17
- ```
3
+ Model Context Protocol server for Attesso payment operations. Works with any MCP-compatible client.
18
4
 
19
5
  ## Setup
20
6
 
21
- Add to your MCP client's configuration. For Claude Desktop (`~/Library/Application Support/Claude/claude_desktop_config.json` on macOS):
7
+ Add to your MCP client configuration:
22
8
 
23
9
  ```json
24
10
  {
@@ -34,25 +20,21 @@ Add to your MCP client's configuration. For Claude Desktop (`~/Library/Applicati
34
20
  }
35
21
  ```
36
22
 
37
- Restart Claude Desktop after updating the configuration.
38
-
39
23
  ## Available Tools
40
24
 
41
25
  ### Read Operations
42
26
 
43
27
  | Tool | Description |
44
28
  |------|-------------|
45
- | `attesso_get_mandate` | Get mandate details (status, limits, restrictions, remaining spend) |
46
- | `attesso_get_payment` | Check payment status and details |
47
- | `attesso_get_passport` | Get passport token for merchant authentication |
29
+ | `attesso_get_mandate` | Get mandate details: spending limit, status, restrictions |
30
+ | `attesso_get_card` | Check card status and details |
48
31
 
49
32
  ### Write Operations
50
33
 
51
34
  | Tool | Description |
52
35
  |------|-------------|
53
- | `attesso_execute_payment` | Execute a payment against a mandate |
54
- | `attesso_capture` | Capture an authorized payment with final amount |
55
- | `attesso_cancel` | Cancel authorization and release held funds |
36
+ | `attesso_issue_card` | Issue an ephemeral virtual card from a mandate |
37
+ | `attesso_revoke_mandate` | Revoke a mandate so it can no longer be used |
56
38
 
57
39
  ## Environment Variables
58
40
 
@@ -71,8 +53,8 @@ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
71
53
 
72
54
  const server = createAttessoMCPServer({
73
55
  apiKey: process.env.ATTESSO_API_KEY,
74
- mandateId: 'mandate_xyz', // Optional: pre-configure mandate
75
- readOnlyMode: false, // Optional: disable write operations
56
+ mandateId: 'mandate_xyz', // optional: pre-configure mandate
57
+ readOnlyMode: false, // optional: disable write operations
76
58
  });
77
59
 
78
60
  const transport = new StdioServerTransport();
@@ -81,11 +63,11 @@ await server.connect(transport);
81
63
 
82
64
  ## Security Notes
83
65
 
84
- 1. **API Keys**: Only use restricted keys (`rk_test_*` for development, `rk_live_*` for production) with MCP. Never use management keys (`sk_mgmt_*`).
66
+ 1. **API Keys**: Only use restricted keys (`rk_test_*` for development, `rk_live_*` for production). Never use management keys (`sk_mgmt_*`).
85
67
 
86
- 2. **Mandate Creation**: Mandates require user biometric authentication (FaceID/TouchID) and cannot be created via MCP. The user must pre-authorize a mandate before the AI assistant can use it.
68
+ 2. **Mandate Creation**: Mandates require user biometric authentication and cannot be created via MCP. The user must pre-authorize a mandate before the AI assistant can use it.
87
69
 
88
- 3. **Read-Only Mode**: For monitoring dashboards or status checks, enable read-only mode to prevent accidental payments:
70
+ 3. **Read-Only Mode**: For monitoring or status checks, enable read-only mode to prevent card issuance:
89
71
  ```json
90
72
  {
91
73
  "env": {
@@ -95,50 +77,44 @@ await server.connect(transport);
95
77
  }
96
78
  ```
97
79
 
98
- 4. **Idempotency**: Payment operations automatically generate idempotency keys for safe retries.
99
-
100
80
  ## Example Conversation
101
81
 
102
82
  **User**: What's the status of mandate_abc123?
103
83
 
104
- **Claude** (calls `attesso_get_mandate`):
84
+ **Assistant** (calls `attesso_get_mandate`):
105
85
  ```json
106
86
  {
107
87
  "id": "mandate_abc123",
108
88
  "status": "active",
109
89
  "spendingLimit": 50000,
110
- "amountSpent": 0,
111
90
  "currency": "USD"
112
91
  }
113
92
  ```
114
93
 
115
- **Claude**: Mandate mandate_abc123 is active with $500.00 available to spend.
94
+ **Assistant**: Mandate mandate_abc123 is active with $500.00 available to spend.
116
95
 
117
96
  ---
118
97
 
119
- **User**: Book me a flight to NYC for $347
98
+ **User**: I need a card for $347 to book a flight.
120
99
 
121
- **Claude** (calls `attesso_execute_payment`):
100
+ **Assistant** (calls `attesso_issue_card`):
122
101
  ```json
123
102
  {
124
- "id": "pay_xyz789",
125
- "mandateId": "mandate_abc123",
126
- "amount": 34700,
127
- "merchant": "United Airlines",
128
- "status": "completed"
103
+ "cardId": "card_xyz789",
104
+ "number": "4242...1234",
105
+ "expMonth": 3,
106
+ "expYear": 2026,
107
+ "expiresAt": "2026-02-08T12:05:00Z",
108
+ "spendingLimit": 34700
129
109
  }
130
110
  ```
131
111
 
132
- **Claude**: Done! I've charged $347.00 to United Airlines. Payment ID: pay_xyz789.
112
+ **Assistant**: Done. I've issued a virtual card ending in 1234 with a $347.00 limit. It expires in 5 minutes.
133
113
 
134
114
  ## Related Packages
135
115
 
136
- - [`@attesso/sdk`](https://www.npmjs.com/package/@attesso/sdk) - API client with Vercel AI SDK integration
137
- - [`@attesso/types`](https://www.npmjs.com/package/@attesso/types) - TypeScript types
138
-
139
- ## Documentation
140
-
141
- Full documentation: https://www.attesso.com/docs
116
+ - [`@attesso/sdk`](https://www.npmjs.com/package/@attesso/sdk) -- API client with Vercel AI SDK integration
117
+ - [`@attesso/types`](https://www.npmjs.com/package/@attesso/types) -- TypeScript types
142
118
 
143
119
  ## License
144
120
 
File without changes
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@attesso/mcp",
3
- "version": "1.3.0",
4
- "description": "Model Context Protocol server for Attesso lets MCP-compliant AI agents create mandates and issue virtual cards.",
3
+ "version": "1.3.2",
4
+ "description": "Attesso bindings for the Model Context Protocol.",
5
5
  "author": "Attesso",
6
6
  "license": "MIT",
7
7
  "repository": {
@@ -31,12 +31,6 @@
31
31
  "publishConfig": {
32
32
  "access": "public"
33
33
  },
34
- "scripts": {
35
- "build": "tsc",
36
- "dev": "tsc --watch",
37
- "clean": "rm -rf dist",
38
- "test": "vitest run"
39
- },
40
34
  "keywords": [
41
35
  "attesso",
42
36
  "mcp",
@@ -49,10 +43,10 @@
49
43
  "llm"
50
44
  ],
51
45
  "dependencies": {
52
- "@attesso/sdk": "workspace:*",
53
- "@attesso/types": "workspace:*",
54
46
  "@modelcontextprotocol/sdk": "^1.25.0",
55
- "zod-to-json-schema": "^3.23.0"
47
+ "zod-to-json-schema": "^3.23.0",
48
+ "@attesso/sdk": "1.3.2",
49
+ "@attesso/types": "1.2.2"
56
50
  },
57
51
  "peerDependencies": {
58
52
  "zod": ">=3.25.0"
@@ -66,5 +60,11 @@
66
60
  "typescript": "^5.7.0",
67
61
  "vitest": "^2.1.0",
68
62
  "zod": "^3.25.0"
63
+ },
64
+ "scripts": {
65
+ "build": "tsc",
66
+ "dev": "tsc --watch",
67
+ "clean": "rm -rf dist",
68
+ "test": "vitest run"
69
69
  }
70
- }
70
+ }