Give your agent
a contract reader
REAGENT serves its readings over MCP, the Model Context Protocol. Claude, Cursor or a trading bot of your own can read a token’s contract before it trades, and every finding it gets back names the call it came from.
Connect it
one commandConnect with a URL
The desk serves the tools at https://www.reagents.tech/api/mcp. Add it
to your agent with one command, nothing to install, and ask in plain language.
“Read this token before I ape: <address>” — the agent
calls read_token, and the reply is the contract’s own answer:
who can still mint, freeze or tax a transfer, how deep the pool is, how
concentrated the holders are, and the grade the desk computes from it.
The open-source package runs the same server on your own machine, with two more tools for the assets you register.
$ claude mcp add --transport http reagent https://www.reagents.tech/api/mcp
# or run it on your machine
$ git clone https://github.com/monokernn/REAGENT.git
$ cd REAGENT && pip install -e .
$ claude mcp add reagent -- assayer mcp
# then ask your agent
> Read this token before I ape: <address>
The tools
read-only, free01 read_token
Reads a token from the chain right now: all twelve readings, the agent that
owns each one, and the call it came from. Solana, or an EVM chain with an
endpoint in config.toml. Add a pool address and the liquidity
reading fills in.
02 holder_clusters
The 100 largest wallets of a Solana token, grouped by the address that first funded each one, with the share of supply every cluster holds. Exchanges and busy hubs are listed apart. Funding addresses come from Jupiter.
03 list_assets on your machine
The assets registered in your REAGENT project and how many sheets each one has. A quick way for an agent to see what you already watch.
04 show_dossier on your machine
The latest sheet for a registered asset, exactly as the command line prints it, with its citations. What changed since the last snapshot sits on the sheet.
What the agent gets
text and JSONThe reading, with its source
Every line is a reading of the contract. Next to it sit the crew member that owns the reading and the exact call it was pulled from, so the answer an agent passes on can be opened and checked.
The same reply comes back as structured JSON. powers_live lists the
powers somebody still holds over a balance, so a program can branch on it
instead of parsing text.
calls itself Super Inu (SI)
POWERS LIVE: 2 (ownership, transfer_tax)
⚠ Clasp · transfer_tax: a transfer pays 100 basis
points (1%); the rate can be changed by 5KXD…K6tD
↳ transferFeeConfig @ DEW9…8WDP
○ Clasp · mint_authority: set to none: the supply is fixed
↳ getAccountInfo(mint).mintAuthority
○ Clasp · freeze: set to none: no account can be frozen
↳ getAccountInfo(mint).freezeAuthority
· Sift · owner_holdings: 5KXD…K6tD holds 0.0209% of supply
? Gauge · liquidity: not checked, no_pool_declared
Other clients
Claude Desktop, CursorOne URL, or one block of config
Claude Desktop and claude.ai: Settings → Connectors → Add custom connector,
and paste https://www.reagents.tech/api/mcp.
Cursor and any client that reads mcpServers from a config file take the
block on the right. Restart the app and the tools appear.
"mcpServers": {
"reagent": {
"url": "https://www.reagents.tech/api/mcp"
}
}
}