Alienprobe Who Mcp

io.github.bbrysonelite-max由 GitHub 账号 bbrysonelite-max 发布v0.1.0更新于 Oct 24, 2026

Company name, domain or LEI to its GLEIF legal entity, $0.05 via x402 on Base. Spend caps.

已验证STDIO仅桌面金融商业与电商

概览

AI 生成的概览

根据公司名称、域名或 LEI 查询 GLEIF 法人实体记录(LEI、法定名称、辖区与状态),每次调用在 Base 上支付 0.05 USDC。

可以做什么
免费查询服务公布的价格、网络、收款方与覆盖范围,无需钱包(who_terms)。
运行要求
通过 npx 以 stdio 本地进程运行(需要 Node.js)。付费查询需要 PRIVATE_KEY 中存放 Base 主网 USDC 的钱包私钥;免费的 who_terms 无需钱包。可选支出上限 MAX_USD_PER_CALL(默认 0.10)与 MAX_USD_PER_SESSION(默认 1.00)。需要访问查询端点的网络。
安装前请注意
付费查询会从 PRIVATE_KEY 对应的钱包实际支出 USDC,请使用只放约 1 美元的临时钱包。会话上限在重启后重置,钱包余额才是真正的上限。paid_usd 是授权价格而非收据,首次免费查询会被高估,不要用于记账。切勿提交真实私钥。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Alienprobe Who Mcp,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

alienprobe-who-mcp

An MCP server that gives any agent one legal-entity fact — LEI, legal name, jurisdiction, entity and registration status — for $0.05 USDC on Base, paid per call over x402. No signup, no API key, no account. The wallet is the account.

Two tools:

ToolCostWhat it does
who_termsfreeReturns the advertised price, network, payee and coverage. Never pays. Works with no wallet.
who$0.05, real moneyReturns the entity record. Misses and ambiguities cost nothing.

Client config

Three lines. Claude Desktop (claude_desktop_config.json) or Cursor (.cursor/mcp.json):

json
{ "mcpServers": { "who": { "command": "npx", "args": ["-y", "@alienprobe/who-mcp"],  "env": { "PRIVATE_KEY": "0x...", "MAX_USD_PER_SESSION": "1.00" } } } }

Drop the env block entirely and the server still starts — who_terms works, who refuses with wallet_not_configured. That is the safe way to try it.

Environment

VarDefaultMeaning
PRIVATE_KEY(none)A throwaway Base-mainnet wallet holding a little USDC. Optional. Never logged, echoed, or returned in a tool result.
MAX_USD_PER_CALL0.10Hard ceiling on one lookup. The lookup is advertised at $0.05.
MAX_USD_PER_SESSION1.00Hard ceiling on everything this server process spends before restart.

See .env.example. Never commit a real key. Fund a wallet that holds nothing else — about $1 of USDC covers 20 lookups. This repo does not tell you how to get USDC onto Base; see https://docs.base.org/base-chain/tools/bridges/.

Spend caps

The server preflights every who call with a plain, unwrapped fetch — no signer exists on that path — reads the advertised price out of the 402, and only then decides. If the price exceeds MAX_USD_PER_CALL, or would push the running total past MAX_USD_PER_SESSION, it refuses with a result the model can read and act on:

json
{  "error": "spend_cap_exceeded",  "scope": "per_session",  "price_usd": 0.05,  "cap_usd": 1.0,  "spent_usd_this_session": 1.0,  "remaining_usd": 0.0,  "hint": "the session budget is spent; raise MAX_USD_PER_SESSION and restart the MCP server to buy more"}

A session is one server process. Restarting the client resets the counter, so the per-session cap is a brake, not a ledger — the wallet balance is the real ceiling. Keep it small.

What comes back

A paid hit is the API's body verbatim plus paid_usd:

json
{  "schema_version": "who-lookup.v1",  "subject": { "type": "who", "value": "apple.com" },  "answer": {    "lei": "HWUPKR0MPOU8FGXBT394",    "legal_name": "Apple Inc.",    "jurisdiction": "US-CA",    "entity_status": "ACTIVE",    "registration_status": "ISSUED",    "match": { "by": "domain", "rule": "domain_exact" },    "official_website": "https://apple.com/"  },  "source": { "name": "...", "vintage": "...", "coverage": "..." },  "paid_usd": 0.05}

q is a company name, a registrable domain, or a 20-character LEI. To disambiguate a name, append a jurisdiction in the same string: "Acme Corp;US-DE".

paid_usd is the authorized price, not the receipt

paid_usd is the amount the server authorized — the price the API advertised in its 402 and that the spend caps were judged against. It is not read back from the chain.

One case where it overstates: a wallet's first successful lookup on this pricing shelf settles at $0 (first-can-free; a property of the service, not of this client). That call still reports "paid_usd": 0.05. Every subsequent call actually moves $0.05.

The server's session counter inherits the same overstatement, which is the safe direction — it stops you early, never late. If you need the truth, the on-chain USDC Transfer from your wallet is the only receipt. Do not use paid_usd for accounting.

Free refusals

These never pay, and they come back as ordinary tool results the model can reason about — not exceptions:

UpstreamResult
400{"error":"invalid_subject","reason":"empty"}
404{"error":"not_found","coverage":"..."}
409{"error":"ambiguous","candidates":[...],"hint":"re-ask with the exact legal_name, then a ;jurisdiction suffix if it still collides"}
503{"error":"source_unavailable"}

The API only charges once it can commit to one entity, so an ambiguous re-ask is still free while it stays ambiguous.

What this does not do

  • No street addresses, no officers or directors, no ownership graph.
  • No guessing. A miss is a 404, not a best-effort answer.
  • Legal names that normalize to fewer than 2 Latin alphanumerics (CJK, Cyrillic, Greek, Arabic, Hebrew, Thai) are absent from this data vintage entirely — every door, not just the name door.
  • Domains match only where the source links an LEI to an official website, on the exact registrable domain. A subdomain misses.

Development

bash
npm installnpm test     # 28 contract rows over a mocked fetch: no network, no wallet, no paymentnpm run smoke  # spawns the server, drives initialize/tools/list/who_terms over real stdio

npm run smoke hits the live endpoint to fetch the 402. It runs with PRIVATE_KEY blank and asserts the advertised amount is "50000" ($0.05). It cannot pay.

src/core.mjs holds the transport-free logic and takes an injected fetch, which is why the tests never need a wallet. src/index.mjs is only the MCP wiring; @x402/* and viem are imported lazily, on a call already cleared to pay.

Built on @modelcontextprotocol/sdk 1.30.0. See SPEC.md for the full contract and the distribution plan.

License

MIT © Brent Bryson. See LICENSE.

来源:README.md,提交 00fa032

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.0最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分