ThirdMade Shelf
by thirdmade.net · remote · no sign-in to list tools · v3.1.0 · published by net.thirdmade
26 pay-per-call tools for agents: scrape, verify, guards, crypto. x402 USDC on Base.
26 tools: 18 change things and 8 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things18Claude Code: ask: see these tools
- Only reads8Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http shelf https://shelf.thirdmade.net/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
26 tools
Changes things 18Claude Code: ask
captcha_evalClassifies captcha type (reCAPTCHA, hCaptcha, Turnstile) and difficulty.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Classifies captcha type (reCAPTCHA, hCaptcha, Turnstile) and difficulty. Eval only — we do NOT solve captchas. [price: $0.01/call USDC via x402]
chain_statsBlock height + chain stats for Base or Ethereum.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Block height + chain stats for Base or Ethereum. [price: $0.001/call USDC via x402]
domain_factsLive-checks a domain: is it up, does it have TLS, what's the title?No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Live-checks a domain: is it up, does it have TLS, what's the title? Quick domain health check for agents evaluating links. [price: $0.001/call USDC via x402]
gas_nowCurrent gas prices in Gwei for Base, Ethereum, or Arbitrum via public RPC.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Current gas prices in Gwei for Base, Ethereum, or Arbitrum via public RPC. [free]
geo_timeGeocode + timezone + currency context for any location string.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Geocode + timezone + currency context for any location string. [price: $0.001/call USDC via x402]
hallucination_checkEntailment scoring: does the provided context support this claim?No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Entailment scoring: does the provided context support this claim? Research agents use this to self-check outputs. [price: $0.001/call USDC via x402]
image_genGenerates 1 PNG from a text prompt (FLUX.1-dev, 512px).No findings
Why it is in this group
- The description's first verb is "generate": a word for a change.
Description, as the server wrote it Generates 1 PNG from a text prompt (FLUX.1-dev, 512px). Async: returns job ID + poll URL. GPU-backed via RunPod ComfyUI, scale-to-zero. [price: $0.02/call USDC via x402]
jsonifyCoerces messy text (key=value lines, CSV-ish, sentences) into clean JSON.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Coerces messy text (key=value lines, CSV-ish, sentences) into clean JSON. [price: $0.001/call USDC via x402]
link_graphExtracts all outbound links from a page, classified by domain.No findings
Why it is in this group
- The name "link_graph" says "link": a word for a change.
Description, as the server wrote it Extracts all outbound links from a page, classified by domain. Shows where a page links to and which domains dominate. [price: $0.001/call USDC via x402]
nonceCurrent transaction nonce for any address on Base or Ethereum.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Current transaction nonce for any address on Base or Ethereum. Agent tx bots need this before sending transactions. [price: $0.001/call USDC via x402]
page_metaExtracts OG tags, canonical URL, title, and meta description from any web page.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Extracts OG tags, canonical URL, title, and meta description from any web page. Useful for link previews, SEO audits, and content enrichment. [price: $0.001/call USDC via x402]
pii_guardDetects PII (emails, phones, SSNs, credit cards) in any text with character spans.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Detects PII (emails, phones, SSNs, credit cards) in any text with character spans. Compliance agents use this before processing user data. [price: $0.001/call USDC via x402]
prompt_guardScores prompt-injection / jailbreak risk for LLM inputs.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Scores prompt-injection / jailbreak risk for LLM inputs. Agent builders use this to sanitize user inputs before hitting their LLM. [price: $0.01/call USDC via x402]
robotsParses robots.txt for any domain — shows crawl rules, disallowed paths, sitemaps.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Parses robots.txt for any domain — shows crawl rules, disallowed paths, sitemaps. Agents use this to check if they're allowed to scrape a site before doing it. [free]
scrapeScrapes any public web page and returns clean structured JSON (title, text, length).No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Scrapes any public web page and returns clean structured JSON (title, text, length). The workhorse — agents use this for real data extraction. [price: $0.01/call USDC via x402]
sentimentSentiment classification (positive/negative/neutral) + emotion keyword hits.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Sentiment classification (positive/negative/neutral) + emotion keyword hits. [price: $0.001/call USDC via x402]
sweepOne verify-loop lane: confidence-labeled findings on any topic.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it One verify-loop lane: confidence-labeled findings on any topic. The flagship teaser — full sweeps at $0.50-5 ship when this crosses BUILD. [price: $0.05/call USDC via x402]
token_securityToken security heuristics: honeypot signals, proxy detection, LP data.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Token security heuristics: honeypot signals, proxy detection, LP data. Trading agents use this to avoid rugs. [price: $0.01/call USDC via x402]
Only reads 8Claude Code: allow
ens_lookupENS name resolution + reverse lookup via public Ethereum RPC.No findings
Why it is in this group
- The name "ens_lookup" says "lookup": a word for reading.
Description, as the server wrote it ENS name resolution + reverse lookup via public Ethereum RPC. [price: $0.001/call USDC via x402]
entity_findExtracts named entities (people, companies, places) from text.No findings
Why it is in this group
- The name "entity_find" says "find": a word for reading.
Description, as the server wrote it Extracts named entities (people, companies, places) from text. Wikidata resolution next iteration. [price: $0.001/call USDC via x402]
image_statusPoll image-gen job status by job ID.No findings
Why it is in this group
- The name "image_status" says "status": a word for reading.
Description, as the server wrote it Poll image-gen job status by job ID. Returns image base64 PNG when COMPLETED. [free]
json_guardValidates JSON, detects PII inside values, reports schema stats.No findings
Why it is in this group
- The description's first verb is "validate": a word for reading.
Description, as the server wrote it Validates JSON, detects PII inside values, reports schema stats. Pipeline agents use this as a data-quality gate. [price: $0.001/call USDC via x402]
llms_txtFetches and normalizes llms.txt / llms-full.txt from any site — the emerging standard for making websites readable to AI agents.No findings
Why it is in this group
- The description's first verb is "fetch": a word for reading.
Description, as the server wrote it Fetches and normalizes llms.txt / llms-full.txt from any site — the emerging standard for making websites readable to AI agents. [free]
search_verifyChecks if a URL supports a claim.No findings
Why it is in this group
- The name "search_verify" says "search": a word for reading.
Description, as the server wrote it Checks if a URL supports a claim. Returns confidence score. Research agents use this to verify sources. [price: $0.01/call USDC via x402]
similar_domainsFinds similar/competitor domains by name-similarity.No findings
Why it is in this group
- The description's first verb is "find": a word for reading.
Description, as the server wrote it Finds similar/competitor domains by name-similarity. Lead-gen agents use this for prospecting. [price: $0.001/call USDC via x402]
summarizeExtractive summary (3 sentences) + top-5 keywords from any text.No findings
Why it is in this group
- The name "summarize" says "summarize": a word for reading.
Description, as the server wrote it Extractive summary (3 sentences) + top-5 keywords from any text. [price: $0.001/call USDC via x402]
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 3.1.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http shelf https://shelf.thirdmade.net/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__shelf__llms_txt",
"mcp__shelf__entity_find",
"mcp__shelf__search_verify",
"mcp__shelf__similar_domains",
"mcp__shelf__ens_lookup",
"mcp__shelf__summarize",
"mcp__shelf__image_status",
"mcp__shelf__json_guard"
],
"ask": [
"mcp__shelf__robots",
"mcp__shelf__page_meta",
"mcp__shelf__domain_facts",
"mcp__shelf__link_graph",
"mcp__shelf__scrape",
"mcp__shelf__captcha_eval",
"mcp__shelf__geo_time",
"mcp__shelf__gas_now",
"mcp__shelf__chain_stats",
"mcp__shelf__nonce",
"mcp__shelf__token_security",
"mcp__shelf__jsonify",
"mcp__shelf__sentiment",
"mcp__shelf__image_gen",
"mcp__shelf__pii_guard",
"mcp__shelf__prompt_guard",
"mcp__shelf__hallucination_check",
"mcp__shelf__sweep"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as shelf. Review it before you use it.