npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

kinetic-mcp

v1.3.3

Published

MCP server for Solana trading in Claude Desktop — check balances, swap tokens, send SOL, and get prices via natural language

Downloads

1,091

Readme

Kinetic MCP — Solana Trading for Claude Desktop

npm npm downloads license CI

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 trading platform.

Prerequisites: Node.js 20+

Quick Start

Option A: Setup Wizard (Recommended)

The setup wizard walks you through keypair import and Claude Desktop configuration:

npx kinetic-mcp setup

Option B: Manual Configuration

Add this to your Claude Desktop config file and restart Claude Desktop:

| Platform | Config file path | | -------- | ----------------------------------------------------------------- | | macOS | ~/Library/Application Support/Claude/claude_desktop_config.json | | Windows | %APPDATA%\Claude\claude_desktop_config.json | | Linux | ~/.config/Claude/claude_desktop_config.json |

{
  "mcpServers": {
    "solana-trading": {
      "command": "npx",
      "args": ["-y", "kinetic-mcp"],
      "env": {
        "SOLANA_KEYPAIR_PATH": "/absolute/path/to/your/keypair.json"
      }
    }
  }
}

If you have a Kinetic API key, add "API_KEY": "your_key" to the env block.

Restart Claude Desktop (fully quit and reopen — not just close the window). Look for the hammer icon in the chat input.

Creating a Keypair

You need a Solana keypair file — a JSON array of 64 integers in Solana CLI format.

Exporting from Phantom

Open Phantom > Settings > Manage Accounts > [Your Account] > Show Private Key. Copy the base58 string.

Converting to Keypair File

Run from any directory:

npx -y -p bs58 node --input-type=module -e "
  import bs58 from 'bs58';
  import { writeFileSync, mkdirSync } from 'fs';
  import { join } from 'path';
  import { homedir } from 'os';
  const dir = join(homedir(), '.config', 'solana');
  mkdirSync(dir, { recursive: true });
  const out = join(dir, 'trading-keypair.json');
  writeFileSync(out, JSON.stringify(Array.from(bs58.decode('YOUR_PRIVATE_KEY_HERE'))) + '\n');
  console.log('Saved to', out);
"

On macOS/Linux, lock down permissions: chmod 600 ~/.config/solana/trading-keypair.json

Update SOLANA_KEYPAIR_PATH in your Claude Desktop config to point to the keypair file, then restart Claude Desktop.

Never share your private key, paste it into websites, or commit it to git.

Usage

Try these prompts in Claude Desktop:

  • "What's my SOL balance?"
  • "Show me all my token holdings"
  • "Swap 0.01 SOL for USDC" — Claude shows a quote preview and asks for confirmation
  • "Swap 100 USDC for SOL with 1% slippage" — specify custom slippage
  • "Send 0.1 SOL to Abc123..." — previews transfer details, then confirms
  • "What's the price of BONK?" — get current token prices in USDC
  • "Show my recent transactions" — view last 10 transactions

Claude will ask for permission the first time it uses a tool. Click "Allow for This Chat" or "Allow Always".

Available Tools

| Tool | Description | Inputs | | ------------------------- | -------------------------------------- | ------------------------------------------------------------------------ | | get_wallet_balance | Get SOL balance and all token holdings | None | | swap_tokens | Swap one token for another | from_token, to_token, amount, slippage_bps (optional), confirm | | send_sol | Send SOL to another wallet | recipient, amount, confirm | | get_token_price | Get current token prices in USDC | tokens (array of symbols or mints) | | get_transaction_history | Get 10 most recent wallet transactions | None |

Safety Guardrails

  • Two-step confirmation — swaps and transfers always show a preview first; you must confirm before execution
  • Max trade sizeMAX_TRADE_SOL limits swap size in SOL-equivalent (default: 10 SOL)
  • Slippage cap — maximum 10% (1000 bps) enforced by input validation
  • No private key exposure — keypair is loaded from a local file only, never accepted as tool input

Troubleshooting

| Problem | Solution | | --------------------------------- | ------------------------------------------------------------------------------------------------ | | No hammer icon appears | Check that your config JSON is valid and the path is absolute. Fully restart Claude Desktop. | | "Unable to connect to MCP server" | Check Claude Desktop logs for errors. Verify Node.js 20+ is installed. | | Tools appear but return errors | Verify SOLANA_KEYPAIR_PATH points to a valid 64-byte keypair file. Test network access. | | "Cannot find module" errors | Run npm install && npm run build (if running from source). Make sure you're using Node.js 20+. | | Balance shows mint addresses | Token not in well-known table. Use the mint address directly for swaps. |

Where to find Claude Desktop logs:

  • macOS: ~/Library/Logs/Claude/
  • Windows: %APPDATA%\Claude\logs\
  • Linux: ~/.config/Claude/logs/

Configuration

The only required environment variable is SOLANA_KEYPAIR_PATH. All others have sensible defaults.

See docs/development.md for the full configuration reference.

Contributing

See CONTRIBUTING.md for development setup and guidelines.

License

MIT