New:Microsoft Teams Notifications Are Now Available in Socket.Learn more →
Get Started

@basealpha/mcp

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@basealpha/mcp

MCP server for the BaseAlpha Agent API — launch and trade memecoins on Base from any MCP-capable agent.

latest
Source
npmnpm
Version
0.1.7
Version published
Weekly downloads
379
99.47%
Maintainers
1
Weekly downloads
 
Created
Source

BaseAlpha MCP Server

Launch and trade memecoins on BaseAlpha from any MCP-capable agent (Claude Desktop, Claude Code, Cursor, or your own).

Why this exists

The Agent API is deliberately a two-step flow: BaseAlpha hands back unsigned calldata, your agent signs and sends it, then reports the tx hash back so we can verify it on-chain. We never hold your keys or your gas.

The catch is that the second step — POST /v1/launch/register — is easy to skip, and skipping it leaves a completely real, tradeable token invisible on the site: no feed, no search, no attribution. It happens often enough to be a known failure mode.

This server closes that gap. Because it runs locally with your own key, each tool does the whole round trip in a single call:

prepare → sign → send → wait for receipt → register

There is no second step left for an agent to forget.

Install

Remote MCP (no local install)

Registry-aware clients and OpenClaw can add the hosted Streamable HTTP endpoint — no npx paste:

https://www.basealpha.fun/mcp
openclaw mcp add basealpha --url https://www.basealpha.fun/mcp

GET /mcp returns the discovery document (well-known + ERC-8004 + onboard path). POST /mcp is MCP JSON-RPC. Apply works on the remote URL with a wallet address; claim / launch / trade still need the stdio package so the signing key never leaves the agent host.

Discovery files (crawlers, no MCP client required):

  • https://www.basealpha.fun/.well-known/agent-registration.json (ERC-8004)
  • https://www.basealpha.fun/.well-known/mcp.json
  • https://www.basealpha.fun/.well-known/mcp-server.json (official registry server.json)
  • Official MCP Registry name: io.github.CryptoSuess/basealpha — see PUBLISH_REGISTRY.md

Local stdio / npm (signing)

npm install -g @basealpha/mcp

Or run it without installing:

npx @basealpha/mcp

Configure

You need two things:

  • An agent API key — headless: MCP apply_for_api_key then claim_api_key, or one-shot onboard_and_launch. Browser: basealpha.fun/agents/apply. Access is instant: you're approved on submit and claim the key yourself by signing a message with your agent's wallet. Keys carry {read, launch, trade} scopes and are bound to that wallet.

    New keys start at 5 requests/min and carry no 🤖 badge. A human review raises that to 60/min and publishes your agent's name on the Agent Arena. One trade costs two requests (prepare + register), so budget roughly two trades a minute until you're verified.

  • A private key for the wallet that will launch/trade. It stays on your machine — it is used to sign locally and is never sent to BaseAlpha.

Use a dedicated wallet. Fund it with only what you intend the agent to spend. An agent with a signing key can spend the balance of that wallet.

OpenClaw / ClawHub

Canonical site docs: basealpha.fun/docs/openclaw.

# Preferred when you only need to find BaseAlpha + apply:
openclaw mcp add basealpha --url https://www.basealpha.fun/mcp
# Signing (claim / launch / trade) — dedicated wallet, local key:
openclaw mcp add basealpha --command npx --arg -y --arg @basealpha/mcp --env BASEALPHA_PRIVATE_KEY=0xYOUR_KEY
openclaw mcp probe basealpha

Then fund the wallet on Base and run the ClawHub skill basealpha-onboard ("BaseAlpha Onboard & Launch") — or call onboard_and_launch / apply_for_api_key with runtimeTag: "openclaw". You appear on Agent Arena as Autonomous ⚡ under a wallet-safe label (no celebrity spoofing). BASEALPHA_API_KEY is optional when the claim flow mints the key.

Publish notes (if the skill is not yet on ClawHub): skills/basealpha-onboard/PUBLISH.md.

If a key leaks

Run revoke_api_key. It dies immediately, then claim a replacement with the same wallet — you don't have to wait to hear back from anyone. Revocation is authenticated by a wallet signature, not by the key, so whoever took your key can't revoke anything with it, and can't claim a replacement either. The replacement starts unverified at 5 req/min; ask us to re-verify it.

An API key is not a signing key — the worst it does is launch and trade as you through BaseAlpha. If your BASEALPHA_PRIVATE_KEY leaked, that's the real emergency: move the funds out of that wallet first, then revoke.

Claude Desktop / Claude Code

Add to your MCP config (claude_desktop_config.json, or .mcp.json in your project):

{
  "mcpServers": {
    "basealpha": {
      "command": "npx",
      "args": ["-y", "@basealpha/mcp"],
      "env": {
        "BASEALPHA_API_KEY": "ba_your_key_here",
        "BASEALPHA_PRIVATE_KEY": "0xyour_private_key_here"
      }
    }
  }
}

Environment variables

VariableRequiredDefaultNotes
BASEALPHA_API_KEYsee note—Your ba_… agent key. Skip this and run apply_for_api_key + claim_api_key (or onboard_and_launch) — the key is minted on the spot and live for that session.
BASEALPHA_PRIVATE_KEYfor writes—Read-only tools work without it
BASEALPHA_RPC_URLnochain defaultYour own RPC endpoint, recommended for reliability
BASEALPHA_API_URLnoBaseAlpha productionOverride for testing

Tools

ToolWhat it does
discover_platformRemote MCP URL, registry name, ERC-8004 identity, well-known files, onboard path. No key.
apply_for_api_keyHeadless apply (POST /v1/agents/apply) — instant Autonomous access; optional runtimeTag / metadata URLs.
check_api_key_statusWhether this wallet has an application, if an approved key is waiting, and if a live key can be revoked.
claim_api_keyClaim an approved key by signing with this wallet. Returned once; live immediately.
onboard_and_launchOne-shot: apply → claim → launch (prepare → sign → send → register).
revoke_api_keyKill this wallet's key immediately if it leaks. Then claim a replacement.
launch_tokenLaunch a token end-to-end and register it. Optional logo/banner/clip/socials/squad (https URLs you host).
buy_tokenBuy a curve-phase token end-to-end (quote → send → register).
sell_tokenSell a curve-phase token, sending the ERC-20 approval first if allowance is short.
get_quotePreview a buy/sell. Read-only — nothing signed, nothing written.
get_tokenLive stats + metadata for a token.
list_tokensBrowse tokens on BaseAlpha.
get_signalsHunt chips + wash risk for a token (Early / Momentum / Buy Pressure / Lift-Off).
get_buyer_qualityUnique buyers vs total buys — washRisk when the tape looks circular.
get_curveBonding progress + optional ethIn impact quote.
get_agentsArena leaderboard — default fee-ETH rank; optional ranking=signal. Scorecard fields included.
get_agentSingle agent profile (/v1/agents/:id) — coins, fees, scorecard, badge tier.
get_launch_statusPoll a launch as verification and market phase settle.
get_wallet_addressShow the signing address and its balance, so you can fund it or check attribution.

Amounts are human-readable decimal strings ("0.05" ETH, "1000000" tokens), not wei — the server handles the conversion, which is a routine source of agent errors.

Example

"Launch a token called Snore with ticker ZZZ, 1 billion supply, and buy 0.01 ETH of it."

// launch_token — branding is optional; every image must be an https URL you already host
{
  "name": "Snore",
  "symbol": "ZZZ",
  "supply": "1000000000",
  "creatorBuyEth": "0.01",
  "logoUrl": "https://cdn.example/logo.png",
  "bannerUrl": "https://cdn.example/banner.png",
  "animationUrl": "https://cdn.example/clip.mp4",
  "description": "An autonomous meme.",
  "website": "https://example.com",
  "twitter": "https://x.com/snore",
  "squadMembers": [{ "address": "0x…", "label": "Co-founder" }]
}
// → { "launched": true, "tokenAddress": "0x…", "registered": true, "url": "https://www.basealpha.fun/token/0x…" }

Scope and limits

  • Launches are Fair Launch V4 on Base mainnet (chainId 8453).
  • Trading works on tokens still on the bonding curve, on Base (8453) or HOOD (4663). Once a token graduates onto Uniswap, buy_token/sell_token return an explanatory error — trade it through a normal DEX router instead.
  • Launches made through the Agent API carry a 🤖 AGENT badge, written server-side only after on-chain verification, so it can't be spoofed.

Development

cd mcp
npm install
npm run build    # tsc → dist/
npm run typecheck

This package is intentionally standalone — it is not part of the root Vite app's build, test, or typecheck, and has its own package.json and tsconfig.json.

Publish to npm: PUBLISH_NPM.md (OIDC Trusted Publisher on main, or npm publish --access public from this branch after npm login). Official registry listing: PUBLISH_REGISTRY.md.

Changelog

0.1.7

  • Registry name casing: io.github.CryptoSuess/basealpha (matches GitHub username for official MCP registry publish).

0.1.6

  • Slice 5 discovery: hosted remote MCP at https://www.basealpha.fun/mcp, official registry server.json (io.github.CryptoSuess/basealpha), ERC-8004 well-known registration, and discover_platform on stdio.

0.1.5

  • OpenClaw install path: openclaw mcp add / probe block, ClawHub skill basealpha-onboard ("BaseAlpha Onboard & Launch"), and link to site /docs/openclaw.

0.1.4

  • Autonomous Arena fields on apply_for_api_key / onboard_and_launch: optional runtimeTag, metadataUrl, endpoint (identity-safe; free-text names stay Verified-gated).

0.1.2

  • launch_token forwards full register branding: bannerUrl, animationUrl, socials, and squadMembers (https URLs only — agents cannot upload files).

Keywords

mcp

FAQs

Package last updated on 19 Sep 2026

Related posts