@opencard-dev/mcp-server 0.1.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/dist/index.d.ts +64 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +186 -0
- package/dist/index.js.map +1 -0
- package/dist/tools.d.ts +353 -0
- package/dist/tools.d.ts.map +1 -0
- package/dist/tools.js +1199 -0
- package/dist/tools.js.map +1 -0
- package/package.json +45 -0
- package/references/gotchas.md +141 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@opencard-dev/mcp-server",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "MCP server providing OpenCard tools for AI agents",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"scripts": {
|
|
8
|
+
"build": "tsc",
|
|
9
|
+
"type-check": "tsc --noEmit",
|
|
10
|
+
"dev": "tsc --watch",
|
|
11
|
+
"test": "vitest run"
|
|
12
|
+
},
|
|
13
|
+
"dependencies": {
|
|
14
|
+
"@opencard-dev/core": "workspace:*",
|
|
15
|
+
"@modelcontextprotocol/sdk": "^0.7.0"
|
|
16
|
+
},
|
|
17
|
+
"devDependencies": {
|
|
18
|
+
"@types/node": "^20.0.0",
|
|
19
|
+
"typescript": "^5.3.0",
|
|
20
|
+
"vitest": "^1.0.0"
|
|
21
|
+
},
|
|
22
|
+
"exports": {
|
|
23
|
+
".": {
|
|
24
|
+
"require": "./dist/index.js",
|
|
25
|
+
"types": "./dist/index.d.ts"
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"files": [
|
|
29
|
+
"dist",
|
|
30
|
+
"references"
|
|
31
|
+
],
|
|
32
|
+
"keywords": [
|
|
33
|
+
"mcp",
|
|
34
|
+
"ai-agents",
|
|
35
|
+
"opencard",
|
|
36
|
+
"stripe"
|
|
37
|
+
],
|
|
38
|
+
"author": "Longshot Design",
|
|
39
|
+
"license": "MIT",
|
|
40
|
+
"repository": {
|
|
41
|
+
"type": "git",
|
|
42
|
+
"url": "https://github.com/JLongshot/opencard.git",
|
|
43
|
+
"directory": "packages/mcp-server"
|
|
44
|
+
}
|
|
45
|
+
}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
# OpenCard MCP Gotchas
|
|
2
|
+
|
|
3
|
+
## Amounts Are Always Cents
|
|
4
|
+
Every amount in every tool is in cents. This is not configurable.
|
|
5
|
+
- $25.00 → 2500
|
|
6
|
+
- $1,000.00 → 100000
|
|
7
|
+
- $0.50 → 50
|
|
8
|
+
|
|
9
|
+
If you pass 25 meaning "$25", you're actually passing $0.25. The tool won't
|
|
10
|
+
warn you — it'll just approve a 25-cent charge.
|
|
11
|
+
|
|
12
|
+
**Affected fields:** `amount_cents`, `daily_limit_cents`, `monthly_limit_cents`,
|
|
13
|
+
`per_tx_limit_cents`, `max_per_transaction_cents`
|
|
14
|
+
|
|
15
|
+
## check_rules vs. get_balance
|
|
16
|
+
- **check_rules**: "Would this specific purchase be approved?" → yes/no with reasons
|
|
17
|
+
- **get_balance**: "How much budget is left?" → spend totals and remaining amounts
|
|
18
|
+
|
|
19
|
+
Use `check_rules` when you're about to buy something specific.
|
|
20
|
+
Use `get_balance` when you want a general budget overview.
|
|
21
|
+
|
|
22
|
+
`check_rules` is **instant and local** — it never hits the Stripe API. It evaluates
|
|
23
|
+
the card's rules in memory. `get_balance` reads from the local SQLite tracker
|
|
24
|
+
(populated by webhooks).
|
|
25
|
+
|
|
26
|
+
## Approval ≠ Execution
|
|
27
|
+
`request_approval` asks a human "can I buy this?" and waits for their answer.
|
|
28
|
+
If they say yes, you get back `{ status: "approved" }`. That's it.
|
|
29
|
+
|
|
30
|
+
You **still need to actually make the purchase yourself** through whatever
|
|
31
|
+
payment flow you're using. Approval is permission, not action.
|
|
32
|
+
|
|
33
|
+
**Common mistake:** Agent receives approval, assumes the charge was made, reports
|
|
34
|
+
success. No charge ever happened. Always make the actual charge after approval.
|
|
35
|
+
|
|
36
|
+
## Default Deny
|
|
37
|
+
If a card has no rule assigned, **ALL charges are declined**. This is intentional —
|
|
38
|
+
it prevents configuration errors from allowing unlimited spending. If you're
|
|
39
|
+
getting unexpected declines, check that the card has a rule via `list_cards`.
|
|
40
|
+
|
|
41
|
+
The `check_rules` handler will return:
|
|
42
|
+
```json
|
|
43
|
+
{
|
|
44
|
+
"status": "declined",
|
|
45
|
+
"allowed": false,
|
|
46
|
+
"reason": "No rule assigned to this card. All charges are declined by default (default-deny)."
|
|
47
|
+
}
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Card Balance Model
|
|
51
|
+
Stripe Issuing cards don't have a "balance" like a prepaid card. They spend
|
|
52
|
+
from the **operator's Stripe account balance**. "Remaining budget" means
|
|
53
|
+
"how much more can be spent before hitting the rule's limit", not
|
|
54
|
+
"how much money is loaded on the card."
|
|
55
|
+
|
|
56
|
+
This also means: if the operator's Stripe balance goes to zero, all cards stop
|
|
57
|
+
working regardless of their configured limits.
|
|
58
|
+
|
|
59
|
+
## Stripe API Calls
|
|
60
|
+
These tools **hit the Stripe API** (slower, costs API rate limit):
|
|
61
|
+
- `create_card`, `get_card_details`, `list_cards`, `set_limits`, `pause_card`, `resume_card`, `get_transactions`
|
|
62
|
+
|
|
63
|
+
These tools are **local only** (instant, free, no Stripe call):
|
|
64
|
+
- `check_rules`
|
|
65
|
+
|
|
66
|
+
These tools use **SQLite** (instant, free, but require webhook server to be running for accurate data):
|
|
67
|
+
- `get_balance`, `request_approval`
|
|
68
|
+
|
|
69
|
+
If you need to check whether a purchase will be approved, use `check_rules` — not
|
|
70
|
+
`list_cards` followed by manual math. `check_rules` runs the exact same logic as
|
|
71
|
+
the webhook authorization handler.
|
|
72
|
+
|
|
73
|
+
## Don't Hardcode Card IDs
|
|
74
|
+
Card IDs are not stable across environments (test vs. live). Always use
|
|
75
|
+
`list_cards` to discover the right card for the current environment. Hardcoding
|
|
76
|
+
a test card ID will fail silently in production (or vice versa).
|
|
77
|
+
|
|
78
|
+
## Tool Ordering
|
|
79
|
+
The recommended workflow order is:
|
|
80
|
+
|
|
81
|
+
1. `list_cards` — find the right card
|
|
82
|
+
2. `check_rules` — verify the purchase would pass
|
|
83
|
+
3. (make the actual charge via your payment flow)
|
|
84
|
+
4. `get_balance` — confirm the charge landed and check remaining budget
|
|
85
|
+
|
|
86
|
+
Skipping `check_rules` and going straight to a charge that gets declined wastes
|
|
87
|
+
API calls and may trigger rate limits or fraud detection.
|
|
88
|
+
|
|
89
|
+
## rule_id in check_rules
|
|
90
|
+
|
|
91
|
+
### When rule_id is optional
|
|
92
|
+
If the rules store has exactly one rule, `check_rules` will use it automatically.
|
|
93
|
+
You don't need to specify `rule_id`.
|
|
94
|
+
|
|
95
|
+
### When rule_id is required
|
|
96
|
+
If the rules store has **multiple rules**, you **must** pass `rule_id` explicitly.
|
|
97
|
+
Without it, `check_rules` will return an error:
|
|
98
|
+
|
|
99
|
+
```json
|
|
100
|
+
{
|
|
101
|
+
"status": "error",
|
|
102
|
+
"message": "Multiple rules found in the store (3). You must specify rule_id when calling check_rules with multiple rules."
|
|
103
|
+
}
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
This is intentional: with multiple rules, there's no safe way to know which one
|
|
107
|
+
applies to your card without making a Stripe API call. Rather than guess, we
|
|
108
|
+
require you to specify which rule to test against.
|
|
109
|
+
|
|
110
|
+
### When rule_id is useful
|
|
111
|
+
Use `rule_id` when:
|
|
112
|
+
- You want to test a purchase against a specific rule before assigning it to a card
|
|
113
|
+
- You're debugging why a purchase was declined under a specific rule
|
|
114
|
+
- You're testing a new rule configuration before deploying it
|
|
115
|
+
|
|
116
|
+
## Paused vs. Canceled Cards
|
|
117
|
+
- **Paused** (`status: inactive`): All new charges declined. Reversible via `resume_card`.
|
|
118
|
+
- **Canceled** (`status: canceled`): Permanent. Cannot be resumed. Must create a new card.
|
|
119
|
+
|
|
120
|
+
`resume_card` only works on paused cards. If you try to resume a canceled card,
|
|
121
|
+
it will return an error.
|
|
122
|
+
|
|
123
|
+
## Card Descriptions — Use Them
|
|
124
|
+
Every card can have a human-readable `description` field that explains what the
|
|
125
|
+
card is for. It's set at creation time and stored in Stripe metadata as
|
|
126
|
+
`opencard_description`.
|
|
127
|
+
|
|
128
|
+
Examples:
|
|
129
|
+
- `"Engineering SaaS subscriptions — Vercel, AWS, Anthropic"`
|
|
130
|
+
- `"Research tooling — data vendors, academic access"`
|
|
131
|
+
- `"Travel & expenses — Atlas agent"`
|
|
132
|
+
|
|
133
|
+
**Don't guess which card to use from limits alone.** Two cards with the same
|
|
134
|
+
daily limit might be for completely different purposes. Always read the
|
|
135
|
+
`description` from `list_cards` before choosing a card.
|
|
136
|
+
|
|
137
|
+
`check_rules` also returns `card_description` in its response — use it to
|
|
138
|
+
confirm you're checking against the right card before making a purchase.
|
|
139
|
+
|
|
140
|
+
If a card has no description (`null`), ask the operator to add one via
|
|
141
|
+
card metadata in the Stripe dashboard, or recreate the card with a description.
|