Search / io.github.Dansgit2b/lumenworks-decoder
Lumen Agent Utilities
not classifiedx402 agent tools: calldata/EIP-712/x402 decoders, web→MD, ENS, DNS, PubMed, arXiv, SEC, weather
v1.4.0 · active · repository · descriptor JSON · versions
Search / io.github.Dansgit2b/lumenworks-decoder
x402 agent tools: calldata/EIP-712/x402 decoders, web→MD, ENS, DNS, PubMed, arXiv, SEC, weather
v1.4.0 · active · repository · descriptor JSON · versions
{
"mcpServers": {
"lumenworks-decoder": {
"type": "http",
"url": "https://lumenworks-x402-decoder.onrender.com/mcp"
}
}
}claude mcp add --transport http lumenworks-decoder https://lumenworks-x402-decoder.onrender.com/mcp[mcp_servers.lumenworks-decoder]
url = "https://lumenworks-x402-decoder.onrender.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"lumenworks-decoder": {
"type": "remote",
"url": "https://lumenworks-x402-decoder.onrender.com/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"lumenworks-decoder": {
"type": "http",
"url": "https://lumenworks-x402-decoder.onrender.com/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=lumenworks-decoder&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbHVtZW53b3Jrcy14NDAyLWRlY29kZXIub25yZW5kZXIuY29tL21jcCJ9"
}{
"servers": {
"lumenworks-decoder": {
"type": "http",
"url": "https://lumenworks-x402-decoder.onrender.com/mcp"
}
}
}{
"mcpServers": {
"lumenworks-decoder": {
"httpUrl": "https://lumenworks-x402-decoder.onrender.com/mcp"
}
}
}extensions:
"lumenworks-decoder":
enabled: true
name: "lumenworks-decoder"
type: streamable_http
uri: "https://lumenworks-x402-decoder.onrender.com/mcp"
timeout: 300
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky onestools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: eip712_decode (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); web_markdown (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); x402_lint (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …tools.token_costabout 1,970 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changes8 tool changes in 30 daysstability.rug_pull1 tools kept their name but changed most of their description in 30 days; review before trusting themdeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packagecalldata_decodechangeddescription, input schemameaning changedDecode Ethereum calldata: selector, 4byte/openchain signature lookup, ABI-decoded args for each matching candidate. Optional {signature} override.
Use when you hold raw EVM calldata and need to know what function it calls: returns selector, matching signatures (built-in + openchain/4byte) and ABI-decoded args for each candidate; unknown selectors return signaturesFound:0 instead of an error. Optional {signature} override. Example: 0xa9059cbb… -> transfer(address,uint256) with args. $0.002, no signup; not charged if the call errors.
polymarket_marketsaddedRead-only Polymarket prediction-market data: search by {query} or top active markets by 24h volume. Returns question, outcomes with implied probabilities, 24h/total volume, liquidity, end date, URL. Data only, no trading.
weather_forecastaddedWeather for any place name or lat/lon (Open-Meteo): current conditions plus up to 16-day daily forecast (temp min/max, precipitation and probability, wind, UV, sunrise/sunset). {location | latitude+longitude, days, units:metric|imperial}.
sec_filingsaddedSEC EDGAR company lookup by ticker or CIK: company profile, recent filings (filter by form e.g. 10-K, 10-Q, 8-K, 4) with document links, and latest annual XBRL facts (revenue, net income, assets, liabilities, equity, EPS, cash).
arxiv_searchaddedSearch arXiv preprints: id, title, abstract, authors, categories, dates, PDF link. Supports arXiv field prefixes (ti:, au:, cat:). {query, limit<=50, sort:relevance|date}.
pubmed_searchaddedSearch PubMed (36M+ biomedical citations): PMID, title, journal, date, authors, DOI, URL and abstract. {query, limit<=50, sort:relevance|date, abstracts:true}.
explain_before_signaddedLumen Pre-Sign Check. Use before signing any EVM transaction or EIP-712 message: returns {summary, flags[], verdict} with verdict looks_ok | review | do_not_sign_unless_intended. Flags unlimited approve/increaseAllowance, EIP-2612 Permit and Permit2 (typed data and on-chain), setApprovalForAll, unknown spender, admin calls (upgradeTo/transferOwnership), zero-price Seaport orders, long deadlines, chain mismatch and x402 payTo mismatch; decodes multicall/aggregate3 inner calls one level. Example: USDC approve(spender, 2^256-1) -> do_not_sign_unless_intended, UNLIMITED_APPROVAL. Agent policy: abort on do_not_sign_unless_intended, escalate review. Informational, not a security guarantee; looks_ok does not mean safe; no simulation. $0.002, no signup, free tier 20/h; not charged if the call errors.
web_markdownchangeddescription, input schemaFetch a public web page and return clean LLM-ready Markdown (Readability main-content extraction, nav/scripts stripped) plus title, byline, excerpt and OpenGraph metadata. {fullPage:true} keeps the whole body; {maxChars} caps output (default 100k). No JS rendering.
Use when you need to read a public web page as clean LLM-ready Markdown: Readability main-content extraction (nav/scripts stripped) plus title, byline, excerpt, OpenGraph metadata. {fullPage:true} keeps the whole body; {maxChars} caps output (default 100k). No JavaScript rendering, no PDFs. Example: {url:"https://example.com"} -> {title:"Example Domain", markdown:"# Example Domain …"}. $0.001, no signup; not charged if the fetch fails.
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.
+repository +namespace-matches-repo -unreachable(5 failures) +updated-9d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://lumenworks-x402-decoder.onrender.com/mcp streamable-http | none | no (5 failures) | 44% | 322 ms | 2025-11-25 | 2026-10-11 |
arxiv_search | Search arXiv preprints: id, title, abstract, authors, categories, dates, PDF link. Supports arXiv field prefixes (ti:, au:, cat:). {query, limit<=50, sort:relevance|date}. |
calldata_decode | Use when you hold raw EVM calldata and need to know what function it calls: returns selector, matching signatures (built-in + openchain/4byte) and ABI-decoded args for each candidate; unknown selectors return signaturesFound:0 instead of an error. Optional {signature} override. Example: 0xa9059cbb… -> transfer(address,uint256) with args. $0.002, no signup; not charged if the call errors. |
domain_lookup | Domain intelligence: DNS A/AAAA/CNAME/MX/NS/TXT/CAA (DNS-over-HTTPS), SPF + DMARC, RDAP registration/expiry/registrar/status, domain age in days. Useful for phishing/fraud checks and lead qualification. |
eip712_decode | Decode EIP-712 typed data: domain separator, signing digest, message, and plain-language risk notes (Permit, Permit2, EIP-3009, unlimited values). |
evm_address_lookup | Look up an EVM address or ENS name on Ethereum + Base: ENS forward/reverse + text records, EOA vs contract (EIP-7702 delegation flag), native balance, tx count, USDC/USDT balances, and ERC-20 name/symbol/decimals/supply if it is a token. |
explain_before_sign | Lumen Pre-Sign Check. Use before signing any EVM transaction or EIP-712 message: returns {summary, flags[], verdict} with verdict looks_ok | review | do_not_sign_unless_intended. Flags unlimited approve/increaseAllowance, EIP-2612 Permit and Permit2 (typed data and on-chain), setApprovalForAll, unknown spender, admin calls (upgradeTo/transferOwnership), zero-price Seaport orders, long deadlines, chain mismatch and x402 payTo mismatch; decodes multicall/aggregate3 inner calls one level. Example: USDC approve(spender, 2^256-1) -> do_not_sign_unless_intended, UNLIMITED_APPROVAL. Agent policy: abort on do_not_sign_unless_intended, escalate review. Informational, not a security guarantee; looks_ok does not mean safe; no simulation. $0.002, no signup, free tier 20/h; not charged if the call errors. |
polymarket_markets | Read-only Polymarket prediction-market data: search by {query} or top active markets by 24h volume. Returns question, outcomes with implied probabilities, 24h/total volume, liquidity, end date, URL. Data only, no trading. |
pubmed_search | Search PubMed (36M+ biomedical citations): PMID, title, journal, date, authors, DOI, URL and abstract. {query, limit<=50, sort:relevance|date, abstracts:true}. |
sec_filings | SEC EDGAR company lookup by ticker or CIK: company profile, recent filings (filter by form e.g. 10-K, 10-Q, 8-K, 4) with document links, and latest annual XBRL facts (revenue, net income, assets, liabilities, equity, EPS, cash). |
url_unfurl | Unfurl a URL: final URL after redirects, HTTP status, title, description, OpenGraph/Twitter image, site name, canonical, favicon, language, published time. |
weather_forecast | Weather for any place name or lat/lon (Open-Meteo): current conditions plus up to 16-day daily forecast (temp min/max, precipitation and probability, wind, UV, sunrise/sunset). {location | latitude+longitude, days, units:metric|imperial}. |
web_markdown | Use when you need to read a public web page as clean LLM-ready Markdown: Readability main-content extraction (nav/scripts stripped) plus title, byline, excerpt, OpenGraph metadata. {fullPage:true} keeps the whole body; {maxChars} caps output (default 100k). No JavaScript rendering, no PDFs. Example: {url:"https://example.com"} -> {title:"Example Domain", markdown:"# Example Domain …"}. $0.001, no signup; not charged if the fetch fails. |
x402_lint | Decode and lint an x402 PAYMENT-REQUIRED / PAYMENT-SIGNATURE / PAYMENT-RESPONSE header (base64 or JSON): kind, decoded object, errors/warnings (CAIP-2, checksum, EIP-712 domain, expiry). |
x402_payment_safety_check | FREE, deterministic pre-payment check for an x402 endpoint. Give {url} (we fetch its unpaid 402) and/or {payment_required} (402 JSON or base64 header), plus optional expected_pay_to, expected_network, max_price_usdc, listed_price_usdc, facilitator_url, client_config {max_per_call_usdc, max_daily_usdc, idempotency_key, allow_any_pay_to}. Returns verdict ok/review/do_not_pay with checks: HTTPS/health, payTo validity & mismatch, unknown asset/network, price sanity vs cap/listing, timeout/replay window, multiple payTo, unknown facilitator, missing spend caps/idempotency. Nothing is stored; inputs that look like private keys are rejected. |
Schemas: list_tools.
1 other active names share this repository: io.github.Dansgit2b/lumen-presign-check
{
"name": "io.github.Dansgit2b/lumenworks-decoder",
"title": "Lumen Agent Utilities",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://lumenworks-x402-decoder.onrender.com/mcp",
"type": "streamable-http"
}
],
"version": "1.4.0",
"repository": {
"url": "https://github.com/Dansgit2b/lumenworks-x402-api",
"source": "github"
},
"description": "x402 agent tools: calldata/EIP-712/x402 decoders, web→MD, ENS, DNS, PubMed, arXiv, SEC, weather"
}