protogrid

Search / io.github.pipeworx-io/solana-rpc

Solana Rpc

R0· no sign-in

Solana RPC (keyless)

v0.2.1 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality–not scored
Trust96of 100
Uptime, 30 days99%
Latency p5040 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "solana-rpc": {
      "type": "http",
      "url": "https://gateway.pipeworx.io/solana-rpc/mcp"
    }
  }
}
claude mcp add --transport http solana-rpc https://gateway.pipeworx.io/solana-rpc/mcp
[mcp_servers.solana-rpc]
url = "https://gateway.pipeworx.io/solana-rpc/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "solana-rpc": {
      "type": "remote",
      "url": "https://gateway.pipeworx.io/solana-rpc/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "solana-rpc": {
      "type": "http",
      "url": "https://gateway.pipeworx.io/solana-rpc/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=solana-rpc&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vZ2F0ZXdheS5waXBld29yeC5pby9zb2xhbmEtcnBjL21jcCJ9"
}
{
  "servers": {
    "solana-rpc": {
      "type": "http",
      "url": "https://gateway.pipeworx.io/solana-rpc/mcp"
    }
  }
}
{
  "mcpServers": {
    "solana-rpc": {
      "httpUrl": "https://gateway.pipeworx.io/solana-rpc/mcp"
    }
  }
}
extensions:
  "solana-rpc":
    enabled: true
    name: "solana-rpc"
    type: streamable_http
    uri: "https://gateway.pipeworx.io/solana-rpc/mcp"
    timeout: 300

Quality – / 100not scored

Not scored: fewer than three checks apply, usually because no remote answered a credential-free probe or the server is a local package.

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-03-26; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygienen/a · weight 30
  • n/a
    tools.descriptions, tools.description_length, tools.schemas, tools.annotations, tools.directory_hints, tools.token_cost, tools.api_dumptool list unknown (behind auth, not probed, or empty)
stabilityn/a · weight 15
  • n/a
    stability.changes, stability.rug_pulltool list unknown
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

Tool list unknown · tools last changed 2026-10-20 · checked 2026-10-20 18:38 UTC

Tool changes

  • solana_token_holdersremoved

    Top holders of a Solana SPL token by mint address: the largest token accounts ranked by balance, each with its owner wallet address, token-account address, raw and decimal balance and percentage of total supply, plus the mint's total supply, decimals and the share the top holders control together. Answers "who are the biggest holders of this Solana token" and "how concentrated is its supply". Sourced live from public Solana JSON-RPC (getTokenLargestAccounts, getTokenSupply, getMultipleAccounts); up to 20 holders from most endpoints, up to 100 where the node allows.

  • solana_transactionremoved

    Details of one Solana transaction by signature: block time, slot, fee, success or failure, signers, the programs and instruction types it invoked, SOL balance changes per account, and SPL token balances before and after. Answers "what did this Solana transaction actually do". Sourced live from public Solana JSON-RPC (getTransaction).

  • solana_wallet_transactionsremoved

    Recent transaction history for a Solana address: signature, slot, block time, success or failure, and memo for each transaction, newest first, with a cursor for paging further back. Answers "what has this Solana wallet done lately". Sourced live from public Solana JSON-RPC (getSignaturesForAddress).

  • recallremoved

    Retrieve a value previously saved via remember, or list all saved keys (omit the key argument). Use to look up context the agent stored earlier — the user's target ticker, an address, prior research notes — without re-deriving it from scratch. Scoped to your identifier (anonymous IP, BYO key hash, or account ID). Pair with remember to save, forget to delete.

  • rememberremoved

    Save data the agent will need to reuse later — across this conversation or across sessions. Use when you discover something worth carrying forward (a resolved ticker, a target address, a user preference, a research subject) so you don't have to look it up again. Stored as a key-value pair scoped by your identifier. Authenticated users get persistent memory; anonymous sessions retain memory for 24 hours. Pair with recall to retrieve later, forget to delete.

  • generate_llms_txtremoved

    Generate a production-ready llms.txt file for any URL so AI crawlers (ChatGPT, Claude, Perplexity) can index the site cleanly. Fetches the page, extracts title/description/key links, and emits the standard llms.txt markdown format. Output is a single text blob ready to drop at site-root/llms.txt. Useful for: getting a client's site indexed by AI, drafting llms.txt for your own project, or auditing how an AI crawler would see a competitor.

  • suggest_questionsremoved

    What can I ask Pipeworx? / what is Pipeworx good for? / what can you do? / give me ideas / show me examples / getting started / what data do you have? — the onboarding entry point for an agent that just connected and wants to know what is worth asking. Returns category-bucketed example questions (company financials, drugs & clinical trials, economics, real estate, prediction markets, weather, government & patents, science & academia, news) — each with the exact tool + argument shape that answers it, drawn from the live catalog of thousands of tools. Call with no arguments for the full spread, or pass `topic` (e.g. "finance", "pharma", "betting") to focus. Use this FIRST when you do not yet know what Pipeworx can do for you, or to learn how to call the meta-tools (ask_pipeworx, entity_profile, compare_entities, etc.).

  • research_rowremoved

    Claygent-style per-row research: answer ONE question about ONE company and return a JSON object matching your output_schema, with every field wrapped in its own evidence — {value, evidence_url, quote, status}. status is NEVER self-reported by the model: "found" means this code independently verified the model's quote is a VERBATIM substring of text actually fetched; "inferred" means a value was given but the quote could not be verified; "not_established" means no source answered the field, and its value is always null — never guessed, never a blended score. Sources: "web" fetches the company's own site (entity.domain required — homepage, /about, /leadership) via fetch_url; "catalog" checks entity_profile (SEC EDGAR; resolved:false for a private company is expected, not a failure); "both" (default) tries both. max_cost (USD, default 0.02, max 0.50) scales how many pages are fetched and refuses up front if it is too small to pay for even one extraction call (floor $0.002) — never silently overspends. A row where every source comes back empty costs nothing: every field is mechanically not_established with NO model call made. For a boolean/derived field (e.g. "does this company sell to healthcare"), the quote only has to SUPPORT the value — a descriptive sentence about customers/products counts, the source need not state the answer verbatim. leadership_page_status ("fetched"|"not_found"|"not_attempted", plus leadership_note) says plainly whether a leadership/team page was actually read, so a named-person field (head_of_sales) coming back not_established is distinguishable from "this company just doesn't publish one" vs. "we never checked". model_output_empty:true means the model returned nothing usable (a transport/budget problem) — every field is not_established for THAT reason, never read as 20 individual "no" judgments. Use with a fixed question + schema across many rows for "Claygent over N companies with a hard cost cap" (composes with batch callers). For picking from a fixed label list instead of extracting open fields, use classify_row (cheaper, one model call).

  • archive_compareremoved

    What changed on a web page between two dates? Resolves the archived capture nearest each date (Internet Archive Wayback Machine, Common Crawl, Arquivo.pt), extracts the readable text of both, and returns a text-level diff: the segments removed and added, a similarity score, and both capture timestamps with their gaps from the requested dates. It diffs readable text, not markup, so a restyled page with the same words reads changed:false. Identical captures answer changed:false with the reason (same capture, identical content digest, or identical text), never an empty diff. A date with no capture within max_gap_days (default 30) answers status "no_capture", naming which side is missing and the nearest captures to it. Typical uses: how a privacy policy, terms of service, pricing or product page changed; whether a statement was on a page at a given time.

  • archive_evidenceremoved

    What did a web page say on a given date? Finds the archived capture of a URL nearest that date across the Internet Archive Wayback Machine, Common Crawl and Arquivo.pt, reads it, and returns the readable text (HTML stripped) with the capture timestamp, a link to the archived copy, and the GAP between the date asked for and the capture actually used (e.g. "Captured 1.5 day(s) before the requested date"). One call replaces the find-capture, fetch-record, parse-HTML chain. If no archive holds a capture within max_gap_days (default 30) it answers status "no_capture" and names the nearest capture before and after the date with their gaps, so a distant capture is never passed off as the page on that date. Every archive's outcome is listed in sources[]; one that timed out or errored says so with its upstream status, and if all of them failed the answer is error "archives_unavailable", not no_capture. Captures are immutable and cached by capture id; served_from says whether the text came from cache or upstream. Use archive_compare to see what changed between two dates.

Showing the latest 10. Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 96 / 100

provenance85
liveness100
freshness100
hygiene100

+repository +namespace-matches-repo +website -thin-description +reachable +uptime-99% +updated-26d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://gateway.pipeworx.io/solana-rpc/mcp streamable-httpnoneyes99%40 ms2025-03-262026-10-20

Tools (0)

No tools observed. Tools appear once a credential-free probe can list them.

Schemas: list_tools.

Similar MCP servers

More from io.github.pipeworx-io

And 1,855 more from this publisher.

Official server.json
{
  "name": "io.github.pipeworx-io/solana-rpc",
  "title": "Solana Rpc",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://gateway.pipeworx.io/solana-rpc/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "0.2.1",
  "repository": {
    "url": "https://github.com/pipeworx-io/mcp-solana-rpc",
    "source": "github"
  },
  "websiteUrl": "https://pipeworx.io/packs/solana-rpc",
  "description": "Solana RPC (keyless)"
}