Abstraxn Public Web3 MCP
OfficialProvides tools for querying live Solana blockchain data, including current slot, transaction/signature status, and multi-chain wallet/token lookups.
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., "@Abstraxn Public Web3 MCPWhat's the current gas price on Ethereum?"
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.
Abstraxn Public Web3 MCP Service
A free, public MCP (Model Context Protocol) server for Web3 data. Point any MCP client — Claude Desktop, Cursor, your own agent — at it and it can read live chain data (block height, gas, transaction status, ERC-20 info, spot prices), look up weather forecasts, build unsigned EVM/Solana transfer transactions, and, for a handful of pay-per-call tools, look up market data, wallets/tokens/ENS, travel search, places/solar/aerial-view data, and social-profile identity.
No API key, no account, no signup. Free tools are open to anyone; paid tools are settled directly from the caller's own wallet via the x402 payment protocol — this service never holds or signs funds on your behalf.
Built on the official @modelcontextprotocol/sdk
and NestJS 11.
Contents
Related MCP server: Onesource MCP
Quick start
git clone https://github.com/Abstraxn-Labs/abstraxn-agent-layer.git
cd abstraxn-agent-layer
npm install
cp .env.example .env
# Edit .env: Postgres connection + UPSTREAM_RELAY_BASE_URL / ENRICHMENT_RELAY_BASE_URL
# (each required for its own group of paid tools) + WEATHERAPI_KEY (required for weather.forecast)
npm run start:devHealth check:
GET http://localhost:3011/healthMCP endpoint:
POST http://localhost:3011/mcpAPI docs (health only):
http://localhost:3011/api/docs
Database migrations run automatically on boot — no separate CLI step needed.
Use it from Claude Desktop / Cursor
Add this to your MCP client's config (e.g. claude_desktop_config.json or Cursor's mcp.json):
{
"mcpServers": {
"abstraxn-public-web3": {
"url": "http://localhost:3011/mcp"
}
}
}Restart the client and the tools below become available to it — no further setup.
Available tools
Tool | Paid? | What it does |
| No | Current EVM block number or Solana slot. Query one chain or all at once. |
| No | Look up a transaction/signature by hash on EVM or Solana. |
| No | Current gas price + EIP-1559 fee hints for an EVM chain. |
| No | ERC-20 name / symbol / decimals / total supply. |
| No | Spot price via CoinGecko (defaults to ETH/USD). |
| No | Build an unsigned native/ERC-20/SPL transfer transaction from an explicit |
| No | Current conditions, forecast, astronomy, location search, historical, and marine weather lookups, 6 actions. |
| Yes | Crypto market-data lookups (CoinGecko-sourced), 6 actions. |
| Yes | Multi-chain wallet / token / ENS / tx-simulation lookups, 7 actions. |
| Yes | Flight and hotel search, 2 actions. |
| Yes | Place / solar / aerial-view lookups, 11 actions. |
| Yes | Person / social-profile identity resolution for a batch of records. |
Tools are namespaced by area (network.*, market.*, web3.*, travel.*, places.*,
social.*) so an MCP client can browse them as a tree rather than a flat list.
How paid tools work: call one with no payment, and you get back a paymentRequired challenge
(not an error). Your wallet client signs it and retries the same call with paymentPayload set —
your wallet pays directly; this service only relays the request.
Calling tools directly (curl)
Most people will use an MCP client (above), but the endpoint is plain JSON-RPC over HTTP if you want to script against it directly:
BASE=http://localhost:3011
ACCEPT='Accept: application/json, text/event-stream' # required by the MCP spec
# 1. Initialize a session
curl -s -X POST "$BASE/mcp" -H 'Content-Type: application/json' -H "$ACCEPT" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"my-client","version":"1.0"}}}'
# 2. List available tools
curl -s -X POST "$BASE/mcp" -H 'Content-Type: application/json' -H "$ACCEPT" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
# 3. Call a tool
curl -s -X POST "$BASE/mcp" -H 'Content-Type: application/json' -H "$ACCEPT" \
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"network.token_price","arguments":{"symbol":"bitcoin"}}}'GET /mcp returns 405 by design — every call is stateless, so there's no session to resume.
Configuration
Copy .env.example to .env. Everything has a safe default except the one
marked required:
Variable | Required | Description |
| No | HTTP port (default |
| No | Postgres connection, used only for abuse tracking |
| No | Global per-IP rate limit (default 30/min) |
| No | Per-chain EVM RPC overrides — public defaults are used if unset (see |
| No | Solana cluster RPC overrides |
| Yes | Free API key for |
| Yes | Upstream base URL for |
| Yes | Base URL for the upstream relay behind |
| Yes | Base URL for the upstream relay behind |
How it works
MCP client (Claude Desktop, Cursor, your agent)
→ POST /mcp (this service, stateless — a fresh McpServer per request)
→ free tools: direct chain RPC / CoinGecko calls
→ paid tools: relayed upstream, settled by the caller's wallet via x402This is a single, standalone deployable — it doesn't share a workspace or database with any other Abstraxn service. That's deliberate: several MCP registries expect a public MCP server to live in its own repo with one route and one fixed tool set, reviewable end to end.
Stack: Node.js 20+ · NestJS 11 · @modelcontextprotocol/sdk
^1.30.0 (official SDK) · PostgreSQL + TypeORM · @x402/core ·
viem (EVM) + raw JSON-RPC (Solana reads) · @solana/web3.js + @solana/spl-token (Solana
transfer building) · @skalenetwork/bite (SKALE privacy-encrypted transfers) · helmet,
@nestjs/throttler
Database
Postgres is used for abuse tracking only — no tenant, policy, or config tables exist:
Table | Purpose |
| One row per caller IP, with a running call count and last-seen time. |
| One row per wallet address seen paying via x402. |
| Append-only history of completed paid calls. |
If Postgres is unreachable, a call still succeeds — tracking writes are best-effort and never block or fail a real MCP request.
Security
Since anyone can call this service with no key, a few invariants matter:
No SSRF surface: every outbound URL (chain RPC, upstream relay, CoinGecko) comes from server-side config — no tool accepts a caller-supplied URL.
Rate limiting is global and IP-keyed — the only lever available with no accounts. If you deploy behind a reverse proxy, set
app.set('trust proxy', ...)inmain.ts, or the limiter ends up rate-limiting the proxy instead of real callers.No secrets beyond the DB password and
WEATHERAPI_KEY, both env-only and never logged —weather.forecastbuilds its provider request URL with the key as a query param, but every log line only ever carries the action name and error message, never the URL itself.CORS is wildcard by design — nothing tenant-specific ever crosses an origin here.
Found a security issue? See CONTRIBUTING.md before opening a public issue.
Scripts
Script | Description |
| Run in watch mode |
| Compile to |
| Run the compiled build ( |
| ESLint |
| Jest — unit, SDK-level integration, and HTTP smoke tests |
Contributing
Issues and PRs are welcome — see CONTRIBUTING.md for how to add a new tool and the project's definition of done.
License: MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
33 pay-per-call market and news data tools over MCP with free discovery and x402 payments.
8 pay-per-call web intel tools over MCP. Free discovery, calls settle in USDC on Base (x402).
MCP server with quote and live cryptocurrency price tools, local and cloud-deployed transports.
MCP server index: newest agent tools listed. $0.01/query. Register in-session — free testnet funds.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceMCP server providing real-time crypto prices (Chainlink + Binance), Polymarket prediction market data, deep web research, and JS-rendered web scraping. All services available via x402 Solana micropayments.MIT
- AlicenseAqualityBmaintenanceMCP server with 43 tools for blockchain data — token lookups, wallet balances, live chain queries across 10+ networks, and full API documentation search.27120 npmApache 2.0
- AlicenseNot gradedqualityCmaintenancePay-per-call MCP server offering crypto market signals, web page extraction, and GitHub repo auditing, with automatic settlement in USDC via the x402 protocol.MIT
- AlicenseNot gradedqualityCmaintenanceMCP server providing 50+ crypto, market intelligence, and AI inference endpoints with x402 pay-per-request micropayments on Base.1Apache 2.0