@warmio/mcp 11.0.3 → 11.0.5
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/.cursor-plugin/README.md +152 -0
- package/.cursor-plugin/plugin.json +39 -0
- package/README.md +4 -0
- package/assets/logo.svg +14 -0
- package/dist/install.d.ts +2 -0
- package/dist/install.d.ts.map +1 -1
- package/dist/install.js +47 -24
- package/dist/install.js.map +1 -1
- package/mcp.json +11 -0
- package/package.json +6 -2
- package/skills/warm/SKILL.md +152 -0
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
# Warm Cursor Plugin
|
|
2
|
+
|
|
3
|
+
Official Cursor Marketplace plugin for [Warm](https://warm.io) — personal finance automation via MCP.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
This plugin provides access to Warm's Model Context Protocol (MCP) server, enabling AI assistants to:
|
|
8
|
+
|
|
9
|
+
- **Read financial context** — balances, accounts, budgets, goals, liabilities, holdings
|
|
10
|
+
- **Retrieve transactions** — latest 10-day window or specific month
|
|
11
|
+
- **Search operations** — discover available automation operations
|
|
12
|
+
- **Invoke operations** — execute approved automations with write-operation safeguards
|
|
13
|
+
|
|
14
|
+
All write operations require explicit approval via a two-step describe → invoke flow.
|
|
15
|
+
|
|
16
|
+
## Installation
|
|
17
|
+
|
|
18
|
+
### From Cursor Marketplace (Recommended)
|
|
19
|
+
|
|
20
|
+
1. Open Cursor
|
|
21
|
+
2. Go to Settings → Cursor Plugins
|
|
22
|
+
3. Search for "Warm"
|
|
23
|
+
4. Click "Install"
|
|
24
|
+
5. Enter your Warm API key when prompted
|
|
25
|
+
|
|
26
|
+
Get your API key: [https://warm.io/settings/api-keys](https://warm.io/settings/api-keys)
|
|
27
|
+
|
|
28
|
+
### Local Testing (Development)
|
|
29
|
+
|
|
30
|
+
For local development and testing:
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
# Symlink the full plugin package root (not just .cursor-plugin/)
|
|
34
|
+
mkdir -p ~/.cursor/plugins/local
|
|
35
|
+
ln -s /path/to/warm-app/libraries/mcp ~/.cursor/plugins/local/warm
|
|
36
|
+
|
|
37
|
+
# Restart Cursor or run Developer: Reload Window
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Configuration
|
|
41
|
+
|
|
42
|
+
The plugin requires one environment variable:
|
|
43
|
+
|
|
44
|
+
- **`WARM_API_KEY`** (required, secret) — Your Warm API key from [https://warm.io/settings/api-keys](https://warm.io/settings/api-keys)
|
|
45
|
+
|
|
46
|
+
This is automatically configured when you install from the Cursor Marketplace.
|
|
47
|
+
|
|
48
|
+
## Available MCP Tools
|
|
49
|
+
|
|
50
|
+
### Read Tools
|
|
51
|
+
|
|
52
|
+
- `get_financial_context` — Compact overview of your financial status
|
|
53
|
+
- `get_transactions` — Transaction history (latest or by month)
|
|
54
|
+
|
|
55
|
+
### Automation Tools
|
|
56
|
+
|
|
57
|
+
- `search_operations` — Find available operations
|
|
58
|
+
- `describe_operation` — Get operation details and approval for writes
|
|
59
|
+
- `invoke_operation` — Execute approved operations
|
|
60
|
+
|
|
61
|
+
See [skills/warm/SKILL.md](../skills/warm/SKILL.md) for detailed usage examples and workflow guidance.
|
|
62
|
+
|
|
63
|
+
## Usage Examples
|
|
64
|
+
|
|
65
|
+
### Read Financial Data
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
Show me my current net worth and account balances
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
What were my transactions in January 2024?
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Automation
|
|
76
|
+
|
|
77
|
+
```
|
|
78
|
+
Search for operations related to budgets
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
```
|
|
82
|
+
Create a monthly budget for groceries with $500 limit
|
|
83
|
+
(The assistant will use describe_operation to get approval, then invoke_operation)
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
## Security & Approvals
|
|
87
|
+
|
|
88
|
+
- **Read operations** execute immediately without approval
|
|
89
|
+
- **Write operations** require a two-step approval flow:
|
|
90
|
+
1. `describe_operation` with exact input → returns `approval_id`
|
|
91
|
+
2. `invoke_operation` with same input + `approval_id` → executes
|
|
92
|
+
- Approvals expire and are single-use
|
|
93
|
+
- The AI cannot move money or modify data without explicit approval
|
|
94
|
+
|
|
95
|
+
## Documentation
|
|
96
|
+
|
|
97
|
+
- Plugin skill guide: [skills/warm/SKILL.md](../skills/warm/SKILL.md)
|
|
98
|
+
- Warm Developer Docs: [https://warm.io/developers](https://warm.io/developers)
|
|
99
|
+
- MCP package source: [libraries/mcp](../)
|
|
100
|
+
- Published npm package: [@warmio/mcp](https://www.npmjs.com/package/@warmio/mcp)
|
|
101
|
+
|
|
102
|
+
## Publishing to Cursor Marketplace
|
|
103
|
+
|
|
104
|
+
To publish this plugin to the Cursor Marketplace:
|
|
105
|
+
|
|
106
|
+
1. Ensure `plugin.json`, `mcp.json`, and `skills/warm/SKILL.md` are complete and correct
|
|
107
|
+
2. Test locally via `~/.cursor/plugins/local/warm` symlink to `libraries/mcp`
|
|
108
|
+
3. Submit at: [https://cursor.com/marketplace/publish](https://cursor.com/marketplace/publish)
|
|
109
|
+
4. Provide repository path: `jasonstockman/warm-app` (monorepo root with `.cursor-plugin/marketplace.json`)
|
|
110
|
+
|
|
111
|
+
The marketplace will read the plugin manifest and host it for one-click installation.
|
|
112
|
+
|
|
113
|
+
## Development
|
|
114
|
+
|
|
115
|
+
This plugin is maintained in the [warm-app](https://github.com/jasonstockman/warm-app) monorepo under `libraries/mcp/.cursor-plugin`.
|
|
116
|
+
|
|
117
|
+
The underlying MCP server is published as [@warmio/mcp](https://www.npmjs.com/package/@warmio/mcp) on npm.
|
|
118
|
+
|
|
119
|
+
### Local Package Testing
|
|
120
|
+
|
|
121
|
+
To test against a local build of `@warmio/mcp`:
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
# Build the MCP package
|
|
125
|
+
cd libraries/mcp
|
|
126
|
+
pnpm build
|
|
127
|
+
|
|
128
|
+
# Update mcp.json to use local path temporarily
|
|
129
|
+
{
|
|
130
|
+
"mcpServers": {
|
|
131
|
+
"warm": {
|
|
132
|
+
"command": "node",
|
|
133
|
+
"args": ["/absolute/path/to/libraries/mcp/dist/cli.js", "mcp"],
|
|
134
|
+
"env": {
|
|
135
|
+
"WARM_API_KEY": "${WARM_API_KEY}"
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
Remember to revert to `npx -y @warmio/mcp@latest mcp` before publishing.
|
|
143
|
+
|
|
144
|
+
## License
|
|
145
|
+
|
|
146
|
+
MIT License — see [LICENSE](../LICENSE) or repository root for details.
|
|
147
|
+
|
|
148
|
+
## Support
|
|
149
|
+
|
|
150
|
+
- Issues: [GitHub Issues](https://github.com/jasonstockman/warm-app/issues)
|
|
151
|
+
- Email: hello@warm.io
|
|
152
|
+
- Documentation: https://warm.io/developers
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "warm",
|
|
3
|
+
"displayName": "Warm",
|
|
4
|
+
"version": "1.0.0",
|
|
5
|
+
"description": "Personal finance automation MCP server. Read financial context, transactions, search operations, and invoke approved automations.",
|
|
6
|
+
"author": {
|
|
7
|
+
"name": "Warm",
|
|
8
|
+
"email": "hello@warm.io"
|
|
9
|
+
},
|
|
10
|
+
"homepage": "https://warm.io/developers",
|
|
11
|
+
"repository": "https://github.com/jasonstockman/warm-app",
|
|
12
|
+
"license": "MIT",
|
|
13
|
+
"logo": "assets/logo.svg",
|
|
14
|
+
"keywords": [
|
|
15
|
+
"warm",
|
|
16
|
+
"finance",
|
|
17
|
+
"automation",
|
|
18
|
+
"personal-finance",
|
|
19
|
+
"financial-data",
|
|
20
|
+
"budgets",
|
|
21
|
+
"transactions",
|
|
22
|
+
"mcp"
|
|
23
|
+
],
|
|
24
|
+
"category": "integrations",
|
|
25
|
+
"tags": ["finance", "automation", "personal-finance", "mcp"],
|
|
26
|
+
"variables": {
|
|
27
|
+
"type": "object",
|
|
28
|
+
"properties": {
|
|
29
|
+
"WARM_API_KEY": {
|
|
30
|
+
"type": "string",
|
|
31
|
+
"title": "Warm API key",
|
|
32
|
+
"description": "Full-access API key from https://warm.io/settings/api-keys"
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"required": ["WARM_API_KEY"]
|
|
36
|
+
},
|
|
37
|
+
"mcpServers": "./mcp.json",
|
|
38
|
+
"skills": "./skills/"
|
|
39
|
+
}
|
package/README.md
CHANGED
|
@@ -15,3 +15,7 @@ npx -y @warmio/mcp@latest mcp
|
|
|
15
15
|
The server exposes financial-context read tools plus the automation operation catalog. The installer
|
|
16
16
|
stores the local credential with owner-only file permissions. Importing `@warmio/mcp` exposes the
|
|
17
17
|
library API without starting the CLI.
|
|
18
|
+
|
|
19
|
+
## Cursor Marketplace
|
|
20
|
+
|
|
21
|
+
For Cursor users, install the official [Warm plugin](https://cursor.com/marketplace) directly from the Cursor Marketplace for one-click setup. The plugin is also available at [`.cursor-plugin/`](.cursor-plugin/) in this package.
|
package/assets/logo.svg
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="600" height="469" viewBox="0 0 600 469" version="1.1">
|
|
2
|
+
<style>
|
|
3
|
+
:root {
|
|
4
|
+
color-scheme: light dark;
|
|
5
|
+
color: CanvasText;
|
|
6
|
+
}
|
|
7
|
+
</style>
|
|
8
|
+
<!-- Left segment -->
|
|
9
|
+
<path d="M 33.500 40.660 C 20.206 42.744, 0 48.560, -0 50.302 C -0 51.759, 123.955 348.889, 127.738 356.500 C 142.182 385.561, 169.450 410.275, 198.946 421.040 C 218.922 428.330, 243.683 430.825, 264.526 427.648 C 277.151 425.724, 294.628 420.011, 294.194 417.952 C 293.790 416.040, 172.732 124.599, 168.522 115.405 C 161.779 100.679, 149.168 84.171, 135.093 71.646 C 119.358 57.644, 98.880 47.362, 77 42.478 C 69.645 40.836, 40.220 39.606, 33.500 40.660" fill="currentColor" stroke="currentColor" stroke-width="8"/>
|
|
10
|
+
<!-- Center segment -->
|
|
11
|
+
<path d="M 229.651 41.597 C 217.916 43.718, 202.443 49.144, 202.744 51.035 C 203.418 55.268, 329.689 356.584, 333.687 363.500 C 340.525 375.327, 345.293 381.483, 355.408 391.538 C 374.603 410.619, 398.878 423.014, 425.907 427.533 C 439.649 429.831, 463.594 429.132, 476 426.072 C 489.892 422.645, 497.188 419.815, 496.703 418.043 C 495.416 413.331, 371.058 116.094, 367.406 109 C 349.467 74.149, 313.008 47.875, 273.752 41.509 C 262.281 39.648, 240.195 39.693, 229.651 41.597" fill="currentColor" stroke="currentColor" stroke-width="8"/>
|
|
12
|
+
<!-- Right segment -->
|
|
13
|
+
<path d="M 463 40.593 C 451.670 42.545, 447.288 43.569, 439 46.203 C 433.775 47.864, 429.338 49.372, 429.140 49.555 C 428.942 49.737, 434.670 64.021, 441.868 81.297 C 455.574 114.190, 462.215 131.660, 468.447 151.208 C 475.360 172.892, 486.124 186.213, 503.834 194.997 C 530.956 208.450, 564.982 201.679, 583.654 179.112 C 604.399 154.041, 605.407 121.944, 586.291 95.155 C 567.827 69.280, 539.107 50.114, 508 42.907 C 500.680 41.212, 494.713 40.644, 482 40.434 C 472.925 40.284, 464.375 40.356, 463 40.593" fill="currentColor" stroke="currentColor" stroke-width="8"/>
|
|
14
|
+
</svg>
|
package/dist/install.d.ts
CHANGED
|
@@ -14,6 +14,8 @@ export interface InstallOptions {
|
|
|
14
14
|
prompt?: (question: string, options: PromptOptions) => Promise<string>;
|
|
15
15
|
/** Test seam for installer interaction. It is not used by the CLI. */
|
|
16
16
|
confirm?: (question: string) => Promise<boolean>;
|
|
17
|
+
/** Test seam for installer status messages. It is not used by the CLI. */
|
|
18
|
+
output?: (message: string) => void;
|
|
17
19
|
/** Test seam for project client discovery. It is not used by the CLI. */
|
|
18
20
|
workingDirectory?: string;
|
|
19
21
|
/** Test seam for atomic file replacement failures. It is not used by the CLI. */
|
package/dist/install.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"AAsCA,KAAK,aAAa,GAAG;IACnB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAMF,MAAM,WAAW,cAAc;IAC7B,gGAAgG;IAChG,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,gEAAgE;IAChE,mBAAmB,CAAC,EAAE,OAAO,KAAK,CAAC;IACnC,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACvE,sEAAsE;IACtE,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iFAAiF;IACjF,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7E;
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"AAsCA,KAAK,aAAa,GAAG;IACnB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAMF,MAAM,WAAW,cAAc;IAC7B,gGAAgG;IAChG,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,gEAAgE;IAChE,mBAAmB,CAAC,EAAE,OAAO,KAAK,CAAC;IACnC,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACvE,sEAAsE;IACtE,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,0EAA0E;IAC1E,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iFAAiF;IACjF,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7E;AA2WD,2EAA2E;AAC3E,wBAAsB,OAAO,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsCzE"}
|
package/dist/install.js
CHANGED
|
@@ -21,21 +21,31 @@ function configPath(config, homeDir) {
|
|
|
21
21
|
}
|
|
22
22
|
function supportedClients(homeDir, workingDirectory) {
|
|
23
23
|
const platform = process.platform === 'win32' ? 'win32' : process.platform === 'darwin' ? 'darwin' : 'linux';
|
|
24
|
-
const globalClients = WARM_MCP_CLIENTS.
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
.
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
24
|
+
const globalClients = WARM_MCP_CLIENTS.reduce((clients, client) => {
|
|
25
|
+
const resolved = {
|
|
26
|
+
alwaysInclude: 'alwaysInclude' in client && client.alwaysInclude,
|
|
27
|
+
configDialect: client.configDialect,
|
|
28
|
+
configPath: configPath(client.configPaths[platform], homeDir),
|
|
29
|
+
format: client.format,
|
|
30
|
+
name: client.name,
|
|
31
|
+
};
|
|
32
|
+
if (resolved.alwaysInclude || fs.existsSync(path.dirname(resolved.configPath))) {
|
|
33
|
+
clients.push(resolved);
|
|
34
|
+
}
|
|
35
|
+
return clients;
|
|
36
|
+
}, []);
|
|
37
|
+
const projectClients = WARM_MCP_PROJECT_CONFIGS.reduce((clients, relativePath) => {
|
|
38
|
+
const candidate = path.resolve(workingDirectory, relativePath);
|
|
39
|
+
if (fs.existsSync(candidate)) {
|
|
40
|
+
clients.push({
|
|
41
|
+
configPath: candidate,
|
|
42
|
+
configDialect: 'mcpServers',
|
|
43
|
+
format: 'json',
|
|
44
|
+
name: `Project (${path.relative(workingDirectory, candidate)})`,
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
return clients;
|
|
48
|
+
}, []);
|
|
39
49
|
const configPaths = new Set();
|
|
40
50
|
return [...globalClients, ...projectClients].filter((client) => {
|
|
41
51
|
if (configPaths.has(client.configPath))
|
|
@@ -239,8 +249,13 @@ function formatNameList(names) {
|
|
|
239
249
|
function normalizeApiKey(value) {
|
|
240
250
|
return value.replaceAll(/[\s"'`]/g, '');
|
|
241
251
|
}
|
|
252
|
+
const REINSTALL_PROMPT = 'Reinstall Warm MCP?';
|
|
242
253
|
const API_KEY_PASTE_PROMPT = 'Paste your Warm API key from Settings, then press Enter.\nWarm API key: ';
|
|
243
254
|
const INVALID_STORED_API_KEY_PASTE_PROMPT = 'The stored Warm API key is no longer valid. Paste a new key from Settings, then press Enter.\nWarm API key: ';
|
|
255
|
+
const API_KEY_VERIFIED_MESSAGE = 'Warm API key verified.';
|
|
256
|
+
function writeInstallMessage(options, message) {
|
|
257
|
+
(options.output ?? console.log)(message);
|
|
258
|
+
}
|
|
244
259
|
function readlinePrompt(question, options) {
|
|
245
260
|
return new Promise((resolve) => {
|
|
246
261
|
const readline = createInterface({
|
|
@@ -288,6 +303,7 @@ async function requestedApiKey(ask, options, question = API_KEY_PASTE_PROMPT) {
|
|
|
288
303
|
if (!apiKey)
|
|
289
304
|
throw new Error('A Warm API key is required to configure MCP clients.');
|
|
290
305
|
await validateApiKey(apiKey, options);
|
|
306
|
+
writeInstallMessage(options, API_KEY_VERIFIED_MESSAGE);
|
|
291
307
|
return apiKey;
|
|
292
308
|
}
|
|
293
309
|
async function resolveApiKey(target, ask, options) {
|
|
@@ -322,19 +338,26 @@ export async function install(options = {}) {
|
|
|
322
338
|
client,
|
|
323
339
|
existing: existingWarmConfig(client),
|
|
324
340
|
}));
|
|
325
|
-
const configured = discovered
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
const
|
|
332
|
-
|
|
333
|
-
|
|
341
|
+
const configured = discovered.reduce((clients, { client, existing }) => {
|
|
342
|
+
if (existing.exists) {
|
|
343
|
+
clients.push(client);
|
|
344
|
+
}
|
|
345
|
+
return clients;
|
|
346
|
+
}, []);
|
|
347
|
+
const replaceExisting = options.force || configured.length === 0 || (await confirm(REINSTALL_PROMPT));
|
|
348
|
+
const targets = discovered.reduce((clients, { client, existing }) => {
|
|
349
|
+
if (replaceExisting || !existing.exists) {
|
|
350
|
+
clients.push(client);
|
|
351
|
+
}
|
|
352
|
+
return clients;
|
|
353
|
+
}, []);
|
|
334
354
|
const target = getWarmApiKeyPath();
|
|
335
355
|
const { apiKey } = await resolveApiKey(target, ask, options);
|
|
336
356
|
const clientFiles = targets.map(prepareClientFile);
|
|
337
357
|
const files = [...clientFiles, prepareCredentialFile(target, apiKey)];
|
|
338
358
|
commitPreparedFiles(files, options.atomicReplaceFile || atomicReplaceFile);
|
|
359
|
+
if (targets.length > 0) {
|
|
360
|
+
writeInstallMessage(options, `Installed Warm MCP for ${formatNameList(targets.map((client) => client.name))}.`);
|
|
361
|
+
}
|
|
339
362
|
}
|
|
340
363
|
//# sourceMappingURL=install.js.map
|
package/dist/install.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"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"}
|
package/mcp.json
ADDED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@warmio/mcp",
|
|
3
|
-
"version": "11.0.
|
|
3
|
+
"version": "11.0.5",
|
|
4
4
|
"description": "Warm local stdio MCP server",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"engines": {
|
|
@@ -33,7 +33,11 @@
|
|
|
33
33
|
"warmio": "dist/cli.js"
|
|
34
34
|
},
|
|
35
35
|
"files": [
|
|
36
|
-
"dist"
|
|
36
|
+
"dist",
|
|
37
|
+
".cursor-plugin",
|
|
38
|
+
"assets",
|
|
39
|
+
"mcp.json",
|
|
40
|
+
"skills"
|
|
37
41
|
],
|
|
38
42
|
"scripts": {
|
|
39
43
|
"build": "tsc -p tsconfig.json",
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: warm
|
|
3
|
+
description: Use Warm MCP tools to read financial context, retrieve transactions, search operations, and invoke approved automations.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Warm MCP Skill
|
|
7
|
+
|
|
8
|
+
Use Warm MCP tools to read financial context, retrieve transactions, search operations, and invoke approved automations.
|
|
9
|
+
|
|
10
|
+
## Available Tools
|
|
11
|
+
|
|
12
|
+
### Read Tools
|
|
13
|
+
|
|
14
|
+
**`get_financial_context`** — Read-only compact FinancialContext JSON. Includes:
|
|
15
|
+
|
|
16
|
+
- `status.position` — current balances and net worth
|
|
17
|
+
- `status.accounts` — connected accounts
|
|
18
|
+
- Transaction index (total/months)
|
|
19
|
+
- Recurring transactions
|
|
20
|
+
- Budgets, goals, snapshots
|
|
21
|
+
- Liabilities, holdings, health metrics
|
|
22
|
+
|
|
23
|
+
Transaction items are not inline; use `get_transactions` to retrieve items.
|
|
24
|
+
|
|
25
|
+
**`get_transactions`** — Read-only transactions from the FinancialContext artifact.
|
|
26
|
+
|
|
27
|
+
- Pass `period: "latest"` for the fixed 10-day latest window
|
|
28
|
+
- Pass `period: "YYYY-MM"` for a specific month (e.g. `"2024-01"`)
|
|
29
|
+
- Months outside the covered range return an error
|
|
30
|
+
- The latest window is not caller-configurable
|
|
31
|
+
|
|
32
|
+
### Automation Tools
|
|
33
|
+
|
|
34
|
+
**`search_operations`** — Search the supported Warm operation catalog.
|
|
35
|
+
|
|
36
|
+
- Use this first to find the smallest matching operation
|
|
37
|
+
- Optional `query` parameter: words describing the action or data you need (max 200 chars)
|
|
38
|
+
- Returns matching operations with IDs and descriptions
|
|
39
|
+
|
|
40
|
+
**`describe_operation`** — Describe one operation, including its input schema and risk.
|
|
41
|
+
|
|
42
|
+
- Required: `operation_id` (string)
|
|
43
|
+
- Optional: `input` (exact intended input)
|
|
44
|
+
- For write operations, pass the exact intended input to receive an approval with:
|
|
45
|
+
- `approval_id` (UUID)
|
|
46
|
+
- Status, URL, and expiry timestamp
|
|
47
|
+
- Use the approval_id to invoke the operation
|
|
48
|
+
|
|
49
|
+
**`invoke_operation`** — Invoke one previously discovered Warm operation.
|
|
50
|
+
|
|
51
|
+
- Required: `operation_id` (string)
|
|
52
|
+
- Optional: `input` (operation parameters)
|
|
53
|
+
- Optional: `approval_id` (UUID, required for write operations)
|
|
54
|
+
- Every write operation requires the `approval_id` returned for the exact same input by `describe_operation`
|
|
55
|
+
- Returns operation result with status, body, headers, and operation_id
|
|
56
|
+
|
|
57
|
+
## Workflow
|
|
58
|
+
|
|
59
|
+
### Reading Financial Data
|
|
60
|
+
|
|
61
|
+
1. Call `get_financial_context` to get the overview
|
|
62
|
+
2. Call `get_transactions` with `period: "latest"` or `period: "YYYY-MM"` to retrieve transactions
|
|
63
|
+
|
|
64
|
+
### Invoking Automations
|
|
65
|
+
|
|
66
|
+
1. Call `search_operations` with optional query to find relevant operations
|
|
67
|
+
2. Call `describe_operation` with the `operation_id` and exact `input` to get approval (for writes)
|
|
68
|
+
3. **Wait for owner approval**: For write operations, surface the `approval.url` to the user and wait for them to visit it and approve in Warm Settings
|
|
69
|
+
4. Call `invoke_operation` with the `operation_id`, `input`, and `approval_id` (only after approval status changes from `pending`)
|
|
70
|
+
|
|
71
|
+
## Important Rules
|
|
72
|
+
|
|
73
|
+
- **Never move money without explicit approval**: Write operations require an `approval_id` from `describe_operation` AND owner approval at the returned `approval.url`
|
|
74
|
+
- **Wait for owner approval**: After calling `describe_operation` for a write, surface the `approval.url` and wait for owner confirmation before calling `invoke_operation`
|
|
75
|
+
- **Use exact input for approval**: The `input` passed to `describe_operation` must match exactly the `input` passed to `invoke_operation`
|
|
76
|
+
- **Check operation risk**: Review the risk level in `describe_operation` response before proceeding
|
|
77
|
+
- **Respect expiry**: Approval IDs have an expiry timestamp; check before invoking
|
|
78
|
+
- **Handle errors**: Operations return status codes; check for success (2xx) vs error (4xx/5xx). A 409 status typically means the approval is still `pending` and not yet approved by the owner
|
|
79
|
+
|
|
80
|
+
## Examples
|
|
81
|
+
|
|
82
|
+
### Get Financial Overview
|
|
83
|
+
|
|
84
|
+
```typescript
|
|
85
|
+
// Step 1: Get context
|
|
86
|
+
const context = await get_financial_context({});
|
|
87
|
+
console.log(`Net worth: $${context.status.position.net_worth}`);
|
|
88
|
+
|
|
89
|
+
// Step 2: Get recent transactions
|
|
90
|
+
const transactions = await get_transactions({ period: 'latest' });
|
|
91
|
+
console.log(`Recent transactions: ${transactions.items.length}`);
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Search and Invoke Operation
|
|
95
|
+
|
|
96
|
+
```typescript
|
|
97
|
+
// Step 1: Search for operations
|
|
98
|
+
const results = await search_operations({
|
|
99
|
+
query: 'create budget',
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
// Step 2: Describe the operation with exact input
|
|
103
|
+
const description = await describe_operation({
|
|
104
|
+
operation_id: 'budgets.create',
|
|
105
|
+
input: {
|
|
106
|
+
body: {
|
|
107
|
+
name: 'Groceries',
|
|
108
|
+
budget_type: 'category',
|
|
109
|
+
amount: 500,
|
|
110
|
+
period: 'monthly',
|
|
111
|
+
rollover_enabled: false,
|
|
112
|
+
},
|
|
113
|
+
},
|
|
114
|
+
});
|
|
115
|
+
|
|
116
|
+
// Step 3: Owner must approve at the returned URL
|
|
117
|
+
console.log(`Approval required: ${description.approval.url}`);
|
|
118
|
+
console.log(`Status: ${description.approval.status}`); // "pending"
|
|
119
|
+
// Owner visits URL, reviews, and approves
|
|
120
|
+
|
|
121
|
+
// Step 4: After owner approval, invoke with approval_id
|
|
122
|
+
const result = await invoke_operation({
|
|
123
|
+
operation_id: 'budgets.create',
|
|
124
|
+
input: {
|
|
125
|
+
body: {
|
|
126
|
+
name: 'Groceries',
|
|
127
|
+
budget_type: 'category',
|
|
128
|
+
amount: 500,
|
|
129
|
+
period: 'monthly',
|
|
130
|
+
rollover_enabled: false,
|
|
131
|
+
},
|
|
132
|
+
},
|
|
133
|
+
approval_id: description.approval.id,
|
|
134
|
+
});
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
## Error Handling
|
|
138
|
+
|
|
139
|
+
- API errors return structured JSON with `error` and `status` fields
|
|
140
|
+
- Transaction queries for invalid months return descriptive errors
|
|
141
|
+
- Write operations without valid approval_id fail with 403/401 errors
|
|
142
|
+
- Always check operation status codes before treating results as successful
|
|
143
|
+
|
|
144
|
+
## Authentication
|
|
145
|
+
|
|
146
|
+
The Warm MCP server uses the `WARM_API_KEY` environment variable for authentication. This is automatically configured by the Cursor plugin when you provide your API key.
|
|
147
|
+
|
|
148
|
+
Get your API key from: https://warm.io/settings/api-keys
|
|
149
|
+
|
|
150
|
+
## Documentation
|
|
151
|
+
|
|
152
|
+
Full API documentation: https://warm.io/developers
|