assay-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@assay-mcp check the newest Base liquidity pools"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
assay-mcp
Assay's two paid answers as MCP tools, paid per call in USDC on Base from your own wallet, under a daily limit you set. It is a local stdio MCP server, tested over stdio with the MCP Python SDK's client; if your MCP client has trouble with it, open an issue.
tool | what | cost |
| liquidity pools created on Base mainnet in Assay's recent window, with measured facts and flags | Assay's pools price, read from its live payment challenge |
| several independent model families check a claim against passages you paste | Assay's verify price, read the same way |
| prices, your wallet, today's spend against your limit | free |
Setup
A wallet holding USDC on Base. Use a dedicated wallet with a small balance: the key sits in your MCP client's configuration. x402 payments need no ETH for gas.
Choose your daily limit in USD. There is no default: the server will not start without one.
Add it to your MCP client's mcpServers configuration. It needs uv:
{
"mcpServers": {
"assay": {
"command": "uvx",
"args": ["--from", "git+https://github.com/exquest/assay-mcp", "assay-mcp"],
"env": {"ASSAY_PAYER_PRIVATE_KEY": "0x…", "ASSAY_MAX_USD_PER_DAY": "<your limit>"}
}
}
}Optional: ASSAY_URL (default https://assay.cascadiantech.com), ASSAY_SPEND_FILE (default
~/.assay-mcp/spend.jsonl).
Related MCP server: pontage
How the limit works
Before any payment is signed, its price is reserved in the spend file; afterwards it is closed as settled or
failed. Past the limit, a tool answers limit_reached and pays nothing. A payment whose outcome is unknown keeps
counting. Days are UTC. Restarting the server does not reset the limit.
What you get
verify_claim returns Assay's answer as is. new_base_pools returns a condensed page (each pool's address, exchange,
creation block, token symbols, pairing and flags) and saves the full paid answer, with every fact's read block and
evidence, under ~/.assay-mcp/answers/. Assay's terms: https://assay.cascadiantech.com/terms
About
Assay is run by Cascadian Tech LLC (https://assay.cascadiantech.com, assay@cascadiantech.com). This client is MIT licensed; each paid call is a purchase from Assay under its terms. It is not on PyPI yet.
Available Tools
3 toolsassay_statusB
Free. Assay's current prices, your wallet, and today's spend against your daily limit.
Inputs: no named parameters.
new_base_poolsA
Liquidity pools created on Base mainnet in Assay's recent window, newest first, one page per call. Costs $0.02 in USDC on Base, paid from your wallet. Filters: dex (an exchange name), flag / not_flag (a flag name), cursor (the previous page's next_cursor). Each fact carries its read block; flags are true, false or unknown. Returns a condensed page and the path of the full paid answer.
Inputs: dex, flag, cursor, not_flag.
verify_claimA
Check a claim against passages you paste, with several independent model families; returns every family's vote with the quotes it relied on, each checked verbatim against your sources. No single verdict. Costs $0.50 in USDC on Base, paid from your wallet. Pasted text only; URLs are not fetched. The payment settles before the models run.
Inputs: claim (required), sources (required), questions.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: querying Base pools, verifying claims against pasted passages, and checking account/status information. There is no overlap or realistic chance of selecting the wrong tool.
All names use lowercase snake_case, but the pattern is mixed: verify_claim is verb_noun, new_base_pools is modifier_noun, and assay_status is noun_noun. The names are still readable and predictable, but they do not follow a single consistent convention.
Three tools is appropriate for this focused paid-data server: one data query, one verification action, and one status/account tool. Each tool earns its place and the count is not excessive or thin for the stated functionality.
The core interactions are covered, but new_base_pools returns only a condensed page plus a path to the full paid answer, and no tool exists to retrieve that full answer. There is also no way to fetch past results or revisit prior purchases from within the server, leaving a notable workflow gap.
Related MCP Connectors
Paid MCP tools behind one endpoint. Agents pay per call in USDC on Base via x402.
Pay-per-call APIs via x402 USDC on Base. Hosted MCP: original gateway; stdio: full catalog.
Discover and pay for APIs with USDC credits. No wallet, no gas, MCP-native marketplace.
Pay-per-action access to APIs and MCP tools over Lightning L402 and Base USDC x402.
Related MCP Servers
AlicenseNot gradedqualityDmaintenancePay per MCP tool call in USDC on Base. Non-custodial settlement, no admin keys, 30 bps fee.MIT- AlicenseNot gradedqualityDmaintenanceEnables MCP tools to be gated behind per-call USDC micropayments with direct on-chain verification and settlement, removing the need for third-party payment facilitators.MIT
- AlicenseNot gradedqualityCmaintenanceEnables MCP clients to call pay-per-use tools for search, PDF processing, web reading, extraction, summarization, fact-checking, translation, jobs, and discovery, with each call paid in USDC on Base via x402 and no API key or account required.AGPL 3.0
- AlicenseNot gradedqualityCmaintenanceEnables MCP clients to perform paid claim checks, scouting, and deep dives against public URLs via x402 payments in USDC on Base, with a configurable per-call spend cap.MIT