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

coinopai-mcp

v1.2.5

Published

MCP server for CoinOpAI — agent automation prompts and crypto signals via x402 micropayments on Base

Readme

coinopai-mcp

npm version npm downloads License: MIT Node.js payments network

Paid decision infrastructure for autonomous agents.

Source: https://github.com/forgemeshlabs/coinopai-mcp

An MCP server that charges AI agents per verified intelligence request — using x402 micropayments on Base. Every decision gets a decision_id. Every decision_id can be audited against real prices.

This repo is the MCP client layer; paid intelligence is served from hosted CoinOpAI x402 endpoints.

Wrong predictions are shown too. That's the point.


Architecture

┌──────────────────────────────────┐
│   Claude Code / AI Agent         │
└──────────────┬───────────────────┘
               │  MCP (stdio)
               ▼
┌──────────────────────────────────┐
│        coinopai-mcp              │
│    npx coinopai-mcp              │
└──────────────┬───────────────────┘
               │  HTTP + 402 payment header
               ▼
┌──────────────────────────────────┐
│      x402.coinopai.com           │
│   Kronos intelligence API        │
└──────────────┬───────────────────┘
               │
               ▼
┌──────────────────────────────────┐
│   Coinbase x402 Facilitator      │
│   USDC settled on Base mainnet   │
└──────────────────────────────────┘

The agent calls a tool → the MCP server receives an HTTP 402 → automatically signs a USDC micropayment → retries with the payment header → data returned. Configure once, pay automatically from the configured low-balance wallet.


The Verified Loop ($0.27/cycle)

check_trade_preflight  ──→  get_crypto_decision  ──→  [wait 1h]  ──→  audit_trade_decision
       $0.05                      $0.15                                      $0.07

   Is now allowed?           CONSIDER_LONG/SHORT              GOOD_DECISION
   Cooldown check?           NO_ACTION                        BAD_DIRECTION
   Regime ok?                + decision_id                    NOISE
   Signal strength?          + next_step hint                 + pnl_pct

Every decision is self-verifying. The decision_id links the prediction to the outcome. The audit fetches real market prices and produces a verdict. Nothing is hidden.


Real Output

Step 1 — Preflight (BTC, $0.05)

{
  "allowed": true,
  "symbol": "BTC/USD",
  "market_state": "NORMAL",
  "signal_strength": 0.72,
  "regime": "TREND",
  "cooldown_remaining_seconds": 0
}

Step 2 — Decision (BTC, $0.15)

{
  "symbol": "BTC/USD",
  "suggested_action": "CONSIDER_LONG",
  "confidence": 0.72,
  "regime": "TREND",
  "decision_id": "a3f8c1d2-9472-4dfe-b459-5df17b282614",
  "next_step": "Call audit_trade_decision with this decision_id after 1h using window=1h"
}

Step 3 — Audit (1h later, $0.07)

{
  "decision_id": "a3f8c1d2-9472-4dfe-b459-5df17b282614",
  "direction_held": true,
  "pnl_pct": 0.82,
  "verdict": "GOOD_DECISION"
}

Live results from real runs:

| Symbol | Decision | Confidence | 1h Outcome | Verdict | |--------|----------|-----------|------------|---------| | XRP | SHORT | 1.0 | -0.54% | ✅ GOOD_DECISION | | ETH | LONG | 0.68 | -0.32% | ❌ BAD_DIRECTION | | BTC | LONG | 0.40 | +0.01% | — NOISE |

It gets some right. It gets some wrong. The loop makes both visible.


Tools

| Tool | What it does | Cost | Affiliate | |------|-------------|------|-----------| | check_trade_preflight | Gate check: market allowed, cooldown, regime, signal strength | $0.05 | ✓ | | get_crypto_decision | CONSIDER_LONG/SHORT/NO_ACTION + decision_id | $0.15 | ✓ | | audit_trade_decision | Verify against real prices: verdict + PnL% | $0.07 | ✓ | | get_crypto_signals | Live directional signals for BTC, ETH, SOL, XRP, ADA | $0.05 | ✓ | | get_crypto_signal_history | Up to 168h of signal history | $0.05 | ✓ | | get_crypto_risk | Market risk state + regime detection | $0.02 | — | | search_agent_automations | Search 819 agent automation prompts | $0.01 | — | | get_agent_automation | Full prompt + workflow steps by slug | $0.01 | — | | list_automation_categories | All 35 automation categories with counts | $0.005 | — |

No API keys. No subscriptions. Pay per call in USDC.


Install

Claude Code

Add to ~/.claude/settings.json:

{
  "mcpServers": {
    "coinopai": {
      "command": "npx",
      "args": ["-y", "coinopai-mcp"],
      "env": {
        "WALLET_PRIVATE_KEY": "0x<your-base-wallet-private-key>"
      }
    }
  }
}

Restart Claude Code. The 9 tools appear automatically.

Claude Desktop

Add to your Claude Desktop config (claude_desktop_config.json):

{
  "mcpServers": {
    "coinopai": {
      "command": "npx",
      "args": ["-y", "coinopai-mcp"],
      "env": {
        "WALLET_PRIVATE_KEY": "0x<your-base-wallet-private-key>"
      }
    }
  }
}

Smithery

Not currently listed on Smithery. Use the npx install flow shown above until a verified public listing is live.

Registry status

Prepared MCP Registry identity: io.github.forgemeshlabs/coinopai-mcp. Refresh the public directory submission after publishing this package so old clawdbotworker entries stop being canonical.


Get a Wallet

  1. Install Coinbase Wallet or any EVM wallet
  2. Switch to Base network
  3. Buy or bridge USDC ($1 = ~3 full verified cycles)
  4. Use a dedicated low-balance Base wallet for agent payments and provide its private key locally via environment variable.

Your wallet key stays local. It never leaves your machine. Each payment is a signed micropayment — not a blanket approval.


Agent Code Example

// Step 1 — gate check ($0.05)
const pre = await mcp.call("check_trade_preflight", { symbol: "BTC" })
if (!pre.allowed) return  // cooldown, bad regime, or stale data

// Step 2 — get decision ($0.15)
const dec = await mcp.call("get_crypto_decision", { symbol: "BTC" })
if (dec.suggested_action === "NO_ACTION") return

// Store the decision_id — you'll need it to close the loop
const { decision_id, suggested_action, confidence } = dec

// Step 3 — act on the decision here...

// Step 4 — audit 1 hour later ($0.07)
const audit = await mcp.call("audit_trade_decision", {
  decision_id,
  window: "1h"
})
// verdict: "GOOD_DECISION" | "BAD_DIRECTION" | "NOISE"
console.log(audit.verdict, audit.pnl_pct + "%")

Every decision response includes a next_step field — your agent always knows when and how to audit.

Symbol unavailable? If a symbol isn't in the current Kronos cycle:

{
  "status": "UNAVAILABLE_THIS_CYCLE",
  "available_symbols": ["BTC/USD", "ETH/USD", "XRP/USD"],
  "retry_hint_seconds": 900
}

Route to an available symbol or wait 15 minutes for the next cycle.


Payment Stack

| Component | Value | |-----------|-------| | Protocol | x402 | | Scheme | ExactEvmScheme (EIP-3009 transferWithAuthorization) | | Network | Base mainnet (eip155:8453) | | Token | USDC (0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913) | | Facilitator | Coinbase |


Affiliate Attribution (via Pyrimid)

High-value tools accept an optional affiliate_id parameter. When provided, payment routes through the Pyrimid affiliate network — the affiliate earns a commission split from within the listed price. No extra cost to the caller.

How the split works

Direct call (no affiliate_id):
  Caller pays $0.15  →  CoinOpAI receives $0.15

Affiliate call (affiliate_id present):
  Caller pays $0.15  →  CoinOpAI: 79.2% ($0.1188)
                      →  Affiliate: 19.8% ($0.0297)
                      →  Protocol:   1.0% ($0.0015)

The buyer always pays the listed price. The split comes out of the vendor's portion.

Usage

Pass affiliate_id in any supporting tool call:

// As an agent or user
await mcp.call("get_crypto_decision", {
  symbol: "BTC",
  affiliate_id: "af_youraffiliateID"
})

Building a wrapper? Set it once via env

If you're building an agent framework, MCP wrapper, or automation that embeds CoinOpAI tools, set your affiliate ID as an environment variable. Every call through your wrapper earns you a commission automatically.

{
  "mcpServers": {
    "coinopai": {
      "command": "npx",
      "args": ["-y", "coinopai-mcp"],
      "env": {
        "WALLET_PRIVATE_KEY": "0x<agent-wallet-key>",
        "PYRIMID_AFFILIATE_ID": "af_<your-affiliate-id>"
      }
    }
  }
}

The tool-level affiliate_id argument takes precedence over the env var. Callers can always override.

Without an affiliate_id

Normal x402 flow — CoinOpAI receives 100% of the listed price. Nothing changes for the caller.


Disclaimer

Decision outputs are probabilistic signals for experimental automated workflows only. Not financial advice. Early system with a small sample size. Results will vary. Never risk capital you can't afford to lose.


Part of the ForgeMesh Ecosystem

Infrastructure for monetized agent ecosystems.

| Package | What | Install | |---------|------|---------| | affiliate-router-mcp | Vendor-neutral monetization routing | npm i affiliate-router-mcp | | coinopai-mcp | Paid crypto intelligence (this package) | npm i coinopai-mcp | | forgemesh-imagegen | Paid image generation MCP | npm i forgemesh-imagegen |

Each package works standalone. No shared dependency required.


License

MIT — see LICENSE