kinetic-mcp 1.0.1 → 1.2.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/README.md CHANGED
@@ -1,10 +1,28 @@
1
- # Solana Trading MCP Server
1
+ # Kinetic MCP — Solana Trading for Claude Desktop
2
2
 
3
- An MCP (Model Context Protocol) server that connects to the Kinetic Solana trading platform, designed for Claude Desktop. It runs locally on your machine and lets you check balances and execute swaps through natural language conversation.
3
+ An MCP server that lets you check balances and swap tokens on Solana through natural language in Claude Desktop. Runs locally on your machine, powered by the [Kinetic](https://kinetic.xyz) trading platform.
4
+
5
+ **Prerequisites:** [Node.js 20+](https://nodejs.org)
4
6
 
5
7
  ## Quick Start
6
8
 
7
- Add this to your Claude Desktop config file (`~/Library/Application Support/Claude/claude_desktop_config.json` on macOS, `%APPDATA%\Claude\claude_desktop_config.json` on Windows):
9
+ ### Option A: Setup Wizard (Recommended)
10
+
11
+ The setup wizard walks you through keypair import and Claude Desktop configuration:
12
+
13
+ ```bash
14
+ npx kinetic-mcp setup
15
+ ```
16
+
17
+ ### Option B: Manual Configuration
18
+
19
+ Add this to your Claude Desktop config file and restart Claude Desktop:
20
+
21
+ | Platform | Config file path |
22
+ | -------- | ----------------------------------------------------------------- |
23
+ | macOS | `~/Library/Application Support/Claude/claude_desktop_config.json` |
24
+ | Windows | `%APPDATA%\Claude\claude_desktop_config.json` |
25
+ | Linux | `~/.config/Claude/claude_desktop_config.json` |
8
26
 
9
27
  ```json
10
28
  {
@@ -20,10 +38,46 @@ Add this to your Claude Desktop config file (`~/Library/Application Support/Clau
20
38
  }
21
39
  ```
22
40
 
23
- Restart Claude Desktop (fully quit and reopen). See the [getting started guide](docs/getting-started.md) for keypair setup and Phantom export instructions.
41
+ If you have a Kinetic API key, add `"API_KEY": "your_key"` to the `env` block.
42
+
43
+ Restart Claude Desktop (fully quit and reopen — not just close the window). Look for the hammer icon in the chat input.
44
+
45
+ ## Creating a Keypair
46
+
47
+ You need a Solana keypair file — a JSON array of 64 integers in [Solana CLI format](https://docs.solanalabs.com/cli/wallets/file-system).
48
+
49
+ ### Exporting from Phantom
50
+
51
+ Open Phantom > Settings > Manage Accounts > [your account] > Show Private Key. Copy the base58 string.
52
+
53
+ ### Converting to Keypair File
54
+
55
+ Run from any directory:
56
+
57
+ ```bash
58
+ npx -y -p bs58 node --input-type=module -e "
59
+ import bs58 from 'bs58';
60
+ import { writeFileSync, mkdirSync } from 'fs';
61
+ import { join } from 'path';
62
+ import { homedir } from 'os';
63
+ const dir = join(homedir(), '.config', 'solana');
64
+ mkdirSync(dir, { recursive: true });
65
+ const out = join(dir, 'trading-keypair.json');
66
+ writeFileSync(out, JSON.stringify(Array.from(bs58.decode('YOUR_PRIVATE_KEY_HERE'))) + '\n');
67
+ console.log('Saved to', out);
68
+ "
69
+ ```
70
+
71
+ On macOS/Linux, lock down permissions: `chmod 600 ~/.config/solana/trading-keypair.json`
72
+
73
+ Update `SOLANA_KEYPAIR_PATH` in your Claude Desktop config to point to the keypair file, then restart Claude Desktop.
74
+
75
+ **Never share your private key, paste it into websites, or commit it to git.**
24
76
 
25
77
  ## Usage
26
78
 
79
+ Try these prompts in Claude Desktop:
80
+
27
81
  - "What's my SOL balance?"
28
82
  - "Show me all my token holdings"
29
83
  - "Swap 0.01 SOL for USDC" — Claude shows a quote preview and asks for confirmation
@@ -31,13 +85,6 @@ Restart Claude Desktop (fully quit and reopen). See the [getting started guide](
31
85
 
32
86
  Claude will ask for permission the first time it uses a tool. Click "Allow for This Chat" or "Allow Always".
33
87
 
34
- ## Safety Guardrails
35
-
36
- - **Two-step confirmation** — swaps always show a quote preview first; you must confirm before execution
37
- - **Max trade size** — `MAX_TRADE_SOL` limits swap size in SOL-equivalent (default: 10 SOL)
38
- - **Slippage cap** — maximum 10% (1000 bps) enforced by input validation
39
- - **No private key exposure** — keypair is loaded from a local file only, never accepted as tool input
40
-
41
88
  ## Available Tools
42
89
 
43
90
  | Tool | Description | Inputs |
@@ -45,53 +92,39 @@ Claude will ask for permission the first time it uses a tool. Click "Allow for T
45
92
  | `get_wallet_balance` | Get SOL balance and all token holdings | None |
46
93
  | `swap_tokens` | Swap one token for another | `from_token`, `to_token`, `amount`, `slippage_bps` (optional), `confirm` |
47
94
 
48
- ## Architecture
95
+ ## Safety Guardrails
49
96
 
50
- - **Swap execution**: Kinetic API (quote build transaction send transaction)
51
- - **On-chain data**: Direct Solana RPC (balances, token accounts, mint info)
52
- - **Token resolution**: Well-known token table + on-chain mint lookup
97
+ - **Two-step confirmation** swaps always show a quote preview first; you must confirm before execution
98
+ - **Max trade size** `MAX_TRADE_SOL` limits swap size in SOL-equivalent (default: 10 SOL)
99
+ - **Slippage cap** maximum 10% (1000 bps) enforced by input validation
100
+ - **No private key exposure** — keypair is loaded from a local file only, never accepted as tool input
53
101
 
54
102
  ## Troubleshooting
55
103
 
56
- | Problem | Solution |
57
- | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
58
- | No hammer icon appears | Check that the path in `claude_desktop_config.json` is correct and absolute. Run `npm run build`. Fully restart Claude Desktop. |
59
- | "Unable to connect to MCP server" | Check Claude Desktop logs for errors. Verify `npm run build` succeeds. Make sure `build/index.js` exists. |
60
- | Tools appear but return errors | Check your env var values. Verify `SOLANA_KEYPAIR_PATH` points to a valid keypair file. Test network access. |
61
- | "Cannot find module" errors | Run `npm install && npm run build`. Make sure you're using Node.js 20+. |
62
- | Import errors about ES modules | Verify `"type": "module"` is in package.json. Rebuild with `npm run build`. |
63
- | Balance shows mint addresses | Token not in well-known table. Use mint address for swaps with unknown tokens. |
104
+ | Problem | Solution |
105
+ | --------------------------------- | ------------------------------------------------------------------------------------------------ |
106
+ | No hammer icon appears | Check that your config JSON is valid and the path is absolute. Fully restart Claude Desktop. |
107
+ | "Unable to connect to MCP server" | Check Claude Desktop logs for errors. Verify Node.js 20+ is installed. |
108
+ | Tools appear but return errors | Verify `SOLANA_KEYPAIR_PATH` points to a valid 64-byte keypair file. Test network access. |
109
+ | "Cannot find module" errors | Run `npm install && npm run build` (if running from source). Make sure you're using Node.js 20+. |
110
+ | Balance shows mint addresses | Token not in well-known table. Use the mint address directly for swaps. |
64
111
 
65
112
  **Where to find Claude Desktop logs:**
66
113
 
67
114
  - **macOS**: `~/Library/Logs/Claude/`
68
115
  - **Windows**: `%APPDATA%\Claude\logs\`
116
+ - **Linux**: `~/.config/Claude/logs/`
69
117
 
70
- ## Development
118
+ ## Configuration
71
119
 
72
- ```bash
73
- npm run dev # Watch mode (recompile on change)
74
- npm run test # Run tests
75
- npm run lint # Run ESLint
76
- npm run format:check # Check Prettier formatting
77
- npm run typecheck # Type-check without emitting
78
- npm run clean # Remove build output
79
- ```
120
+ The only required environment variable is `SOLANA_KEYPAIR_PATH`. All others have sensible defaults.
121
+
122
+ See [docs/development.md](docs/development.md#environment-variables) for the full configuration reference.
123
+
124
+ ## Contributing
125
+
126
+ See [CONTRIBUTING.md](CONTRIBUTING.md) for development setup and guidelines.
127
+
128
+ ## License
80
129
 
81
- ## Environment Variables
82
-
83
- | Variable | Required | Default | Description |
84
- | -------------------------- | -------- | ------------------------------------- | ------------------------------------ |
85
- | `SOLANA_KEYPAIR_PATH` | Yes | — | Path to Solana keypair JSON file |
86
- | `API_BASE_URL` | No | `https://api.kinetic.xyz` | Kinetic API base URL |
87
- | `AUTH_BASE_URL` | No | `https://auth.kinetic.xyz` | Kinetic auth base URL |
88
- | `API_KEY` | No | — | Kinetic API key (higher rate limits) |
89
- | `SOLANA_RPC_URL` | No | `https://api.mainnet-beta.solana.com` | Solana RPC endpoint |
90
- | `MAX_TRADE_SOL` | No | `10` | Max swap size in SOL-equivalent |
91
- | `PRIORITY_FEE_LAMPORTS` | No | `400000` | Priority fee for transactions |
92
- | `DYNAMIC_SLIPPAGE_MIN_BPS` | No | `1` | Minimum dynamic slippage (bps) |
93
- | `DYNAMIC_SLIPPAGE_MAX_BPS` | No | `300` | Maximum dynamic slippage (bps) |
94
- | `JITO_ENABLED` | No | `false` | Enable Jito MEV protection |
95
- | `REQUEST_TIMEOUT_MS` | No | `30000` | API request timeout (ms) |
96
- | `SEND_TX_TIMEOUT_MS` | No | `120000` | sendTransaction stream timeout (ms) |
97
- | `LOG_LEVEL` | No | `info` | Log level (debug, info, warn, error) |
130
+ MIT
package/build/index.js CHANGED
@@ -1,5 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from "node:module";
3
+ import { execSync } from "node:child_process";
4
+ import { resolve, dirname } from "node:path";
5
+ import { fileURLToPath } from "node:url";
3
6
  import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
4
7
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
5
8
  import { z } from "zod";
@@ -10,6 +13,18 @@ import { initApiClient } from "./utils/api-client.js";
10
13
  import { initTokenResolver } from "./utils/token-resolver.js";
11
14
  import { initSwap, swapTokens } from "./tools/swap.js";
12
15
  import { getWalletBalance } from "./tools/balance.js";
16
+ // Route `kinetic-mcp setup` to the interactive setup wizard
17
+ if (process.argv[2] === "setup") {
18
+ const __dirname = dirname(fileURLToPath(import.meta.url));
19
+ const setupScript = resolve(__dirname, "..", "scripts", "setup.mjs");
20
+ try {
21
+ execSync(`"${process.execPath}" "${setupScript}"`, { stdio: "inherit" });
22
+ }
23
+ catch {
24
+ process.exit(1);
25
+ }
26
+ process.exit(0);
27
+ }
13
28
  const require = createRequire(import.meta.url);
14
29
  const { version } = require("../package.json");
15
30
  async function main() {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kinetic-mcp",
3
- "version": "1.0.1",
3
+ "version": "1.2.0",
4
4
  "description": "MCP server for Solana trading via Kinetic API",
5
5
  "type": "module",
6
6
  "main": "build/index.js",