Skip to content

Add DPX to x402 ecosystem partners#169

Open
untitledfinancial wants to merge 2 commits into
coinbase:mainfrom
untitledfinancial:add-dpx-partner
Open

Add DPX to x402 ecosystem partners#169
untitledfinancial wants to merge 2 commits into
coinbase:mainfrom
untitledfinancial:add-dpx-partner

Conversation

@untitledfinancial
Copy link
Copy Markdown

DPX is an AI intelligence oracle and cross-border settlement rail that is x402-native. Uses x402 pay-per-call for its 10-layer Stability Oracle API (climate, macro, FX, ESG, supply chain data). Also runs USDC/EURC settlement on Base at 1.385% all-in via x402.

Category: Services/Endpoints

Description

Tests

Checklist

  • I have formatted and linted my code
  • All new and existing tests pass
  • My commits are signed (required for merge) -- you may need to rebase if you initially pushed unsigned commits
  • I added a changelog fragment for user-facing changes (docs-only changes can skip)

DPX is an AI intelligence oracle and cross-border settlement rail that is x402-native. Uses x402 pay-per-call for its 10-layer Stability Oracle API (climate, macro, FX, ESG, supply chain data). Also runs USDC/EURC settlement on Base at 1.385% all-in via x402.

Category: Services/Endpoints
@cb-heimdall
Copy link
Copy Markdown

cb-heimdall commented May 16, 2026

🟡 Heimdall Review Status

Requirement Status More Info
Reviews 🟡 0/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 1
Sum 2

@TateLyman
Copy link
Copy Markdown

Ran a no-payment discovery pass against the public DPX site in this PR. I did not send X-PAYMENT, did not sign anything, and did not call the priced tools.

Repro:

npx --yes x402-surface-check@0.2.30 https://mcp.untitledfinancial.com --limit 8 --origin https://mcp.untitledfinancial.com

curl -si https://mcp.untitledfinancial.com/x402
curl -si -X POST https://mcp.untitledfinancial.com/mcp \
  -H 'Content-Type: application/json' \
  -H 'Origin: https://mcp.untitledfinancial.com' \
  --data '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'

What looks good:

  • https://mcp.untitledfinancial.com/ returns a machine-readable MCP/x402 descriptor rather than a marketing page.
  • POST /mcp responds to MCP tools/list, and the browser-facing headers include Access-Control-Allow-Origin: *, X-PAYMENT, and X-PAYMENT-RESPONSE.
  • https://mcp.untitledfinancial.com/x402 exposes a per-tool pricing catalog with Base mainnet USDC (eip155:8453), a payee, and $0.0010 pricing for sampled tools.

Patch notes before merge:

  1. The root descriptor's x402.discovery value appears malformed: https:/.untitledfinancial.com/mcp/x402. The live catalog I found is https://mcp.untitledfinancial.com/x402.
  2. Common discovery paths return 404: /.well-known/x402, /.well-known/x402.json, /.well-known/agent.json, /openapi.json, and /llms.txt. If the ecosystem page expects agent-discoverable x402 metadata, I would either expose /.well-known/x402.json or make the metadata/descriptor point directly at /x402.
  3. The PR description positions DPX as a Base mainnet settlement rail, while the root descriptor also says sandbox: true. I would clarify which parts are sandbox, which parts are production/mainnet, and whether the x402 catalog is for quote/oracle tools only or also for settlement execution.
  4. Since billing appears MCP-tool scoped, I would add one documented no-payment tools/call example that should return a 402 before work. I intentionally did not call priced tools in this public pass, so I only verified discovery/tool listing and the pricing catalog.

Net: the MCP endpoint and pricing catalog are visible, but fixing the discovery URL and production/sandbox boundary would make this much easier for agents and reviewers to validate.

@untitledfinancial
Copy link
Copy Markdown
Author

untitledfinancial commented May 16, 2026 via email

@TateLyman
Copy link
Copy Markdown

Rechecked the live DPX surface after your update. I still did not send X-PAYMENT, did not sign anything, and did not complete a paid call.

Confirmed fixed:

  • Root descriptor now points at https://mcp.untitledfinancial.com/x402.
  • /.well-known/x402, /.well-known/x402.json, and /.well-known/agent.json all return 200.
  • Root descriptor now distinguishes sandbox: false from settlement_sandbox: true, which is much clearer.
  • The documented no-payment tools/call example returns a structured 402 before execution, with Base mainnet USDC (eip155:8453), maxAmountRequired: "1000", and the DPX MCP resource URL.
  • Browser preflight for POST /mcp returns 204 and allows Content-Type, X-PAYMENT, and X-PAYMENT-RESPONSE.

Repro from this re-check:

curl -si https://mcp.untitledfinancial.com/.well-known/x402
curl -si https://mcp.untitledfinancial.com/.well-known/x402.json
curl -si https://mcp.untitledfinancial.com/.well-known/agent.json

curl -si -X OPTIONS https://mcp.untitledfinancial.com/mcp \
  -H 'Origin: https://mcp.untitledfinancial.com' \
  -H 'Access-Control-Request-Method: POST' \
  -H 'Access-Control-Request-Headers: content-type,x-payment'

curl -si -X POST https://mcp.untitledfinancial.com/mcp \
  -H 'Content-Type: application/json' \
  -H 'Origin: https://mcp.untitledfinancial.com' \
  --data '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_macro_briefing","arguments":{}}}'

From my side, I would not close/reopen or resubmit unless the Coinbase x402 maintainers specifically ask for it. The live public surface now addresses the external review notes; if anything, update the PR description/comment thread with the corrected discovery URL and sandbox clarification so reviewers do not have to infer it from comments.

@untitledfinancial
Copy link
Copy Markdown
Author

Live surface update — all review notes addressed

Following @TateLyman's discovery pass, four issues were identified and are now deployed to production:

1. Discovery URL corrected
Root descriptor x402.discovery was malformed (https:/.untitledfinancial.com/mcp/x402). Now returns https://mcp.untitledfinancial.com/x402. ✅

2. Well-known paths added
/.well-known/x402, /.well-known/x402.json, and /.well-known/agent.json all return 200. ✅

3. Sandbox flag clarified
Root descriptor now has "sandbox": false (server is live — oracle tools, x402 payments, pricing catalog are production) and "settlement_sandbox": true (settlement execution sandboxed pending executor wallet funding). ✅

4. Documented 402 example
No-payment tools/call curl included in root descriptor. Confirmed by @TateLyman to return a structured 402 with Base mainnet USDC (eip155:8453), maxAmountRequired: "1000", and the DPX MCP resource URL. ✅

No PR files changed — all fixes are live on the Cloudflare Worker at mcp.untitledfinancial.com. The metadata.json and logo in this PR are unchanged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

3 participants