solmachina-x402
Solana & Base DeFi intelligence for AI agents over x402: decisions, risk, signed receipts.
使うべきか
品質と安全性
検出事項(1)
- LOWsolmachina_tipfloor 内
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"solmachina-x402": {
"command": "npx",
"args": [
"solmachina-x402-mcp"
]
}
}
}実行可能なパッケージ
1.4.0stdioリモートエンドポイント
https://api.solmachina.com/mcpstreamable-httpできること
ツール一覧
ツール(25)
⚪solmachina_catalog
Discover the x402 catalog (endpoints, USDC prices, category, network, payTo). FREE.
入力スキーマ
{
"type": "object",
"properties": {},
"required": []
}🟢solmachina_sample(endpoint)
FREE preview of any endpoint: response shape/example, inputs and price — inspect before paying.
入力スキーマ
{
"type": "object",
"properties": {
"endpoint": {
"type": "string",
"description": "e.g. /v1/token-holders"
}
},
"required": [
"endpoint"
]
}🟢solmachina_how_to_pay(endpoint)
Explain the x402 402->sign->retry flow so an agent can pay a paid endpoint with its own wallet. FREE.
入力スキーマ
{
"type": "object",
"properties": {
"endpoint": {
"type": "string",
"description": "optional endpoint path, e.g. /v1/decision"
}
},
"required": []
}⚪solmachina_verify_receipt(receipt)
How to verify a paid answer's Ed25519 SIR receipt OFFLINE (proof of what you paid for). FREE.
入力スキーマ
{
"type": "object",
"properties": {
"receipt": {
"type": "string",
"description": "base64 X-SolMachina-Receipt value or the receipt JSON"
}
},
"required": []
}🟢solmachina_status
Trust/health snapshot: version, uptime, WAL entry count + SHA-256 chain head. FREE.
入力スキーマ
{
"type": "object",
"properties": {},
"required": []
}⚪solmachina_smri(mint)
SolMachina Machine Risk Index (SMRI) for an SPL token: a 0-100 risk index (higher = lower assessed risk) with transparent components (contract authorities, top-10 concentration), a risk band, and confidence (= data completeness). The cheap, high-frequency score behind /v1/decision — for agents that just want the number. Verdict-free, returns 'unknown' over guessing. NOT financial advice. Requires ?mint=<token mint address>.
入力スキーマ
{
"type": "object",
"properties": {
"mint": {
"type": "string",
"description": "Base58 SPL token mint to score, e.g. DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263 (BONK)."
}
},
"required": [
"mint"
]
}🟢solmachina_simulate(tx)
Pre-flight transaction simulation for agents: dry-run a serialized Solana transaction (simulateTransaction) BEFORE executing — will it succeed, compute units consumed, program logs, and the error if any. NEVER signs or sends; simulation only, NOT a guarantee of the real on-chain outcome. NOT financial advice. Requires ?tx=<base64 serialized transaction>.
入力スキーマ
{
"type": "object",
"properties": {
"tx": {
"type": "string",
"description": "Base64-encoded serialized Solana transaction to dry-run."
}
},
"required": [
"tx"
]
}⚪solmachina_decision(mint, action, amountUsd, tx, minSmri, ...)
SolMachina Decision — the decision layer for autonomous agents: composes on-chain risk signals into ONE answer — EXECUTE / REVIEW / REJECT + SMRI (SolMachina Machine Risk Index 0-100) + confidence + full evidence. A transparent RISK GATE against stated thresholds — NOT financial advice, NOT a profit prediction; returns REVIEW/unknown instead of guessing. Requires ?mint=<token mint address>; optional ?action=, ?amountUsd=, and a named firewall ?policy= (conservative|bluechip|anti-rug|degen).
入力スキーマ
{
"type": "object",
"properties": {
"mint": {
"type": "string",
"description": "Base58 SPL token mint to assess, e.g. DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263 (BONK)."
},
"action": {
"type": "string",
"description": "Single nonblank context string; default assess. Does not execute an action."
},
"amountUsd": {
"type": "string",
"description": "Single finite non-negative decimal USD amount, context only; does not change the score. No exponent notation or repeated values."
},
"tx": {
"type": "string",
"description": "Optional base64 serialized transaction to BIND the signed authorization to: the response's authorization.subject.boundTxSha256 = sha256(tx), so your executor honors it only for that exact transaction (Proof-of-Decision per-tx). Also decoded OFFLINE to cross-check that the tx actually references the guarded mint — authorization.subject.txReferencesGuardedMint = true | false | \"unknown\"."
},
"minSmri": {
"type": "number",
"description": "Agent Financial Firewall — your policy: require SMRI >= this (0-100). Adds policy.verdict = ALLOW/DENY (fail-closed)."
},
"maxConcentrationPct": {
"type": "number",
"description": "Firewall: DENY if top-10 holder concentration exceeds this %."
},
"minConfidence": {
"type": "number",
"description": "Firewall: DENY if data confidence is below this (0-1)."
},
"denyMintAuthority": {
"type": "boolean",
"description": "Firewall: DENY if the mint authority is still set."
},
"denyFreezeAuthority": {
"type": "boolean",
"description": "Firewall: DENY if the freeze authority is still set."
},
"denyHighRiskBand": {
"type": "boolean",
"description": "Firewall: DENY if the token-risk band is 'high'."
},
"denyTxMintMismatch": {
"type": "boolean",
"description": "Firewall (needs ?tx=): DENY on a CONFIRMED mismatch — the bound transaction provably does not reference the guarded mint. A tx that uses address-lookup-tables, or no tx at all, is not evaluable, so the rule passes (never a fabricated mismatch)."
},
"policy": {
"type": "string",
"description": "Named firewall preset: conservative | bluechip | anti-rug | degen — expands to a full ALLOW/DENY policy (the individual params above override preset values). The response echoes policyTemplate."
}
},
"required": [
"mint"
]
}⚪solmachina_token_holders(mint)
Solana SPL token holder distribution / whale map: the largest token accounts (up to 20) each with its share of supply, plus top-1/5/10/20 concentration and simple buckets. More detailed than /v1/token-risk's single top-10 signal. Owners are NOT resolved and an account is not necessarily a distinct wallet; concentration is a structural signal, NOT a verdict. NOT financial advice. Requires ?mint=<token mint address>.
入力スキーマ
{
"type": "object",
"properties": {
"mint": {
"type": "string",
"description": "Base58 SPL token mint address, e.g. DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263 (BONK). Major stablecoins like USDC have too many accounts to snapshot."
}
},
"required": [
"mint"
]
}⚪solmachina_slippage_map(inputMint, outputMint, amount, slippageBps, mults)
Solana swap slippage / price-impact curve by trade SIZE: quotes the same pair at decade multiples of your base amount (via the Jupiter aggregator) and returns the impact per size plus a factual depth summary (largest tested size that stays under 1% / 5% impact). Execution intelligence beyond a single /v1/dex-quote. A quote, NOT an execution guarantee. NOT financial advice. Requires ?inputMint=&outputMint=&amount= (input base units).
入力スキーマ
{
"type": "object",
"properties": {
"inputMint": {
"type": "string",
"description": "Base58 mint you are selling, e.g. So11111111111111111111111111111111111111112 (SOL)."
},
"outputMint": {
"type": "string",
"description": "Base58 mint you are buying, e.g. EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v (USDC)."
},
"amount": {
"type": "string",
"description": "Base units of inputMint for the 1x reference size (lamports for SOL, 1e6 per USDC)."
},
"slippageBps": {
"type": "integer",
"description": "Slippage tolerance in basis points for min-received, 0-5000 (default 50)."
},
"mults": {
"type": "string",
"description": "Optional comma-separated size multipliers of the base amount (default 0.1,1,10,100; up to 8)."
}
},
"required": [
"inputMint",
"outputMint",
"amount"
]
}⚪solmachina_tipfloor(fresh)
Jito bundle tip-floor snapshot + rolling history (p50/p95/p99/EMA). Optional ?fresh=true bypasses the ~60s cache for a live snapshot.
入力スキーマ
{
"type": "object",
"properties": {
"fresh": {
"type": "boolean",
"description": "If 'true', bypass the ~60s cache and fetch a live tip-floor snapshot (otherwise a cached snapshot is served)."
}
},
"required": []
}⚪solmachina_epoch(rate)
Live epoch info + ETA to epoch end (dual measured slot-rates labeled). Optional ?rate= selects which measured rate drives the ETA.
入力スキーマ
{
"type": "object",
"properties": {
"rate": {
"type": "string",
"description": "Which measured slot-rate to use for the ETA: 'primary', 'alt', or 'both' (default)."
}
},
"required": []
}🟢solmachina_kamino_markets(limit)
Kamino mainnet market list (trimmed JSON). Optional ?limit caps how many markets are returned.
入力スキーマ
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"description": "Max markets to return, 1-100 (default 100)."
}
},
"required": []
}⚪solmachina_sgp_checkpoint(n)
SolMachina's own Solana epoch-transition checkpoint series: the live epoch/slot reading (getEpochInfo via multi-RPC) measured against our accumulating on-disk series to yield a MEASURED slot-rate + ETA (not a model) and last epoch-transition detection. Optional ?n sets how many recent series points to return.
入力スキーマ
{
"type": "object",
"properties": {
"n": {
"type": "integer",
"description": "How many most-recent series points to include in `series.recent`, 1-200 (default 20)."
}
},
"required": []
}⚪solmachina_token_risk(mint)
Heuristic Solana SPL token risk/signal scan: mint + freeze authority, Token-2022 dangerous extensions, top-10 holder concentration, plus best-effort holder-count/age context. Transparent methodology, conservative (reports 'unknown' over guessing). NOT financial advice. Requires ?mint=<token mint address>.
入力スキーマ
{
"type": "object",
"properties": {
"mint": {
"type": "string",
"description": "Base58 SPL token mint address to scan, e.g. EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v (USDC)."
}
},
"required": [
"mint"
]
}⚪solmachina_wallet_scan(address)
Solana wallet activity profile: age, transaction activity, SOL balance, SPL token holdings, and a factual footprint band (fresh/active/heavy/empty). Transparent, conservative ('unknown' over guessing), never a trust/scam judgement. NOT financial advice. Requires ?address=<wallet address>.
入力スキーマ
{
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "Base58 Solana wallet address to profile."
}
},
"required": [
"address"
]
}⚪solmachina_token_intel(mint)
One-call Solana token intelligence bundle: the full token-risk analysis PLUS a decision-ready executive digest and factual top-holder classification (burn/system labels; unknowns left unresolved with owner exposed). Verdict-free, transparent, conservative ('unknown' over guessing). NOT financial advice. Requires ?mint=<token mint address>.
入力スキーマ
{
"type": "object",
"properties": {
"mint": {
"type": "string",
"description": "Base58 SPL token mint address to profile, e.g. DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263 (BONK)."
}
},
"required": [
"mint"
]
}⚪solmachina_batch_token_risk(mints)
Batch heuristic risk scan for up to 10 SPL token mints in ONE call (mint + freeze authority, Token-2022 dangerous extensions, top-10 holder concentration per token). A portfolio/watchlist bundle over the token-risk engine; each mint returns its own result or an explicit error. Transparent, conservative ('unknown' over guessing). NOT financial advice. Requires ?mints=<comma-separated mint addresses>.
入力スキーマ
{
"type": "object",
"properties": {
"mints": {
"type": "string",
"description": "Comma-separated base58 SPL mint addresses, up to 10 (duplicates removed), e.g. mintA,mintB,mintC."
}
},
"required": [
"mints"
]
}🟡solmachina_priority_fee(accounts)
Solana priority-fee intelligence: the observed distribution (percentiles + suggested economy/normal/fast/aggressive bands) of prioritization fees actually paid in recent slots, in micro-lamports per compute unit. Optional ?accounts= narrows to txs write-locking specific markets. Observed history, NOT a prediction or inclusion guarantee.
入力スキーマ
{
"type": "object",
"properties": {
"accounts": {
"type": "string",
"description": "Optional comma-separated base58 addresses to narrow the fee sample to transactions that write-locked them (e.g. a hot AMM pool)."
}
},
"required": []
}⚪solmachina_dex_quote(inputMint, outputMint, amount, slippageBps)
Live aggregated Solana swap quote from the Jupiter aggregator: best-route output, price impact with stated thresholds (minimal/low/moderate/high), min-received after slippage, transparent route path, USD value and a freshness slot. A quote, NOT an execution guarantee (impact/liquidity move block to block). NOT financial advice. Requires ?inputMint=&outputMint=&amount= (amount in the input token's base units).
入力スキーマ
{
"type": "object",
"properties": {
"inputMint": {
"type": "string",
"description": "Base58 mint you are selling, e.g. So11111111111111111111111111111111111111112 (SOL)."
},
"outputMint": {
"type": "string",
"description": "Base58 mint you are buying, e.g. EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v (USDC)."
},
"amount": {
"type": "string",
"description": "Amount of inputMint in its base units (lamports for SOL, 1e6 per USDC)."
},
"slippageBps": {
"type": "integer",
"description": "Slippage tolerance in basis points for min-received, 0-5000 (default 50 = 0.5%)."
}
},
"required": [
"inputMint",
"outputMint",
"amount"
]
}⚪solmachina_trending_tokens(limit)
Observed trending Solana tokens/pools (GeckoTerminal ranking of recent volume + activity): name, base mint, price + 1h/6h/24h change, 24h volume, liquidity, FDV, market cap, tx counts and pool age. Market-activity facts, NOT a recommendation, prediction or 'pump' signal — high volume does not imply safety. NOT financial advice. Optional ?limit (1-20, default 15).
入力スキーマ
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"description": "How many trending pools to return, 1-20 (default 15)."
}
},
"required": []
}⚪solmachina_new_pairs(limit)
Newest Solana liquidity pools (GeckoTerminal): name, base mint, creation time, age in minutes, liquidity, 24h volume and price change. New pools are UNVETTED and structurally high-risk — pair each mint with /v1/token-risk before acting. Factual observation only, NOT a recommendation. NOT financial advice. Optional ?limit (1-20, default 15).
入力スキーマ
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"description": "How many new pools to return, 1-20 (default 15)."
}
},
"required": []
}⚪solmachina_nft_collection(symbol)
Solana NFT collection snapshot from Magic Eden: floor price (SOL + lamports), listed count, 24h average price and 7-day volume. The floor is the lowest CURRENT ask (not a guaranteed sale price) and moves continuously. Factual snapshot, NOT a recommendation. NOT financial advice. Requires ?symbol=<Magic Eden collection symbol>.
入力スキーマ
{
"type": "object",
"properties": {
"symbol": {
"type": "string",
"description": "Magic Eden collection symbol, e.g. mad_lads or okay_bears."
}
},
"required": [
"symbol"
]
}🟢solmachina_tx_inspect(sig)
Decode a Solana transaction into a structured summary: success/fee/compute-units, the programs it invoked (named for well-known ones), SOL balance deltas and SPL token balance deltas. Reports on-chain effects only, never intent. Requires ?sig=<transaction signature>.
入力スキーマ
{
"type": "object",
"properties": {
"sig": {
"type": "string",
"description": "Base58 Solana transaction signature to decode."
}
},
"required": [
"sig"
]
}⚪solmachina_pretrade(mint)
One-call PRE-TRADE SWEEP for a token: the full token-intel bundle (risk + executive digest + factual holder classification) PLUS a wallet-activity profile of the largest remaining holder PLUS observed priority-fee landing bands, distilled into a factual, threshold-stated checklist. Verdict-free (never 'buy'/'avoid'); partial sub-analyses are explicit errors, never silence. NOT financial advice. Requires ?mint=<token mint address>.
入力スキーマ
{
"type": "object",
"properties": {
"mint": {
"type": "string",
"description": "Base58 SPL token mint address to sweep, e.g. DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263 (BONK)."
}
},
"required": [
"mint"
]
}コミュニティ
エビデンス