Mindjack

xyz.mindjackPublished by mindjack.xyzOfficial publisherv1.4.5Updated Oct 24, 2026

Solana memecoin rug check for trading agents: pump.fun launches, calibrated rug risk, wallets, KOL.

VerifiedStreamable HTTPWeb executableFinanceSecurity & MonitoringData & Analytics

Overview

AI-generated overview

Solana memecoin risk MCP server: calibrated rug verdicts, holder and wallet forensics, KOL records and live sellability checks for trading agents.

What you can do
  • Check a token's rug risk, collapse speed and price path, and compare or search analysed tokens
  • Inspect holders: named wallets, insider/sniper/fresh-wallet splits, wallet graphs, shared-wallet launch webs and funder networks
  • Look up wallets and KOLs: cross-token history, counterpart networks, KOL leaderboards and per-trade records
  • Measure patterns across the index with hypothesis tests, and read the published scorecard, coverage and sample
  • Run guided prompts for vetting a token before buying, finding candidates, or vetting a counterparty
When to use it
Use it when an assistant helps evaluate Solana pump.fun or letsbonk launches before taking a position, or when it needs to trace who is behind a token or wallet. It is aimed at trading and research workflows rather than general Solana development.
Requirements
Runs as a remote endpoint or locally via npx @mindjack/mcp. Paid tools need an API key: the server mints one on first use and stores it under ~/.config/mindjack/key, or you can set MINDJACK_API_KEY (and MINDJACK_CONFIG_DIR); the X-API-Key header is optional for listing tools. A new key starts at zero credits and must be funded with a USDC deposit; x402 pay-per-call is an alternative. Free tools work without funding.
Before you install
Most tools cost money per call, from $0.001 to $0.07, and a zero balance makes paid calls fail until you top up with USDC. The server creates and stores an API key on your machine. Coverage is Solana only and limited to tokens indexed at migration since its start date, and reported upside is a historical frequency, not a forecast. Some calls read the chain live.

Installation

In SourceWeft

  1. Open Mindjack in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/xyz.mindjack%2Fmcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "mindjack": {
      "type": "http",
      "url": "https://api.mindjack.xyz/mcp"
    }
  }
}

README

@mindjack/mcp

[npm]

Solana memecoin rug check and token risk for trading agents, as MCP tools: pump.fun launches and migrations, calibrated rug probability, sniper / insider / bundle and fresh-wallet detection, holder clusters, KOL trades, wallet history across every launch indexed, and a live sellability check before you buy. Built for the trenches.

Install

Add to your MCP client config — Claude Desktop, Cursor, Codex, or anything else that speaks MCP:

json
{  "mcpServers": {    "mindjack": {      "command": "npx",      "args": ["-y", "@mindjack/mcp"]    }  }}

That is the whole setup. No signup, no card: the server mints a key on first use, saves it to ~/.config/mindjack/key, and reuses it from then on. A new key starts empty — fund it with a USDC deposit when you are ready; the free tools below work before you fund anything, and get_sample answers one real token in full so you can see every paid tier before spending a cent.

Set MINDJACK_API_KEY to use a specific key instead, or MINDJACK_CONFIG_DIR to keep it somewhere else.

Prefer to skip keys entirely? The API also speaks x402 — pay per call in USDC on Solana, no account at all.

Tools

ToolPriceAnswers
get_samplefreeOne fixed token, answered in full — no key, no payment
get_coveragefreeWhat we hold, how fresh, and a mint that works
get_scorecardfreeOur measured hit rate per risk band
get_balancefreeWhat is left on your key
check_token$0.001Is this one dangerous, and how fast do these collapse
find_tokens$0.005Which tokens are worth looking at, verdicts attached
search_tokens$0.005 /pageFind any token we ever analysed, by symbol, name or mint
search$0.005 /pageThe same search, shaped for research clients: {id, title, url} rows to cite or pass to fetch
inspect_token$0.005Who is holding it, and what kind of wallets
token_wallets$0.005The named wallets behind it: insiders, snipers, fresh, wash, KOLs — with funders and clusters
token_price_path$0.005What it did after we called it
can_i_exit$0.005Can it be sold right now — a live Jupiter round trip at $100 and $1000
check_wallet$0.006Who is this wallet, across every token we indexed
kol_leaderboard$0.02 /pageEvery tracked KOL ranked: realized SOL, win rate, recent window
kol_record$0.02One KOL's full record: per-token history and latest trades
token_identity$0.025Who is behind it, and how their earlier tokens ended
token_report$0.025Everything on one token in one call; depth: "full" is $0.07
fetch$0.025The same report as one document, keyed by the id a search result gave you
token_changes$0.025Who sold since we analysed it (reads the chain now)
test_hypothesis$0.025What happened to tokens shaped like this
find_serial_insiders$0.025 / 25Who keeps turning up as an insider, across the whole index
compare_tokens$0.025Were these 2-4 tokens run by the same people
wallet_network$0.025Who a wallet moves with: counterparts, direction, second hop
funder_networks$0.025 /pageFunders seeding fresh wallets index-wide, exchanges named
token_graph$0.04How the holders are connected: edges, clusters, wash wallets
token_web$0.04Launches tied to this one through shared wallets, with outcomes and peaks

search and fetch are aliases, not extra products: same endpoints, same prices, same billing as search_tokens and token_report. They exist under those exact names because ChatGPT's deep research and company knowledge modes look for them by name and connect to nothing without them.

Live feeds (new launches, watched wallets, KOL trades) are server-sent event streams and do not map to MCP tools — the endpoint guide below covers them.

Resources

Four read-only documents, all free, attached once rather than called per task. A client can cache them; the model does not have to decide to fetch them.

URIWhat it is
mindjack://coverageThe window we hold, what is in it, and a live mint guaranteed to have data
mindjack://scorecardEvery calibrated band with the collapse rate measured for it and its sample size
mindjack://pricesEvery priced route with its price, asset, network and receiving address
mindjack://sampleOne real token answered in full, free, so you can read the shape before buying it

Prompts

Three workflows, written down. Each is the order of calls that answers a real question, with what to read out of each step and when the next one is worth its price.

PromptArgumentsAnswers
vet_before_buyingmintShould I take a position in this token?
find_candidateshours, min_mcap (optional)What launched recently that is worth a closer look?
vet_counterpartyaddressWho is this wallet and what has it done before?

MCP passes prompt arguments as strings, so send "6" rather than 6.

Using it

Every tool declares an outputSchema and returns structuredContent beside the text, so a client can validate the answer and plan the next call from the field names without paying to discover the shape.

A first run, in the order the server itself recommends:

get_coverage                      -> free; the window, and a mint that worksfind_tokens  hours=24 max_rug_pct=45   -> candidates, each with a measured verdictcheck_token  mint=<from above>    -> $0.001; structure and collapse speedtoken_identity mint=<survivor>    -> $0.025; who is holding it and how their                                     other tokens ended

max_rug_pct is worth one warning: it is a measured collapse frequency for a calibrated band, not a score that starts at zero. The safest band we publish still rugged about 35% of the time, so a threshold under that matches nothing at any window length. The universe base rate is 45%.

What makes this different

We keep outcomes. Most APIs describe a token as it looks right now. We also know what happened to every launch we have indexed since March 2026 — tens of thousands of them — which is why check_token can tell you that tokens scoring like this one collapsed 78% of the time rather than just handing you a number.

We publish our hit rate. get_scorecard returns the measured accuracy of every band, refreshed weekly. Nobody who does not keep labelled outcomes can produce that, and you should not trust a risk score from anyone who won't.

Collapse speed, not just collapse probability. In this market almost everything eventually dies, so "will it" separates weakly. "How fast" separates about tenfold — the worst band's median collapse is 19 seconds from peak, the cleanest is 11 minutes. That is the number that decides whether a position is exitable at all.

Wallets have a past. Millions of recorded wallet appearances. When the same wallets show up in a new launch, token_identity tells you where else they have been and how those ended.

Honest limits

  • Solana only, and only tokens indexed at migration. We hold every pump.fun and letsbonk migration since our start date — complete inside that window, nothing before it. The record is point-in-time and cannot be rebuilt later.
  • We do not predict price. Where upside is reported it is a measured historical frequency for a cohort, not a forecast, and not adjusted for fees or slippage.
  • Unknown tokens, failed calls and empty results cost nothing. Every response carries _meta.coverage and _meta.billing so you can see exactly what you got and what it cost.

Links

Source: README.md at commit a776807

Tools

26

check_token

[$0.001] Is this Solana token dangerous? A calibrated rug verdict whose probability is a MEASURED frequency (see get_scorecard), the concentration facts behind it, and how fast this band tends to collapse. Cheapest call, run it on every token; it decides whether inspect_token, token_identity or token_report is worth paying for. Does not name holders.

Parametersmintrequired

inspect_token

[$0.005] Who is involved: top holders and supply, the sniper / fresh-wallet / insider / early-buyer split, connected-group topology, tracked-trader activity. Counts and structure only: token_wallets names them, token_graph draws the edges, token_web follows them to earlier launches.

Parametersmintrequired

token_report

[$0.025] check_token + inspect_token + token_identity in one call. depth="full" ($0.07) adds the outcome path, live sellability and the wallet graph. Cheaper than the parts; use once a token is worth a real look. `fetch` is this call under the name ChatGPT requires.

Parametersmintrequireddepth

token_identity

[$0.025] Who is BEHIND this token: what its largest holders did in earlier launches, which sibling tokens the same wallets ran and how those ended, and the measured upside band. The decision-point call. Coverage is reported per call; an empty result is free.

Parametersmintrequired

find_tokens

[$0.005] Recently analysed tokens, each already carrying a verdict, to rank locally before paying for depth. Filters: hours (1-168), min_mcap, platform, limit (1-100). A time-ordered feed with no query; to find a token you know by name or mint, use search_tokens.

Parametershourslimitmin_mcapplatform

check_wallet

[$0.006] One wallet across every token we indexed: launches it appeared in, how many ran, roles it recurs in, realised record. Works for any address. kol_record is the per-trade history of tracked KOLs; wallet_network is who this wallet moves with.

Parametersaddressrequired

can_i_exit

[$0.005] Can this token be sold RIGHT NOW, and what does a round trip cost: real Jupiter buy and sell routes at $100 and $1000, and the fraction of your money that survives. Verdict follows the worst rung: clear / elevated / thin / trapped / blocked. Quotes only, nothing is signed; not cached, takes a few hundred ms.

Parametersmintrequired

token_changes

[$0.025] Who sold since we analysed it: reads the chain now and diffs the large positions against what we recorded. Use when a cached read feels stale or to see whether concentrated wallets are exiting. The only call that touches the chain live.

Parametersmintrequired

token_price_path

[$0.005] What the token did after we called it: peak, drawdown from peak, and where it stands now, at 4-5 second resolution. Our feed starts at analysis; the bonding-curve phase before that is not included.

Parametersmintrequired

find_serial_insiders

[$0.025 per 25] Wallets that keep turning up as insiders across the whole index. Each row carries the wallet's full footprint, because ranking on insider count alone puts bots on top (the highest is flagged in 1,642 tokens and holds 4,091). Read insider_in against also_held: close is a real serial insider, far apart is a bot.

Parameterslimitmin_tokens

compare_tokens

[$0.025] Were these tokens run by the same people? Give 2-4 mints and get the wallets appearing in more than one, each with the role it played in each. Weigh the roles rather than the count: shared holders are common, a wallet that was an insider in one and a sniper in the next is not. Mints outside our index come back named in not_covered.

Parametersmintsrequired

test_hypothesis

[$0.025] Measure what happened to every indexed launch matching your filters: rug rate against the index base rate, peak-gain percentiles, time to peak, collapse speed. Answers pattern questions like 'do launches with under 200 holders die faster?'; to shortlist live tokens to act on, use find_tokens instead. filters is {field: {min,max}} over numeric fields listed by get_coverage, e.g. {total_holders: {min: 200}}. Returns cohort aggregates and a one-sentence finding, never per-token rows. Read-only over stored history; measured past, not a forecast.

Parametersfiltersrequiredwindow_days

get_scorecard

[free] Our measured hit rate per risk band, and how fast each band tends to collapse. Read this to decide how much weight to give our verdicts. Most risk APIs ask you to trust a score; this one shows how it performed.

Takes no parameters.

get_sample

[free, no key] One fixed token answered in full: the complete check_token, inspect_token and token_identity responses, each carrying the price that call costs. Served by the same handlers as the paid tools, so it is what you would actually get. Use get_coverage for freshness, this for depth.

Takes no parameters.

token_graph

[$0.04] The wallet relationship graph behind a token: edges with strength and confidence, cluster membership and role, wash-trading wallets. token_wallets names the holders; this shows how they are CONNECTED and whether a distributed-looking set is one person. Not a first look.

Parametersmintrequired

token_wallets

[$0.005] The NAMED wallets behind one token: insiders, snipers, early buyers, fresh wallets, wash traders and tracked KOLs, each with funder (exchanges named), link count and cluster. Lists cap at 100 per class; *_total fields carry real counts. inspect_token gives counts, this gives addresses.

Parametersmintrequired

token_web

[$0.04] Earlier launches tied to this token through shared wallets, with the wallets themselves, each launch's outcome and its highest recorded market cap. Use when token_identity reported shared wallets and you need WHICH launches. token_graph stays inside one token; this crosses tokens.

Parametersmintrequiredmin_shared

wallet_network

[$0.025] Who one wallet is wired to across the index: direct counterparts with interaction counts, shared tokens, transfer direction where the chain shows it, plus a bounded second hop. check_wallet says what it DID; this says who it MOVES WITH.

Parametersaddressrequired

kol_leaderboard

[$0.02/page] Every tracked KOL wallet, ranked from the recorded trades: lifetime realized SOL, per-token win rate on NET realized SOL, and a recent-activity window. Sort by profit, success or activity. Use to build or refresh a copy-trading watchlist.

Parametersdayssortlimit

kol_record

[$0.02] One tracked KOL in depth: lifetime stats, per-token history from every recorded trade (buys, sells, volume, realized SOL) and the latest trades raw. Untracked addresses answer null and cost nothing; check_wallet covers any wallet.

Parametersaddressrequired

funder_networks

[$0.025/page] Funders ranked by how many fresh wallets they seeded across the whole index, each labelled when we know the exchange behind it. A funder inside one token is a line item; across the index it is a desk. A null label with a high count is the shape worth opening.

Parameterslimitmin_wallets

search_tokens

[$0.005/page] Find a token in the analysed catalogue by symbol, name fragment or exact mint, with platform, size and age filters. find_tokens lists what just migrated; this finds the one you mean. `search` is the same call in the shape ChatGPT requires.

Parametersqdayslimitoffsetmin_mcapplatform

fetch

[$0.025] ChatGPT entry point: everything we hold on one token as one document: the calibrated verdict with its measured hit rate, who holds it and how they connect, and whether it can still be sold. Takes an id from `search`. Same endpoint and price as token_report, which other clients should call.

Parametersidrequired

get_coverage

[free] What we hold and how fresh, plus a live example mint guaranteed to have data. Call this first: we index every pump.fun and letsbonk migration since our start date, so an older token you already know will return nothing.

Takes no parameters.

get_balance

[free] Credits remaining on your key. There is no free allowance: a new key starts at zero and is funded with a USDC deposit, so a balance of 0 means the paid tools will answer 402 until you top up.

Takes no parameters.

Version history

1
  1. v1.4.5LatestSep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts