Skip to main content
Glama

Server Details

Parallel Solana token risk and transaction safety for AI agents. Paid MCP tools inspect tokens and unsigned transactions; the HTTP risk panel queries compatible advisors in parallel and returns an indicative consensus. x402-compatible clients pay USDC automatically, with no signup or API key.

Ownership verified
Status
Healthy
Uptime
100.0% over 20 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.2/5.0

Scored across 5 tools

Disambiguation4/5

The two check tools are clearly split by input type (mint address vs unsigned transaction), and the job lifecycle tools (get_job_result, retry_failed_job) are distinct. However, check_solana_token_risk and quote_solana_risk_panel could be confused since both concern Solana token risk assessment, requiring careful reading of descriptions.

Naming Consistency5/5

All five tools use consistent snake_case with a verb-first pattern (check_, get_, quote_, retry_). The convention is uniform and predictable throughout.

Tool Count5/5

Five tools is well-scoped for a paid risk-check service: two domain checks plus three supporting lifecycle/quote tools. Every tool has a clear purpose and none feels redundant.

Completeness4/5

The core workflows (token risk, transaction simulation, job polling, retry, panel quoting) are covered with full async lifecycle. Minor gap: quote_solana_risk_panel only returns an HTTP URL, so there is no MCP tool to actually execute the advisor panel call, and no way to list or cancel outstanding jobs.

Available Tools

5 tools
check_solana_token_riskInspect

Use before buying a pump.fun token when you have its Solana mint address. Returns advisory flags evaluated on selected historical tokens; no flags does not mean safe. Optional idempotency_key is random 32-byte base64url. A signed call waits up to 20 seconds for analysis and can settle without a key. If still processing, echo the unpaid job_id with the same proof and mint when ready. get_job_result reports processing and retry_after_s for free; the result appears there only after settlement. Costs $0.01 USDC via x402.

ParametersJSON Schema
NameRequiredDescriptionDefault
mintYesBase58 Solana token mint address to check before buying; not a transaction or token symbol.
job_idNoAccepted job ID to echo with the original payment proof and identical inputs when recovering a call made without idempotency_key.
prefer_asyncNoIf work is queued or running, return a job status instead of waiting for completion. Poll get_job_result for free, then retry this tool with the same payment proof and inputs when ready; payment does not settle while processing.
idempotency_keyNoOptional canonical base64url encoding of 32 random bytes. Reuse with the original payment proof and identical inputs to recover a lost reply.
check_solana_transactionInspect

Use before signing an unsigned Solana transaction, not for a token mint alone. Provide a real unsigned Solana transaction serialized as base64, with optional signer and expected intent. Malformed input is rejected before payment. Simulation returns ALLOW, WARN or BLOCK with reasons and balance changes. Optional idempotency_key is random 32-byte base64url. A signed call waits up to 20 seconds for analysis and can settle without a key. If still processing, echo the unpaid job_id with the same proof and arguments when ready. get_job_result reports processing and retry_after_s for free; the result appears there only after settlement. Costs $0.01 USDC via x402.

ParametersJSON Schema
NameRequiredDescriptionDefault
intentNoOptional expected action object. Supported keys: max_sol_out (nonnegative SOL amount), expected_mints_in (array of base58 Solana token mint addresses), allowed_recipients (array of base58 Solana addresses). No other keys.
job_idNoAccepted job ID to echo with the original payment proof and identical inputs when recovering a call made without idempotency_key.
signerNoOptional base58 Solana address that must be a required transaction signer; omit to use the fee payer.
transactionYesReal unsigned Solana transaction (legacy or v0), serialized as base64; not a token mint or example placeholder.
prefer_asyncNoIf work is queued or running, return a job status instead of waiting for completion. Poll get_job_result for free, then retry this tool with the same payment proof and inputs when ready; payment does not settle while processing.
idempotency_keyNoOptional canonical base64url encoding of 32 random bytes. Reuse with the original payment proof and identical inputs to recover a lost reply.
get_job_resultInspect

Poll an accepted job for free. A paid job reports processing, ready, or failed without revealing its result before settlement; retry_after_s gives the next polling delay, capped at two minutes. An uncertain payment reports needs_review with no automatic retry: keep the job ID and contact support without another payment. After confirmed settlement, retrieve the saved result.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesJob ID returned by a paid check or accepted queued request. Poll for status without another payment; a settled result is available here.
quote_solana_risk_panelInspect

Free quote for the paid HTTP panel of parallel Solana risk advisors. Pass a Solana mint and optionally comma-separated public advisor aliases from GET /v1/advisors and a CAIP-2 token chain. Returns a canonical HTTP URL and estimated total in USDC; does not call or pay advisors. The URL's HTTP 402 payment quote is authoritative. The HTTP panel supports prefer_async=true: poll its status_url for free and, when ready, retry the original URL and proof with its job handle or original key, without a new payment.

ParametersJSON Schema
NameRequiredDescriptionDefault
mintYesBase58 Solana token mint address to analyze through the paid HTTP panel.
chainNoOptional CAIP-2 network ID of the token being analyzed, not the payment network. Defaults to Solana mainnet; other token chains are currently unsupported.
advisorsNoOptional comma-separated public advisor aliases from free GET /v1/advisors; omit to select all enabled advisors compatible with the token chain.
retry_failed_jobAInspect

Retry a failed paid job for free. Transaction and token checks each have one manual retry per job ID; if it still fails, keep the job ID and contact rugshield@fastsoftware.uk for review. There is no automatic refund.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesJob ID of a failed paid transaction or token check. Retry that job for free after get_job_result reports failure.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does real work: it discloses that retries are free, that each job ID gets only one manual retry per transaction/token check, that there is no automatic refund, and that unresolved failures go to a support address with the job ID retained. It omits whether the retry re-executes asynchronously and what the immediate response indicates.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, no filler, and the core action and its 'for free' benefit are front-loaded. The middle sentence is dense (mixing the retry limit, failure path, and contact instructions) but every clause carries actionable information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter tool with no annotations and no output schema, the description covers the key facts an agent needs: when it applies, the retry budget, cost, and what to do if the retry fails. The only gap is what the tool returns on success, which would tell the agent whether to poll get_job_result again.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds meaning the schema alone does not: the job ID must be a *failed* paid transaction or token check, and the retry-per-job-ID budget is a property of that identifier rather than an extra input.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Retry a failed paid job') plus a notable scope modifier ('for free'), and ties itself into the paid-job workflow via 'Transaction and token checks'. It is clearly distinguishable from the check_* siblings and get_job_result, though it never names a sibling tool outright.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The schema text gives an explicit precondition ('after get_job_result reports failure'), and the description adds the retry budget ('one manual retry per job ID') and the escalation path when it still fails. What's missing is an explicit statement of what NOT to use it for (e.g. successful jobs), so it stops short of a full when/when-not pair.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updates
    • Changedcheck_solana_token_risk4 fields changed
      • addedInput schema / properties / idempotency_key / description
        Added value: +"Optional canonical base64url encoding of 32 random bytes. Reuse with the original payment proof and identical inputs to recover a lost reply."
      • addedInput schema / properties / job_id / description
        Added value: +"Accepted job ID to echo with the original payment proof and identical inputs when recovering a call made without idempotency_key."
      • addedInput schema / properties / mint / description
        Added value: +"Base58 Solana token mint address to check before buying; not a transaction or token symbol."
      • addedInput schema / properties / prefer_async / description
        Added value: +"If work is queued or running, return a job status instead of waiting for completion. Poll get_job_result for free, then retry this tool with the same payment proof and inputs when ready; payment does not settle while processing."
    • Changedcheck_solana_transaction6 fields changed
      • addedInput schema / properties / idempotency_key / description
        Added value: +"Optional canonical base64url encoding of 32 random bytes. Reuse with the original payment proof and identical inputs to recover a lost reply."
      • addedInput schema / properties / intent / description
        Added value: +"Optional expected action object. Supported keys: max_sol_out (nonnegative SOL amount), expected_mints_in (array of base58 Solana token mint addresses), allowed_recipients (array of base58 Solana addresses). No other keys."
      • addedInput schema / properties / job_id / description
        Added value: +"Accepted job ID to echo with the original payment proof and identical inputs when recovering a call made without idempotency_key."
      • addedInput schema / properties / prefer_async / description
        Added value: +"If work is queued or running, return a job status instead of waiting for completion. Poll get_job_result for free, then retry this tool with the same payment proof and inputs when ready; payment does not settle while processing."
      • addedInput schema / properties / signer / description
        Added value: +"Optional base58 Solana address that must be a required transaction signer; omit to use the fee payer."
      • addedInput schema / properties / transaction / description
        Added value: +"Real unsigned Solana transaction (legacy or v0), serialized as base64; not a token mint or example placeholder."
    • Changedget_job_result1 field changed
      • addedInput schema / properties / job_id / description
        Added value: +"Job ID returned by a paid check or accepted queued request. Poll for status without another payment; a settled result is available here."
    • Changedquote_solana_risk_panel3 fields changed
      • addedInput schema / properties / advisors / description
        Added value: +"Optional comma-separated public advisor aliases from free GET /v1/advisors; omit to select all enabled advisors compatible with the token chain."
      • addedInput schema / properties / chain / description
        Added value: +"Optional CAIP-2 network ID of the token being analyzed, not the payment network. Defaults to Solana mainnet; other token chains are currently unsupported."
      • addedInput schema / properties / mint / description
        Added value: +"Base58 Solana token mint address to analyze through the paid HTTP panel."
    • Changedretry_failed_job1 field changed
      • addedInput schema / properties / job_id / description
        Added value: +"Job ID of a failed paid transaction or token check. Retry that job for free after get_job_result reports failure."
  2. 3 tool updates
    • Changedcheck_solana_token_risk4 fields changed
      • removedInput schema / properties / idempotency_key / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedInput schema / properties / idempotency_key / type
        Added value: +"string"
      • removedInput schema / properties / job_id / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedInput schema / properties / job_id / type
        Added value: +"string"
    • Changedcheck_solana_transaction9 fields changed
      • removedInput schema / properties / idempotency_key / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedInput schema / properties / idempotency_key / type
        Added value: +"string"
      • addedInput schema / properties / intent / additionalProperties
        Added value: +true
      • removedInput schema / properties / intent / anyOf
        Removed value: -[
        -  {
        -    "additionalProperties": true,
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedInput schema / properties / intent / type
        Added value: +"object"
      • removedInput schema / properties / job_id / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedInput schema / properties / job_id / type
        Added value: +"string"
      • removedInput schema / properties / signer / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedInput schema / properties / signer / type
        Added value: +"string"
    • Changedquote_solana_risk_panel4 fields changed
      • removedInput schema / properties / advisors / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedInput schema / properties / advisors / type
        Added value: +"string"
      • removedInput schema / properties / chain / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedInput schema / properties / chain / type
        Added value: +"string"
  3. 2 tool updates
    • Changedcheck_solana_token_risk2 fields changed
      • addedInput schema / properties / idempotency_key
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Idempotency Key"
        +}
      • addedInput schema / properties / job_id
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Job Id"
        +}
    • Changedcheck_solana_transaction2 fields changed
      • addedInput schema / properties / idempotency_key
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Idempotency Key"
        +}
      • addedInput schema / properties / job_id
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Job Id"
        +}
  4. 1 tool update
    • Addedquote_solana_risk_panel
  5. 4 tool updates
    • First observedcheck_solana_token_risk
    • First observedcheck_solana_transaction
    • First observedget_job_result
    • First observedretry_failed_job

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Gives AI trading agents machine-readable trust and risk verdicts on Solana by checking whether a wallet's realized PnL makes it worth copying, where its funds came from, whether a token is structurally safe, and what a given trade size would really cost in slippage. Exposes these four checks as MCP tools callable against a hosted x402 pay-per-call API, so agents can hard-stop bad trades without RPC keys, signup, or local setup.
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    On-chain Solana token safety for trading agents — traces coordinated wallet funding, same-block Jito bundles, serial-rug deployers and live coordinated dumps into one Exit-Liquidity Risk verdict before a swap. Free tier, then $0.02 USDC/query via x402.
    1
    52 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    F
    maintenance
    MCP server for real-time Solana token risk analysis. Cross-references RugCheck.xyz, DexScreener, and GoPlus Security to generate three-layer reports: machine verdict → LLM analysis → raw on-chain evidence. Live on Solana mainnet with USDC micropayments ($0.02/audit). Give any AI agent the ability to check if a token is safe before trading.
    2
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources