xyz.groundtruths/groundtruth
REMOTE · API.GROUNDTRUTHS.XYZ
Dev records, pump.fun + Robinhood Chain: launches, rugs, bonded, live last mint. Every figure has N.
Available components
Last scanned (23 hours ago)
Scores higher than 66% of remote servers
Reachable. Last reached 4 Nov 2026.
Category Crypto and Web3
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 Security63
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS enforcement could not be verified: the plaintext port answered with HTTP 405, which proves neither a plaintext path nor enforcement. View diagnostics → Unverified
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability60
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 4030 tokens (~201/item across 20 items; 20 tools + 0 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 Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage92
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 76% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 20 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 21 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities60
- Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail
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.
- 3 Nov 26 0
- Tool “beat_the_bot” rewrote its description, which is the text the model reads security
- 1 Nov 26 0
- Tool “groundtruth_time_to_rug” rewrote its description, which is the text the model reads security
- “groundtruth_time_to_rug” added an optional parameter “ca” cosmetic
- “groundtruth_time_to_rug” added an optional parameter “creator” cosmetic
- “groundtruth_time_to_rug” reworded the description of “window” cosmetic
- “groundtruth_time_to_rug” dropped the optional parameter “band” cosmetic
- 31 Oct 26 0
- New tool “line_check_board” functional
- New tool “market_heat” functional
- 25 Oct 26 0
- New tool “groundtruth_pad_hoppers” functional
- 24 Oct 26 0
- The server rewrote its instructions, which are the text every model session reads security
- Tool “launch_feed” rewrote its description, which is the text the model reads security
- Server version: 1.3.0 → 1.4.0 functional
- 23 Oct 26 0
- Tool “beat_the_bot” rewrote its description, which is the text the model reads security
- Tool coverage: 79% → 74% ▼ functional
- “beat_the_bot” added an optional parameter “delay_s” cosmetic
- “beat_the_bot” added an optional parameter “filters” cosmetic
- 19 Oct 26 0
- Stability: 0.97 → pass security
- Tool “launch_feed” rewrote its description, which is the text the model reads security
- Tool coverage: 96% → 79% ▼ functional
- New tool “beat_the_bot” functional
- 17 Oct 26 +1
- The server rewrote its instructions, which are the text every model session reads security
- New tool “launch_feed” functional
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 4 Nov 2026 · Probed https://api.groundtruths.xyz/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=groundtruths.xyz | CN=WE1,O=Google Trust Services,C=US | 31 Oct 2026 | 29 Jan 2027 | ECDSA 256 | ECDSA-SHA256 | a03fd1353f55ef41138ceae5ec97c8a0 |
| SANs: groundtruths.xyz, api.groundtruths.xyz, *.api.groundtruths.xyz | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of api.groundtruths.xyz. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| xyz. | present | 3599, 18130 | 8, 8 | Verified |
| groundtruths.xyz. | 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.groundtruths.xyz/mcp | Verified | 200 | |
| http (plaintext) | http://api.groundtruths.xyz/mcp | Inconclusive | 405 |
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 →
beat_the_bot ~254
Beat the Bot: fight SWAPNUTZ, GT's paper sniper, on a live pump.fun launch. action "state" lists open rounds, the bot's live P&L and the rules. action "in" enters a round (round = the coin mint, size_sol, optional tp_pct / sl_pct / hold_s for an auto exit); action "out" exits. action "replay" runs a strategy (size_sol, delay_s, tp_pct, sl_pct, hold_s, filters {skip_red, skip_rap, min_holders, min_liq_sol, kol_in}) on every coin the bot traded in 7 days. Orders are locked in on arrival and fill on GT's captured curve, same fees as the bot. action "session" reads a result. Paper only. Not financial advice.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | – |
| delay_s | number | – | – |
| filters | object | – | – |
| hold_s | number | – | – |
| round | string | – | the coin mint of an open round |
| session | integer | – | – |
| size_sol | number | – | – |
| sl_pct | number | – | – |
| tp_pct | number | – | – |
No output schema declared.
No examples provided.
groundtruth_autopsy_index ~58
List the dated autopsies GROUNDTRUTH has published. Each is a writeup of one launch and what happened to it. Returns the available days; fetch a specific one from the public site at /autopsy/<day>.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
groundtruth_census_figures ~79
Return the corpus-level figures the site publishes: launches captured per chain, how many resolved, and the share that rugged, died, survived or graduated, with the generation timestamp. This is market data GROUNDTRUTH has captured, not exhaustive coverage from a start date -- use it for baselines, not for totals of all activity.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
groundtruth_copycheck ~213
For a copy bot about to follow a wallet into a coin: the coin's creator counts (to that coin's launch when we have them), the wallet's counts from the capture tape, and one line built from those counts only, e.g. "creator: SAME DEV · {r} OF {n} RUGGED (counted to this coin's launch) · wallet: {a}/{b} sells within 60 s before a rug, {vs} the all-wallet rate · {c}/{d} buys where a wallet that first bought 1-2 s later still held at the rug, {vs} the all-wallet rate · ... · tape {from}..{to}" (every {x} is that call's own count; GT_NO_HANDTYPED_V1). Solana only. Counts only.
| Name | Type | Req | Description |
|---|---|---|---|
| ca | string | yes | The coin (Solana mint, base58). |
| wallet | string | yes | The wallet being copied (Solana, base58). |
No output schema declared.
No examples provided.
groundtruth_creator_flag ~405
What the KOL wallet launched, and how it ended. Rugged of resolved, seconds to the pull, every count with its N. One call. kol: when the creator is on a public KOL list (kolscan, the pump.fun leaderboard, kolscan.fun, KolHood, Kolosseum) -- tag KOL or TOP PROFIT, the lists, tg / x / verified as yes-no, the list rank, listed now; null when it is on none. Never a name or handle. One creator in, one small answer out: is this creator known bad, with the rug rate, the chain baseline and the multiple that justifies the verdict. Also returns TTR -- ttr_median, ttr_p25 and ttr_mean, in seconds from launch to rug over this creator's rugged launches, with ttr_n and n_rugged -- and rugged_resolved / faded_resolved as x/y, all counted to the build time of the data and from launch outcomes only. The cheapest call on this server -- use it when all you need is the decision rather than the wallet list. known_bad is null, never false, for a creator not in our count. The counts are a batch recount; LIVE FIELDS, from the mint feed every 5 s: last_mint_live (unix s of the dev's newest mint), launched_live, bonded_live and mints_since_asof; ticker_asof = the newest mint the feed has seen. A row with no mints_since_asof is not live: refuse it. bonded_asof dates the recount part; peak / pull and ttr_* are history (peak_proven / pull_proven false), not a trade signal; known_bad is the census rule.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | Which chain the creator launched on. |
| creator | string | yes | Creator address. base58 for Solana, 0x... for Robinhood Chain. |
No output schema declared.
No examples provided.
groundtruth_creator_replay ~234
What $100 would have done across a creator's last N resolved launches. Returns two rows. held_to_end is a MEASUREMENT: the recorded multiple at the end of each launch, with rugged launches counted as zero because the liquidity was pulled. clock_upper_bound is a CEILING, not a prediction: it uses the recorded PEAK multiple and only where the peak arrived at or before the band p25, because the published data carries the peak and the final multiple, not the path between them. Say "at most" when you quote it. Launches with no recorded multiple are excluded from BOTH the stake and the return, so the two describe the same set -- quote computed_for and of, never just the total. Solana only today: the Robinhood outcome data carries no peak multiple, so neither row can be computed there.
| Name | Type | Req | Description |
|---|---|---|---|
| creator | string | yes | the creator wallet (base58) |
| n | integer | – | how many of the most recent resolved launches, 1-12, default 10 |
| usd | number | – | the stake per launch in dollars, default 100 |
No output schema declared.
No examples provided.
groundtruth_kol_board ~155
What the KOL wallet launched, and how it ended. Rugged of resolved, seconds to the pull, every count with its N. One call. The wallets on kolscan, the pump.fun leaderboard, kolscan.fun, KolHood and Kolosseum that launched coins, counted by GROUNDTRUTH: tag KOL or TOP PROFIT, launches, rugged / resolved, PULL, bonded, last mint, and list juice (Telegram / X / verified as yes-no, list rank, listed now). Wallets only, never a name. Free: the top 3 per list and every list total; with an API key, every row (or /v1/kol over x402).
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
groundtruth_kol_feed ~115
What the KOL wallet launched, and how it ended. Rugged of resolved, seconds to the pull, every count with its N. One call. JUST IN: launches by wallets on the KOL and top-profit lists, newest first, each with that wallet's rugged / resolved before it; AGAIN: rugs on their coins with the seconds to the pull. 10 minutes behind. Free: the newest 3; with an API key, 30 (or /v1/kol/feed over x402).
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
groundtruth_pad_hoppers ~125
PAD HOPPERS: devs who rugged on 2+ launchpads (pump.fun, Meteora DBC, StonkFun, letsbonk.fun, Raydium LaunchLab, Moonshot, bags.fun, and the Robinhood Chain pads), ranked by total rugs. Each leg = that pad's rugged of resolved, with its N. Also today's PAD HOPPER OF THE DAY. groundtruth_creator_flag carries the same tag per dev (pads.hopper).
| Name | Type | Req | Description |
|---|---|---|---|
| n | number | – | rows, 1-100 (default 25) |
No output schema declared.
No examples provided.
groundtruth_scan_coin ~268
What the KOL wallet launched, and how it ended. Rugged of resolved, seconds to the pull, every count with its N. One call. When the dev is on a KOL list, envelope.kol carries tag KOL / TOP PROFIT, the lists, yes-no flags and rank (never a name). Look up one token and return what GROUNDTRUTH counted about it: the outcome label (rugged, died, graduated, survived, or no outcome), liquidity and market-cap figures, holder counts, and the launch counts of the wallet that launched it. Accepts a Solana mint or a Robinhood Chain 0x contract address. This is the same read the public site performs when someone pastes a contract address. The answer carries the envelope; its live block holds the dev's last_mint_live, launched_live, bonded_live, mints_since_asof and ticker_asof (the newest mint the feed has seen). A dev WALLET pasted here answers not_token plus that dev's creator_record and the same live fields.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | A Solana mint (base58) or a Robinhood Chain contract address (0x...). Example: So11111111111111111111111111111111111111112 |
No output schema declared.
No examples provided.
groundtruth_scoreboard ~50
Return the public accuracy scoreboard: how many forward calls GROUNDTRUTH has made, how many have resolved, and how those resolved. Use this to judge how much weight to give the other tools.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
groundtruth_scorecard ~112
How often calls stamped under this API key were right. Groups them by band and by what the coin actually did, resolved from the same data the card reads. A call whose coin has not resolved counts as PENDING, never as a win -- report pending alongside resolved, because the denominator is the point. Also returns whether the hash chain is intact; if it is not, say so rather than quoting the numbers.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | rows to read, 1-500, default 200 |
No output schema declared.
No examples provided.
groundtruth_screen_batch ~179
Screen up to 200 creator addresses in ONE call and get one compact row each: launches, rug rate, the chain baseline, the multiple of that baseline, wallets tied, and the apparent-versus-true operator collapse. Use this instead of calling groundtruth_screen_creator in a loop. known_bad is true only when the creator is in the published set, has at least 5 resolved launches, and rugs at 1.5 times the chain baseline or worse -- a bare rug rate is noise, the multiple is a decision. known_bad is null, NEVER false, for a creator not in our count: not in our count means nothing either way.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | Which chain these creators launched on. |
| creators | array | yes | Creator addresses. base58 for Solana, 0x... for Robinhood Chain. |
No output schema declared.
No examples provided.
groundtruth_screen_creator ~274
Given one creator address, return every wallet that was early in that creator's launches: the role each played (creator, repeat_buyer, one_off), how many of this creator's launches it was early in versus how many it was early in anywhere, and the creator's own rug rate against the chain baseline, because a rate without its baseline is not a finding. It does not say who owns the wallets. LIVE FIELDS, from the mint feed every 5 s: last_mint_live (unix s of the dev's newest mint), launched_live, bonded_live and mints_since_asof; ticker_asof = the newest mint the feed has seen. A row with no mints_since_asof is not live: refuse it. bonded_asof dates the recount part; peak / pull and ttr_* are history (peak_proven / pull_proven false), not a trade signal; known_bad is the census rule.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | Which chain the creator launched on. |
| creator | string | yes | Creator address. base58 for Solana, 0x... for Robinhood Chain. |
| limit | integer | – | Maximum wallet rows to return. The response reports wallets_truncated when it caps. |
| role | string | – | Optional filter. Omit for all roles. |
No output schema declared.
No examples provided.
groundtruth_seal_call ~170
Stamp a verdict ahead of the outcome, so it can be counted later. This is the honesty mechanism: the row is hash-chained to the previous one under your API key, so a verdict cannot be edited or removed after the coin resolves. Stamp every call you make, including the ones you are confident about -- a scorecard built only from remembered wins is not a scorecard. Returns the row hash and sequence number.
| Name | Type | Req | Description |
|---|---|---|---|
| band | string | – | your own call, in your own scorecard; GROUNDTRUTH no longer publishes a band |
| ca | string | yes | the coin address you are calling |
| chain | string | – | – |
| note | string | – | optional, up to 200 characters |
| rule_id | string | – | optional: your own rule label |
No output schema declared.
No examples provided.
groundtruth_time_to_rug ~263
How long a dev's rugs took: the measured median time from first seen to the pull, with p25 and N -- a record, not a prediction. Pass creator (a wallet) or ca (a coin; its dev is looked up) for that dev's own median pull, the same number and source as the coin card's "median pull" line, with N rugged with a pull time and N launched. Under 5 timed pulls the percentiles are null and enough_data is false -- say "not enough timed pulls to state a time" rather than quoting a number. Pass nothing (or chain / window) for the chain and launchpad table: median, p25, p75 and N per window, null under 30. N always travels in the answer.
| Name | Type | Req | Description |
|---|---|---|---|
| ca | string | – | a Solana coin mint; answers for the dev who launched it, counted to its launch like the card |
| chain | string | – | solana (pump.fun) or rh (Robinhood Chain) |
| creator | string | – | a dev wallet (Solana base58, or 0x on Robinhood Chain with chain rh) |
| window | string | – | table only: the resolution window; defaults to 24h |
No output schema declared.
No examples provided.
groundtruth_wallet_record ~507
One WALLET in, its counts out, from GROUNDTRUTH's own Solana capture tape (not a third party feed). Each of four fields is x/n with a one-line definition of n beside it, its rate, the same rate over all wallets, and the word above, below or about ("about" = within 2 percentage points): bad_share (buys in coins from creators with 5+ launches, 80%+ rugged, judged at each coin's launch; n = buys in coins whose dev we have counted), pre_rug_exits (n = the wallet's sells in coins that rugged; x = those in the 60 s up to the rug), copier_bagholder (buys where a wallet that first bought 1-2 s later still held at the rug; n = buys in coins that rugged where another wallet's first buy in that coin landed 1-2 s later; x = those where at least one wallet that first bought 1-2 s later had not sold at the rug) and early_buys (n = buys in coins with a known launch time; x = within 30 s of the launch). Then the tape range, buys_total (counts all buys; each n counts only the buys that meet its own condition), role (a label; role_label is its display form: deployer, early buyer or trader) and, for a deployer, its launches last (hand_label), dated, with the pip legend and what rugged means. A coin the wallet created itself is left out of the four fields (own_coins_excluded counts them). wallet_record is null, with wallet_record_reason, when the wallet is not in the tape cut (fewer than 100 buys in the tape range). Counts only. creator_record (a deployer) carries the LIVE FIELDS, from the mint feed every 5 s: last_mint_live (unix s of the dev's newest mint), launched_live, bonded_live and mints_since_asof; ticker_asof = the newest mint the feed has seen. A row with no mints_since_asof is not live: refuse it. bonded_asof dates the recount part; peak / pull and ttr_* are history (peak_proven / pull_proven false), not a trade signal; known_bad is the census rule.
| Name | Type | Req | Description |
|---|---|---|---|
| wallet | string | yes | A Solana wallet address (base58). |
No output schema declared.
No examples provided.
launch_feed ~226
GT Launch Feed: GT's RPC-style stream, with GT's data already embedded (not a JSON-RPC endpoint: no RPC methods). The newest launches on Solana and Robinhood Chain, each with the dev's rap sheet attached: SAME DEV X OF Y RUGGED, median pull, last launch, bonded count, the dev's labels where backed, active hours, the $100 line for the dev's last coin, a link to the card. Tiers: FREE 5 min behind (no key on GET /v1/launches, attribution required); LIVE real time at $0.01 a call over x402 (/x402/v1/launches) or a paid key; LIVE PUSH every launch streamed at $99/mo; $GTRUTH holders at the tier read LIVE free. Every item carries source: Data: GroundTruth. Counts only, wallets only. This tool needs a key.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | Optional: one chain. |
| n | integer | – | How many launches, 1 to 100. Default 20. |
No output schema declared.
No examples provided.
line_check_board ~99
LINE CHECK: who is buying the prediction-market line. Polymarket games starting in the next 72 h and the US midterm race board (Nov 3): per market, the side with the most fresh-or-clustered money, its $ and wallets (k of N), price, HEAT 0-100 with its N, and the pre-start stamp hash. Counts from the Polygon chain. Information only, not financial advice.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
market_heat ~105
HEAT for one Polymarket market (condition id): the share of a side's $ from fresh or clustered wallets, ranked 0-100 against sides with real money (>= $1,000 on the side and some fresh-or-clustered $), with N. heat is null (with the reason) when the market has none. Information only, not financial advice.
| Name | Type | Req | Description |
|---|---|---|---|
| cid | string | yes | Polymarket condition id: 0x + 64 hex |
No output schema declared.
No examples provided.
How do I install the xyz.groundtruths/groundtruth MCP server?
xyz.groundtruths/groundtruth is a hosted endpoint at https://api.groundtruths.xyz/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.groundtruths.xyz
claude mcp add --transport http xyz-groundtruths-groundtruth 'https://api.groundtruths.xyz/mcp'
What is the xyz.groundtruths/groundtruth MCP server?
xyz.groundtruths/groundtruth is an MCP server listed in the public MCP registry as xyz.groundtruths/groundtruth. Dev records, pump.fun + Robinhood Chain: launches, rugs, bonded, live last mint. Every figure has N. This page covers its hosted endpoint (https://api.groundtruths.xyz/mcp).
Is the xyz.groundtruths/groundtruth MCP server safe to use?
xyz.groundtruths/groundtruth scores 76 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 xyz.groundtruths/groundtruth MCP server expose?
xyz.groundtruths/groundtruth exposes 20 tools: groundtruth_scan_coin, groundtruth_screen_creator, groundtruth_screen_batch, groundtruth_creator_flag, groundtruth_wallet_record, and 15 more. Their descriptions and schemas cost roughly 3,891 tokens of context every time the server is loaded.
Does the xyz.groundtruths/groundtruth MCP server require authentication?
No. We connected to xyz.groundtruths/groundtruth without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the xyz.groundtruths/groundtruth MCP server still maintained?
xyz.groundtruths/groundtruth is still listed as active in the MCP registry. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.