Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

PumpPill — token safety and measured outcomes

REMOTE · API.PUMPPILL.ORG · SCANNED SEP 25

Token safety, deployer history, whale balances and measured outcomes on Robinhood Chain and Solana

Available components

70 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security74
Transport & Reachability100
Schema Quality & AI Usability79
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 2868 tokens (~168/item across 17 items; 16 tools + 1 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management3
  • Stability observed for 1 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage67
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 0% of tool parameters carry a description.Fail
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 16 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 18 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Install

How do I install the PumpPill — token safety and measured outcomes MCP server?

PumpPill — token safety and measured outcomes is a hosted endpoint at https://api.pumppill.org/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · api.pumppill.org

# add to Claude Code
claude mcp add --transport http org-pumppill-token-safety 'https://api.pumppill.org/mcp'
// .cursor/mcp.json
{
  "mcpServers": {
    "org-pumppill-token-safety": {
      "url": "https://api.pumppill.org/mcp"
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "org-pumppill-token-safety": {
      "type": "http",
      "url": "https://api.pumppill.org/mcp"
    }
  }
}
# ~/.codex/config.toml
[mcp_servers.org-pumppill-token-safety]
url = "https://api.pumppill.org/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "org-pumppill-token-safety": {
      "type": "remote",
      "url": "https://api.pumppill.org/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add org-pumppill-token-safety --url 'https://api.pumppill.org/mcp' --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  org-pumppill-token-safety:
    url: "https://api.pumppill.org/mcp"
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "org-pumppill-token-safety": {
      "Transport": "http",
      "Url": "https://api.pumppill.org/mcp"
    }
  }
}
# add to Vellum
assistant mcp add org-pumppill-token-safety -t streamable-http -u 'https://api.pumppill.org/mcp'
// mcp.json
{
  "mcpServers": {
    "org-pumppill-token-safety": {
      "type": "http",
      "url": "https://api.pumppill.org/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 25 Sept 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 24 Sept 26 69

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 25 Sept 2026 · Probed https://api.pumppill.org/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=api.pumppill.org CN=YE2,O=Let's Encrypt,C=US 19 Aug 2026 17 Nov 2026 ECDSA 256 ECDSA-SHA384 63d80e76bb2a675025b1ae5b40b06ed9977
SANs: api.pumppill.org
CN=YE2,O=Let's Encrypt,C=US (CA) CN=Root YE,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 ECDSA 384 ECDSA-SHA384 4df3b15dd6c0784c507cd37b58e6f115
CN=Root YE,O=ISRG,C=US (CA) CN=ISRG Root X2,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 ECDSA-SHA384 872165fc34b6e5fba8add5b3705fb53a
CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 SHA256-RSA 6c8f1dc727c7117f7baf853ac980f9cd

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of api.pumppill.org. — Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
org. present 26974 8 Verified
pumppill.org. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://api.pumppill.org/mcp Verified 200
http (plaintext) http://api.pumppill.org/mcp HTTPS enforced 301 https://api.pumppill.org/mcp
MCP tools · 16 exposed · ~2,515 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
membership_status ~72

Whether the claim this client is sending is an active PumpPill membership, which tier it is, and when it renews. Answers 'am I signed in?' without touching any member data. An unauthenticated call is not an error - it answers signed_in=false. Nothing about the claim itself is ever returned.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

my_watched_wallets ~207

The Robinhood Chain wallets this member follows: what each can move (capital), what it has done (record), what it has traded in the window (activity), and the events that fired. Requires a PumpPill membership. The client sends it as a header: Authorization: Bearer <your claim>, where the claim is the sign-in token on pumppill.org/premium. Two readings that are not interchangeable: CAPITAL is size - a balance read on chain, which says a wallet CAN move a pool, never that it is right. RECORD is history, given as counts (judged, wins) beside the chain's own base rate, because a percentage without its denominator is the thing this server does not ship. A wallet with no activity is one we have not seen move, not one that has gone quiet. A sell's size comes from the router's minimum-out, so it is a floor and never a profit figure.

NameTypeReqDescription
daysinteger––

No output schema declared.

No examples provided.

outcomes_measured ~163

Forward-measured outcomes across both chains: the share of logged tokens that doubled, reached 5x, reached 10x, or never moved. The honest part, and the reason this is worth citing: entry is the market cap at the MOMENT OF LOGGING, never backfilled, and LOSERS ARE IN THE DENOMINATOR. It is not a track record of picks and not a win rate for anyone who bought - it is what happened to a population of tokens after they were seen, with the method stated beside it. Recomputed hourly. One call an hour lands during the recompute and may take up to 45 seconds or return error='recomputing'; that same call warms the cache, so a retry a minute later is instant.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

premium_calls_recent ~193

The premium call table - the Solana tokens PumpPill has logged for members, newest first, with the market cap at which each was logged and how far it has moved since. Requires a PumpPill membership. The client sends it as a header: Authorization: Bearer <your claim>, where the claim is the sign-in token on pumppill.org/premium. Each row is a token that cleared an attention filter: a promoter with real reach posted the contract, or a narrative it matches is moving. That is a filter on attention, NOT a prediction and NOT a recommendation to buy. 'Move since logged' is measured from the market cap at the moment of logging, which is not a price anyone was offered. Narrative and trend columns are deliberately not returned: they are inconsistently populated and must not be quoted as a signal.

NameTypeReqDescription
hoursinteger––
limitinteger––

No output schema declared.

No examples provided.

rh_chain_stats ~138

How the chain measures, from PumpPill's own index, recomputed hourly with the method stated in the payload: tokens seen, how many carry a forward-measured outcome, how many doubled or reached 5x and 10x, how many crossed $100,000, and how many are quoted against a tokenized stock. Free to quote with attribution, and the payload carries its own computed_at - quote that, not the time you asked. Outcome counts are counts, not a success rate: entry is the market cap at the moment of logging, and the index covers what PumpPill has seen rather than everything that exists.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

rh_deployer_record ~182

What one wallet has launched on Robinhood Chain, and how those launches went: the tokens, their liveness and liquidity, and which crossed $100,000. This is the question a launchpad buyer can act on - has this wallet done this before - and it is indexed almost nowhere else. Two wallets on this chain own 26,321 of 27,981 launchpad rows: those are factories or relayers, not operators, so a wallet above the launch ceiling deliberately gets no record rather than a headline reading 'this wallet launched 14,512 tokens'. A wallet with one launch also gets none: one launch is a fact about a token, not about a wallet. No win rate is computed - a 'crossed' row exists only because a token crossed, so the denominator would hold no losers.

NameTypeReqDescription
addressstringyes–

No output schema declared.

No examples provided.

rh_early_wallets ~177

Wallets whose first buy landed inside the early window of tokens that later crossed $100K, read off the chain's own feed, with the feed's base rate beside every rate. 🚨 A record is a fact about timing, not a forecast. meta.early_base_rate is the share of ALL judged tokens on the feed that crossed; a wallet's rate means nothing without it and must be quoted with it. The feed begins at meta.tape_since and the record does not reach back before that. Wallets are removed for spraying, for falling below the base rate on five or more judged entries, or for silence. realized_fill_eth, when present, is what the wallet's sells actually received on chain minus what it paid; when it is null the sells are still being read.

NameTypeReqDescription
limitinteger––

No output schema declared.

No examples provided.

rh_flagged_recent ~100

Tokens whose latest scan in the last 30 days found HIGH or CRITICAL structural risk, with the findings named. Each entry is a finding with evidence - a mint authority still open, a holder concentration, a launch pattern - not a verdict on where the price goes, and not an accusation about anyone. Use it to show what the current wave of bad launches looks like, never as a list to trade against.

NameTypeReqDescription
limitinteger––

No output schema declared.

No examples provided.

rh_stock_pairs ~110

Robinhood Chain's genuinely novel structure: memecoins quoted in TOKENIZED STOCKS rather than in a native coin. Pass a stock symbol (NVDA, SPY, TSLA) for the trading, unflagged tokens quoted in it with liquidity and the latest scan risk. Omit it for every stock with a count. This pairing exists on no other chain, so it is usually the part of a Robinhood Chain answer that a reader has never seen stated anywhere.

NameTypeReqDescription
stock–––

No output schema declared.

No examples provided.

rh_ticker_resolve ~122

Names ONE Robinhood Chain contract for a ticker symbol - the question that actually costs people money, because a name can be deployed any number of times. The named contract is alive, holds at least $10,000 in its pool and is not flagged HIGH or CRITICAL. Every other contract using the name is returned as a COUNT (contracts_other), never a list, because publishing a list of impostor addresses is a menu. found=false means no contract using that symbol clears the gate, which is itself the answer.

NameTypeReqDescription
symbolstringyes–

No output schema declared.

No examples provided.

rh_token_safety ~183

The STORED safety read for one Robinhood Chain token (address = 0x + 40 hex): whether it can be sold, what is flagged on the launch, where the launch money went, and how far it has run from the market cap at which PumpPill first logged it. Answers in under 100ms from the last stored scan and NEVER triggers a new one. found=false is an honest miss - the token has not been scanned - not a clean bill of health. deep=true means the economics, lock, operator and thesis passes ran; without it only the structural checks did. A flag is a finding with evidence, not a prediction. 'peak' is the high since scanning began, which can be after logging, so a peak below the entry means the run happened before PumpPill saw it.

NameTypeReqDescription
addressstringyes–

No output schema declared.

No examples provided.

rh_wallet_record ~91

What a single wallet holds and what it has traded, off the chain's own feed. A sell's size is derived from the router's minimum-out, so it is a FLOOR and is never reported as profit - do not turn it into a P&L. Many addresses on this chain are routing contracts rather than people; a balance alone does not make an address someone.

NameTypeReqDescription
addressstringyes–

No output schema declared.

No examples provided.

rh_whale_wallets ~217

Wallets holding at least 10 ETH or $50,000 in tokens, read as BALANCES on chain, not inferred from activity. Tiers are by dollars held, ETH and tokens together: mega, whale, mini (a wallet holding $100,000 of one of the chain's largest tokens is a mini whale whatever its ETH balance says) and large; positions_top names each wallet's three largest holdings. 🚨 This measures who CAN move a pool, never who is right and never who to follow. Most listed wallets hold rather than trade - of 1,967 wallets, 14 traded in a 30-day window and the ten largest made zero trades - so meta.trading_30d is part of the answer, not a footnote. sort='active' orders by trades instead of balance. Trade counts start from meta.trading_since, the moment PumpPill began recording the chain's feed, not from a fixed history.

NameTypeReqDescription
limitinteger––
sortstring––

No output schema declared.

No examples provided.

sol_early_wallets ~154

Wallets the launch scan recorded among a token's first buyers, on tokens whose peak later reached 5x the scan cap, with the base rate beside every rate. 🚨 Read every wallet's hit_rate_5x against meta.base_5x, the share of ALL judged tokens that did 5x (about one in twenty). Wallets that spray more than a token a day, sit at or below the base rate, or go silent are removed with the reason on the row. Wallet identity showed no out-of-sample edge on Solana when it was tested; this is the honest answer to 'who was early', not a list of wallets to copy.

NameTypeReqDescription
limitinteger––

No output schema declared.

No examples provided.

sol_token_detail ~113

Any Solana token by mint (base58): holders, bundled-launch read, what the deployer still holds, socials, and meta.verdict - one plain-English sentence saying whether it trades, whether it can be sold, what the dev holds and how far it has run. Start from meta.verdict. The rest is the evidence behind it. A clean read is not a reason to buy: it means the structural checks found nothing, not that the token will hold its value.

NameTypeReqDescription
mintstringyes–

No output schema declared.

No examples provided.

x_chatter ~293

What X has actually been saying about one contract address: how many posts name the contract in their own text, how many distinct accounts, their combined reach, whether it is accelerating, and - for each poster - what they have called before and how those turned out. Requires a PumpPill membership. The client sends it as a header: Authorization: Bearer <your claim>, where the claim is the sign-in token on pumppill.org/premium. Read the counts carefully. A mention counts only when the contract address appears in the post's TEXT; ticker-only matches are reported separately because a name is not a token. Accounts are labelled by RECORD, not fame: 'proven' means the account earned a place on PumpPill's roster by naming contracts early on tokens that later ran, 'known_bot' is our own bot verdict, and 'unknown' only means too little history to judge. This is a SAMPLE of X, not a firehose - so zero mentions means PumpPill did not see any, never that nobody is posting, and it is not a red flag on its own. On an EVM contract silence is simply normal: none of the contract mentions we have ever observed were EVM addresses. There is no sentiment or hype score here and there will not be one - the payload carries counts, reach and record, and nothing that predicts.

NameTypeReqDescription
contractstringyes–

No output schema declared.

No examples provided.

Common questions

What is the PumpPill — token safety and measured outcomes MCP server?

PumpPill — token safety and measured outcomes is an MCP server listed in the public MCP registry as org.pumppill/token-safety. Token safety, deployer history, whale balances and measured outcomes on Robinhood Chain and Solana. This page covers its hosted endpoint (https://api.pumppill.org/mcp).

Is the PumpPill — token safety and measured outcomes MCP server safe to use?

PumpPill — token safety and measured outcomes scores 70 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the PumpPill — token safety and measured outcomes MCP server expose?

PumpPill — token safety and measured outcomes exposes 16 tools: rh_token_safety, rh_ticker_resolve, rh_deployer_record, rh_flagged_recent, rh_stock_pairs, and 11 more. Their descriptions and schemas cost roughly 2,515 tokens of context every time the server is loaded.

Does the PumpPill — token safety and measured outcomes MCP server require authentication?

No. We connected to PumpPill — token safety and measured outcomes without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

Is the PumpPill — token safety and measured outcomes MCP server still maintained?

PumpPill — token safety and measured outcomes is still listed as active in the MCP registry. We last reached this channel on 25 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.