io.github.brawlaphant/vealth
REMOTE · VEALTH.NET · SCANNED OCT 4
Vealth work board: find real work, claim free with your wallet, prove it. Free onchain anchoring.
Available components
Recent critical change
Authorization (1 Sept 2026). See the changelog before you install this server.
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security63
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (submit_gmx_order). See how to fix → View diagnostics → Fail
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability66
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 21147 tokens (~213/item across 99 items; 99 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage99
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 98% of tool parameters carry a description.Partial
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety88
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 2 of 4 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "prepare_vote_withdraw" implies "withdraw" and declares readOnlyHint instead, contradicting what its own name says it does. See how to fix → Partial
- An AI judge read all 100 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities60
- Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail
How do I install the io.github.brawlaphant/vealth MCP server?
io.github.brawlaphant/vealth is a hosted endpoint at https://vealth.net/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · vealth.net
claude mcp add --transport http brawlaphant-vealth 'https://vealth.net/mcp'
{
"mcpServers": {
"brawlaphant-vealth": {
"url": "https://vealth.net/mcp"
}
}
} {
"servers": {
"brawlaphant-vealth": {
"type": "http",
"url": "https://vealth.net/mcp"
}
}
} [mcp_servers.brawlaphant-vealth] url = "https://vealth.net/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"brawlaphant-vealth": {
"type": "remote",
"url": "https://vealth.net/mcp",
"enabled": true
}
}
} openclaw mcp add brawlaphant-vealth --url 'https://vealth.net/mcp' --transport streamable-http
mcp_servers:
brawlaphant-vealth:
url: "https://vealth.net/mcp" {
"McpServers": {
"brawlaphant-vealth": {
"Transport": "http",
"Url": "https://vealth.net/mcp"
}
}
} assistant mcp add brawlaphant-vealth -t streamable-http -u 'https://vealth.net/mcp'
{
"mcpServers": {
"brawlaphant-vealth": {
"type": "http",
"url": "https://vealth.net/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 2 Oct 26 0
- Tool “compare_titles” rewrote its description, which is the text the model reads security
- Tool “worker_titles” rewrote its description, which is the text the model reads security
- 1 Oct 26 0
- New tool “submit_feedback” functional
- New tool “submit_funding” functional
- 28 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 25 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 24 Sept 26 0
- Tool “prepare_post_work” rewrote its description, which is the text the model reads security
- Tool “start_here” rewrote its description, which is the text the model reads security
- New tool “prepare_physical_proof” functional
- New tool “provision_plan” functional
- New tool “submit_physical_proof” functional
- “prepare_claim” added an optional parameter “crew” cosmetic
- “prepare_post_work” added an optional parameter “flags” cosmetic
- “prepare_post_work” added an optional parameter “proofRequirements” cosmetic
- “prepare_post_work” added an optional parameter “safetyNotes” cosmetic
- “prepare_post_work” added an optional parameter “skillLevel” cosmetic
- “prepare_proof” added an optional parameter “crew” cosmetic
- “prepare_proof” reworded the description of “proofs” cosmetic
- 23 Sept 26 0
- “prepare_claim” added an optional parameter “attestAtLeast18” cosmetic
- “prepare_claim” added an optional parameter “attestSafetyRead” cosmetic
2 cosmetic changes on this day. Switch on “Show cosmetic changes” to see them.
- 15 Sept 26 0
- Tool “hour_card” rewrote its description, which is the text the model reads security
- New tool “my_money” functional
- “hour_card” added an optional parameter “lang” cosmetic
- 14 Sept 26 0
- New tool “regen_provisioning_subscription_quote” functional
- New tool “regen_provisioning_subscription_status” functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 4 Oct 2026 · Probed https://vealth.net/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=vealth.net | CN=YE2,O=Let's Encrypt,C=US | 1 Sept 2026 | 30 Nov 2026 | ECDSA 256 | ECDSA-SHA384 | 5e021f9762975da00b3738cc39185efcc07 |
| SANs: *.vealth.net, vealth.net | ||||||
| CN=YE2,O=Let's Encrypt,C=US (CA) | CN=Root YE,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | ECDSA 384 | ECDSA-SHA384 | 4df3b15dd6c0784c507cd37b58e6f115 |
| CN=Root YE,O=ISRG,C=US (CA) | CN=ISRG Root X2,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | ECDSA-SHA384 | 872165fc34b6e5fba8add5b3705fb53a |
| CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | SHA256-RSA | 6c8f1dc727c7117f7baf853ac980f9cd |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of vealth.net. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| net. | present | 37331 | 13 | Verified |
| vealth.net. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains |
| content-security-policy | default-src 'self'; script-src 'self' 'unsafe-inline' https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; font-src 'self' https://fonts.gstatic.com; img-src 'self' data:; frame-src 'self' https://embed.music.apple.com; connect-src 'self' https://cloudflareinsights.com https://base.publicnode.com https://base.llamarpc.com https://mainnet.base.org https://1rpc.io https://regen-api.polkachu.com https://keys.coinbase.com https://rpc.wallet.coinbase.com https://api.fiscaldata.treasury.gov; base-uri 'self'; form-action 'self'; frame-ancestors 'self'; object-src 'none'; upgrade-insecure-requests; |
| x-content-type-options | nosniff |
| x-frame-options | SAMEORIGIN |
| referrer-policy | strict-origin-when-cross-origin |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://vealth.net/mcp | Verified | 200 | |
| http (plaintext) | http://vealth.net/mcp | HTTPS enforced | 301 | https://vealth.net/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
account_statement What this wallet has already paid, itemized ~153
One wallet's complete payment history with this server: every settled call, what it cost, which door it bought, and the on-chain hash that proves it — plus totals and a per-door breakdown. Use it when someone asks what they have spent here, whether a call was charged twice, or for an expense record. Each line settled from the caller's own wallet on a public chain, so every hash is independently verifiable without trusting this server. Free, keyless, read-only, and it stores nothing about anyone.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | – | Optional cap on payments returned (newest first). |
| wallet | string | yes | The 0x… address that paid. The ADDRESS only, never a private key. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
anchor_proof Timestamp a file onchain so you can prove you had it first ~174
Anchor the SHA-256 of any file onchain, free. Use it the moment you produce something whose PRIORITY matters: a security finding before you disclose it, research before you share it, a draft before you send it out. You send only the hash, never the file, so nothing you make is disclosed to anyone. It lands in the next weekly Base batch and the Ethereum root, and from then on anyone can prove those exact bytes existed by that time. Free to submit, free to verify, no account, no wallet, no payment.
| Name | Type | Req | Description |
|---|---|---|---|
| label | string | – | Optional short public label for your own reference. Never include anything secret. |
| sha256 | string | yes | SHA-256 of your file, 64 lowercase hex characters. Get it with: shasum -a 256 <file> |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
board_stats Live board statistics ~121
Live counts from the Vealth work board, read at this moment — total and open work, claims, settlements, proposed value, and the sector breakdown. Pass a location to also count work nearby. Never cached; the public mirror is https://vealth.net/labor/stats. Free, keyless, read-only.
| Name | Type | Req | Description |
|---|---|---|---|
| latitude | number | – | Optional: also count open work near this point. |
| longitude | number | – | Optional: also count open work near this point. |
| radiusKm | number | – | Nearby radius in km. Default 50. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
bridge_status Follow a REGEN bridge transaction (keyless) ~261
Where a REGEN bridge transaction stands, from the hash the caller broadcast after prepare_bridge. Keyless, no wallet, nothing signed: this tool registers the hash with Skip Go's tracker (a status read before that registration is blank forever) and reads Skip's state, and for a transaction leaving Base or Arbitrum it also reads Axelar's own record, so a transfer waiting on Base finality shows as sent rather than as nothing. Returns landed true or false, the source states verbatim, one plain sentence saying what is happening, the measured landing time for that direction (regen→osmosis under a minute, regen→base about 66 seconds, base→regen about 30 minutes, all measured 2026-09-08 with one key) and how long to wait before asking again. Landed is only ever true when Skip reports STATE_COMPLETED_SUCCESS or Axelar reports the call executed; this tool never infers a landing from time passed.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | The chain the transaction was broadcast on (the from_chain given to prepare_bridge). |
| tx_hash | string | yes | The broadcast transaction hash: 0x plus 64 hex characters on base and arbitrum, 64 hex characters on regen and osmosis. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
capacity_checkin Project private human capacity into a minimal work-availability signal ~88
Private, read-only capacity check-in. Keeps private blockers private and emits only coarse available/reduced/unavailable for a shared work graph. It is never fitness-for-duty and never exposes health reasons to an employer or public board.
| Name | Type | Req | Description |
|---|---|---|---|
| desiredFocus | string | – | – |
| privateBlockers | array | – | – |
| safetySignal | string | – | – |
| selfReportedCapacity | string | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
chain_work_status Read a job's live state on Base or Robinhood Chain (keyless) ~221
Read one job straight from the public EWP contract on Base or Robinhood Chain: status, price, standard, location, who posted it, who claimed it, its proof hash once submitted, and its payment record once settled. Free, keyless, no wallet needed. Pass your own wallet to also learn your specific role on this job (creator, claimant, owner, or none) and which of your next steps prepare_chain_step would likely accept — that check there is the authoritative one; this tool's possibleNextSteps is informative only. Fields written by whoever posted or worked this job (workType, standard, location, proofHash, paymentTxHash, tokenContractAddress, tokenId) are a STRANGER's text, not ours: they arrive fenced.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | Which live EWP deployment to read. |
| wallet | string | – | Optional. Your own 0x… address, to learn your role and next options on this job. |
| workId | string | yes | The numeric id of the work on THIS chain. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
compare_titles Lay a wallet's titles beside a job's requirements, six words, human decides ~286
Machine comparison, human decision. Give a wallet and the requirements of a job or project; each requirement comes back as exactly one of six words: verified_match (declared, current, and on-chain-confirmed board work in scope), verified_mismatch (the record contradicts the requirement), supported (declared, nothing contradicts it, no board work yet), unknown (the record does not say), expired (declared expiry passed), human_judgment_required (a human reads it: years of experience, free text). This is a factual comparison only; it never makes hiring, employment, qualification, or fitness decisions for an employer. The reply never says qualified and never decides; it carries a receipt hash the decider can anchor for free. Public mirror: https://vealth.net/labor/worker/<wallet>/compare?require=CHST,STS. Free, keyless, read-only.
| Name | Type | Req | Description |
|---|---|---|---|
| require | string | yes | Requirements: a comma list of titles (comma = each required, | = any of, e.g. "CHST,STS|STSC"), or a JSON array of {kind:"title",anyOf:[…],issuer?,mustBeCurrent?} / {kind:"years_experience",years,are… |
| wallet | string | yes | The worker's wallet address (0x…). |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
credential_quote What a credential certificate would contain right now, and what it costs ~219
Price and preview a Vealth credential certificate BEFORE paying for one. Give a wallet for a work-record certificate (its settled packets, accepted proofs and banked credit) or a place for a standing certificate under The Vealth Standard. Returns the live price, exactly what the document would contain right now, and whether issuance would be REFUSED and why — a wallet with no settled work and no banked credit is refused for free, before any payment, because an empty certificate is unsellable. Payment buys the sealed, anchored artifact, never the achievement: every fact inside is already public and free to read at its own endpoint. Issuing is HTTP (POST /certificate/worker/<wallet> or POST /certificate/place); reading and verifying an issued certificate are free forever. This tool is free, keyless, read-only, and moves no money.
| Name | Type | Req | Description |
|---|---|---|---|
| place | string | – | A city, address fragment, or venue name, for a place standing certificate. |
| wallet | string | – | 0x wallet address, for a work-record certificate. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
crypto_lanes Which money rails are running ~53
Whether each recurring-spend lane is running or stopped, and why, read from the file the code itself obeys. A lane marked stopped is stopped by decision, not broken. Free, keyless, read-only.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
crypto_lp_positions Our liquidity positions ~62
Every pool we provide liquidity to, with reserves and our share read live from chain. Also carries the pool-pricing trap: raw balance ratios give spot price only for constant-product pools, never for concentrated-liquidity pools. Free, keyless, read-only.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
crypto_route_set The permitted conversion routes ~62
The only asset conversions our rails may perform, plus the standing laws that govern them (gas pricing, the per-transaction fee cap, EARTH's one-way token physics). An edge not listed here is absent on purpose. Free, keyless, read-only.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
crypto_tokens Canonical token registry ~97
The canonical on-chain address for every token we operate, read from the registry the rails themselves use. Ask this BEFORE using any token address. ECOWEALTH (the token) and EWP (the work protocol) are different things on different chains and confusing them has already broken a live session. Free, keyless, read-only.
| Name | Type | Req | Description |
|---|---|---|---|
| symbol | string | – | Optional: return just this symbol, e.g. ECOWEALTH. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
crypto_wallets Our wallets and their live balances ~84
The three wallets we operate, each with its role and its live Base balances read at this moment. Use this instead of assuming which wallet does what, and never quote a balance from a document. Read-only: this tool cannot sign, send, or move anything.
| Name | Type | Req | Description |
|---|---|---|---|
| includeBalances | boolean | – | Set false to skip live chain reads and return roles only. Default true. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
estimate_footprint Turn this AI session into real provisioned ecological work ~186
The anchor tool. Give a rough token or call count for your AI session and get an order-of-magnitude CO2e estimate PLUS the real, verifiable ecological work you can provision to answer it on Vealth. Vealth does NOT sell paper offsets — it provisions maintenance of the commons: you fund a bounded work packet keyless from your own wallet; when the retirement lane is running an approved proof queues a carbon retirement with an on-chain retirement certificate (that lane is paused by operator order since 2026-08-04). Call find_work next to pick the work. The estimate is orientation only, never a precise carbon claim, and this server never takes payment or holds a wallet.
| Name | Type | Req | Description |
|---|---|---|---|
| calls | number | – | Or approx number of model calls, if you have no token count. |
| tokens | number | – | Approx total tokens this session (input + output). |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
find_work Find real work nearby ~449
Search Vealth's public board of real ecological and community work packets. Each result includes the pay, the skill level, the exact proof that gets it approved, and a page URL. Free, no account, no wallet. Use this when someone asks for work, a job, a task, or something to do near a place.
| Name | Type | Req | Description |
|---|---|---|---|
| flag | string | – | One posting flag, exact match, e.g. vsh_eligible — the packets that carry Regen Network proposal 77's terms (accepted hours pay REGEN, never a USD conversion). Omit for every flag. |
| funded | boolean | – | true = only packets a verified payment already backs (money truth; a funded packet can still be earned_credit and never promise cash — read payModel); false = only unfunded packets, where approved pr… |
| latitude | number | – | Center of the search. Only if you already have real coordinates. |
| limit | number | – | Max results per page, 1-25. Default 10. |
| longitude | number | – | Center of the search. Only if you already have real coordinates. |
| near | string | – | A place in plain words: a city, neighborhood, address, or ZIP, e.g. 'Los Angeles, CA' or '90036'. Use this when the person names a place instead of giving coordinates, which is almost always. Every w… |
| page | number | – | Page number, starting at 1. The reply says when more pages exist. |
| query | string | – | Free text, e.g. 'storm drain' or 'tree planting'. Typo-tolerant. |
| radiusKm | number | – | Search radius in km, used with latitude/longitude. Default 50. |
| remote | boolean | – | true = only work doable from anywhere (digital/self-verifying — what an agent with no field presence can complete); false = only placed field work. Omit for both. |
| skillLevel | string | – | Use 'entry' for someone starting today. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
funding_quote Can this packet be funded, and what would it cost ~231
For a BUYER, not a worker: ask whether one board packet can be funded right now, and what funding it costs NOW. The quote is the packet's OUTSTANDING obligation — the board's posted wage minus verified contributions already recorded — read from the board, never from anything you send, so no caller can fund a $700 packet for $1 and no caller is quoted a stale full wage after others chipped in. Partial funding: when the host has chip-ins armed, any open packet also takes contributions from $0.01 up to what it still needs (contributeUsd on prepare_funding); an EXPLICIT amount above the remaining is recorded as a premium reserved for the worker — no default or omitted amount ever creates a premium. A refusal comes back in the board's own words (already funded, fully covered, claimed, settled, expired, no wage). Read-only: this quotes, it charges nothing and marks nothing funded. Call prepare_funding next to actually pay.
| Name | Type | Req | Description |
|---|---|---|---|
| workId | string | – | Optional packet id. Omit to quote the first open packet that still needs funding. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
get_work_packet Get one work packet ~53
Full detail for a single packet by its id, including the full description and proof requirement.
| Name | Type | Req | Description |
|---|---|---|---|
| workId | string | yes | e.g. WORK_1784530149768_4z4r6jz |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
gmx_get_orders List open GMX pending orders ~62
Read all pending orders (limit, stop-loss, etc.) for a wallet on GMX v2 (Arbitrum). Read-only, no signing needed, free.
| Name | Type | Req | Description |
|---|---|---|---|
| wallet | string | yes | 0x… Arbitrum wallet address to check. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
gmx_get_positions List open GMX perpetual positions ~55
Read all open perpetual positions for a wallet on GMX v2 (Arbitrum). Read-only, no signing needed, free.
| Name | Type | Req | Description |
|---|---|---|---|
| wallet | string | yes | 0x… Arbitrum wallet address to check. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
gmx_get_prices Get current GMX market prices ~38
Fetch current mark prices for all tradeable assets on GMX v2 (Arbitrum). Read-only, no signing needed, free.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
hour_card The hour card for a packet ~251
The ONE document to read to a person before they start: what the place is and the circle every GPS fix must land inside, what to bring and what the safety notes say, the method steps in order, the proof to hand in as a checklist, what the land gets, what the worker gets and whether the pay is funded or only proposed, exactly what the record will hold about them, and the tool calls in order. Free, keyless, no wallet needed. The packet's own words are carried verbatim and never shortened. Read it to them in order rather than summarising it: the order is the order the hour runs in. Optionally in Swahili (lang: "sw"): the board's own sentences translate from a fixed dictionary, and the packet's own words translate only where a translation exists for that packet, tagged "(Kiingereza)" and counted in `coverage` where it does not; a safety-critical line always carries its English source on its own line too.
| Name | Type | Req | Description |
|---|---|---|---|
| lang | string | – | Optional, defaults to "en". "sw" reads the card in Swahili. |
| workId | string | yes | The packet id, from find_work or place_status. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
how_to_claim How to claim a packet and get paid ~44
Explains exactly how to claim work and what happens after. Claiming is free. Returns instructions, never performs the claim, because claiming requires the worker's own wallet signature.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
hydrex_claimable What a Hydrex voter can claim right now, and from which contract ~144
The money answer: for every gauge a wallet votes for, the fee contract and the bribe contract, every reward token each one tracks, and exactly how much is claimable per veNFT — all resolved from chain, so a zero here is a real zero rather than a degraded API. Returns the claim calldata SHAPES for a caller to build their own transaction; it builds and signs nothing itself. Free, keyless, read-only.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | – | Optional: the voting wallet. Omit to follow our own position. |
| tokenIds | array | – | Optional: veHYDX token IDs to check earnings for. Rewards are tracked per NFT. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
hydrex_position A Hydrex veHYDX position: locks, voting power, and who owns it right now ~193
Everything about a veHYDX voting-escrow position on Base, read live: each NFT's current owner (resolved with ownerOf at call time, never assumed), its voting power, its locked HYDX, and whether it can ever be unlocked. Also reports oHYDX, the separate OPTION token, with its live exercise economics — oHYDX and veHYDX are different things and this tool keeps them apart on purpose. Works for any Hydrex holder: pass an address, or omit it to read the position this server operates. Free, keyless, read-only — it cannot sign or move anything.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | – | Optional: a wallet to inspect. Omit to read our own position, whose owner is resolved live rather than hardcoded. |
| tokenIds | array | – | Optional: specific veHYDX token IDs. Omit to discover them, or to use our known IDs. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
hydrex_reality Hydrex measured income versus advertised projection, side by side ~96
Call this before repeating any Hydrex APR or yield projection. It puts the venue's advertised weekly number next to the money actually collected (measured at 0.089% of the projection), and computes live from the venue's own per-gauge data why the ceiling is structural: total fees and bribes the whole venue distributes, against the fraction of system votes a position actually holds. Free, keyless, read-only.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
hydrex_vault A Hydrex ICHI vault position, including whether it is actually earning ~154
An ICHI single-sided vault position on Hydrex: shares held, share of the vault, the token composition of that slice, and — the part that matters — whether those shares are STAKED in the emissions gauge. Depositing and staking are two separate steps, and unstaked shares earn none of the advertised farming APR. Advertised APRs are returned but labelled display-only. Defaults to the kVCM/USDC vault. Free, keyless, read-only.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | – | Optional: the holder to inspect. Omit to follow our own position. |
| vault | string | – | Optional: an ICHI vault address. Defaults to the kVCM/USDC single-sided vault. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
hydrex_votes What a Hydrex position is voting for, and the honest denominator to judge it by ~135
A wallet's current gauge-vote allocation read from VoterV5 on chain, plus where the weekly epoch stands and the live emission rate. Carries the two traps that make naive readings wrong by orders of magnitude: the live system weight is a mid-epoch partial that inflates any share-% computed from it, and a gauge's live weight can read exactly zero while a full vote sits on chain. Share percentages here use the last COMPLETED epoch. Free, keyless, read-only.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | – | Optional: the voting wallet. Omit to follow our own position to whichever wallet currently holds it. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
labor_unit What one hour of human work is worth, in dollars ~229
THE LABOR UNIT: one number, in US dollars per hour, for what an hour of ordinary human work is worth on this planet, and the yardstick every job on this board is priced against. It is derived from published global earnings aggregates (ILOSTAT mean monthly earnings of employees in US dollars, weighted by each country's employee count, divided by world average weekly hours actually worked), and every input comes back with its publisher, its source URL and its date so you can redo the arithmetic yourself rather than trust this server. Use it to judge whether a packet's pay is fair before claiming it, or to price work you are about to post. Dollars are the measure. REGEN is only the settlement asset: REGEN per accepted hour is the dollar figure divided by the live REGEN price, and it can never exceed the rate Regen governance proposal 77 states, because the proposal's own text binds the payout. When a figure is not published it comes back null and renders as a dash; nothing is ever guessed in its place. Free, keyless, read-only, moves no money.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
my_hours A person's balance in hours ~196
The time-bank statement for one wallet: hours claimed, hours a human accepted, hours that reached a settlement, VSH credit that reached them as payment for their own work, VSH credit they spent through the credit door to pay somebody else's work, and what this board's record says they hold. Free, keyless, no wallet connection needed, just the address. IT IS A BOARD-SIDE STATEMENT, NOT A CHAIN BALANCE: every figure comes from this board's own settlement records, and the reply says so. A credit sent outside a settlement door, a credit the holder retired, or a credit spent somewhere that is not us will not appear. Read Regen Ledger for the real balance. Use this whenever the person asks how they are doing, what they have earned, or what they can spend.
| Name | Type | Req | Description |
|---|---|---|---|
| workerWallet | string | yes | The 0x… address to read. Address only, never a private key. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
my_money A person's whole money picture, in one read ~314
Everything one wallet was paid, is owed as a receipt, is only offered, and can do next, in a single free keyless read: dollars that settled, every OTHER token that settled and in what amount, open work receipts, token offers still standing on packets they took (each with the token's own risk label), their hours, what the Regen #77 payout ledger recorded for them, and exactly three doors. IT IS A BOARD-SIDE RECORD, NOT A CHAIN BALANCE: every figure is what this board itself recorded, no chain is read here, and a wallet's real holdings are whatever the chain says. A CREDIT IS NEVER MONEY: it is a receipt for work, not a token, not spendable, and nothing can be bought with it. The board prices no token, so a token amount carries no dollar value. There is no cash-out: what was paid sits in the person's own wallet, and turning it into money they can spend where they live happens on a rail they choose, which this board never names. Use this whenever the person asks what they have, what they are owed, or what to do next with it.
| Name | Type | Req | Description |
|---|---|---|---|
| lang | string | – | The language of the FRAME: the block labels, the door sentences and the honesty lines. Numbers, wallets, token symbols and packet ids never change. 'sw' is authored Kiswahili. Default 'en'. |
| workerWallet | string | yes | The 0x… address to read. Address only, never a private key. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
my_votes What one wallet has voted on and backed ~143
One wallet's whole demand history: every packet it voted for or against, and every packet it pledged to back — both free, signed acts that move no money. Use this when someone asks what they voted for, whether their vote is still active, or what they have pledged. A pledge here is a signed statement of intent only: pledged is not funded, nothing moves and nothing is held until a real payment settles through the separate funding door (prepare_funding). Free, keyless, read-only, and it records nothing about the caller.
| Name | Type | Req | Description |
|---|---|---|---|
| wallet | string | yes | The 0x… address that voted or pledged. The ADDRESS only, never a private key. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
my_work What happened with my work ~267
One question, the whole picture for ONE wallet: every packet it claimed and where each one stands, what is waiting on the person (proof not handed in, proof rejected and the reason given), what settled and its public receipt, and what is newly open nearby that fits the kind of work they have already done. Use this whenever someone asks how their work is going, whether they got paid, whether anyone reviewed their proof, or what to pick up next. Vealth sends no email and no notifications, so this tool is how a person stays with the process. Free, keyless, read-only, and it records nothing about the person: it cannot know when they last looked, so pass `since` if you know.
| Name | Type | Req | Description |
|---|---|---|---|
| near | string | – | Optional place in plain words for the what-to-pick-up-next list, e.g. 'Los Angeles, CA'. |
| since | string | – | Optional ISO timestamp of when this person last checked, e.g. '2026-08-01T00:00:00Z'. Used only to mark what changed since then. Nothing about anyone is stored here, so without it everything is liste… |
| wallet | string | yes | The 0x… address that claimed the work. The ADDRESS only, never a private key. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
net_subscription_quote Sovereign net worth as a service — your user's own token program ~153
The token program we proved on NET, run for your user: $1/month mints their OWN 1,000-fixed-supply asset (~999 to their wallet, no owner functions), creates a real burned-LP market for it, and standing-buys it monthly while they hold ~99% of the supply; $2/month adds a dollar for the service. This tool returns the tiers, the doors, whether sales are open, how to pay (standard x402 from their own wallet — we never take custody of their supply), and the honesty block: the market is thin, its price is their own buying, never external demand, and no profit is promised. Free, keyless, read-only.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
net_subscription_status A wallet's program subscription: months paid and program state ~89
Given a subscriber wallet, returns its paid months, each window's program budget, the asset naming on record, and fulfillment state. Everything the program does for the wallet — the mint, the burned market seed, every standing buy — is independently checkable on Base. Free, keyless, read-only.
| Name | Type | Req | Description |
|---|---|---|---|
| wallet | string | yes | The subscriber wallet (0x…), the same wallet that paid. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimId | string | – | – |
| claimable | boolean | – | – |
| definitionOfDone | object|array|string|null | – | – |
| fulfillableBy | array | – | – |
| funded | boolean | – | – |
| needs_from_caller | array | – | – |
| next_call | object | – | – |
| notClaimableReason | string | – | – |
| ok | boolean | – | – |
| payUsd | number | – | – |
| proofRule | string | – | – |
| tool | string | – | – |
| workId | string | – | – |
No examples provided.
What is the io.github.brawlaphant/vealth MCP server?
io.github.brawlaphant/vealth is an MCP server listed in the public MCP registry as io.github.brawlaphant/vealth. Vealth work board: find real work, claim free with your wallet, prove it. Free onchain anchoring. This page covers its hosted endpoint (https://vealth.net/mcp).
Is the io.github.brawlaphant/vealth MCP server safe to use?
io.github.brawlaphant/vealth scores 77 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the io.github.brawlaphant/vealth MCP server expose?
io.github.brawlaphant/vealth exposes 99 tools: start_here, find_work, get_work_packet, how_to_claim, prepare_claim, and 94 more. Their descriptions and schemas cost roughly 20,695 tokens of context every time the server is loaded.
Does the io.github.brawlaphant/vealth MCP server require authentication?
No. We connected to io.github.brawlaphant/vealth without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the io.github.brawlaphant/vealth MCP server still maintained?
io.github.brawlaphant/vealth is still listed as active in the MCP registry. We last reached this channel on 4 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.