Agent Kit · Concept drafts · Unlisted · Not affiliated

The mapping doc, the export, and the schema tools: drafted on our side only

Four small pieces, every one of them entirely EcoWealth's own to build, none require Sylvera's cooperation, an account, or a contact. They exist to turn "a settled EWP receipt could probably fit CDOP" into something an agent (or a CDOP maintainer reviewing a PR) can check in one command.

Read this first. Everything below is a Concept draft on EcoWealth's own side, none of these files exist in our repo or CDOP's yet, and nothing has been submitted anywhere. They're shaped to CDOP's real, current Unit_Description.schema.json (see the capability brief and demo for the schema fetch + real validator run this kit is built on).

1 · EWP → CDOP field-mapping table

docs/canon/EWP_CDOP_MAPPING.md: concept Concept

The core artifact. A short, reviewable table any CDOP maintainer could read in one sitting, exactly the shape a fortnightly-maintainer-session PR review wants.

EWP field (real)CDOP field (id · path)Note
Settled work packet's credit class reference138 · project.current_registry_project_idAlready a registry-style identifier in our data
Footprint unit ("tCO2e")139 · unit.metricDirect match, no transform needed
Signer wallet (0x034F…)140 · unit.owner_account_idDirect match
Retire beneficiary (0x9166…, ≠ signer)141 · unit.retirement_beneficiaryThe field-for-field match this whole brief is about
Settlement/retirement tx narrative142 · unit.retirement_detailFree text: workId + tx hash + proof summary
Retirement tx hash (serial-equivalent)143 · unit.serial_numberConcatenated contract + workId, deterministic
Retirement status ("retired")145 · unit.statusDirect match
Credit type ("removal"/"reduction")147 · unit.typeSourced from the underlying Klima/Regen credit class
Quantity (tCO2e retired)148 · unit.quantityDirect match, integer
Credit vintage year151 · vintage.vintageMust be full ISO date, the one real gotcha we hit

→ scroll right to see the CDOP field + note columns

2 · The validated sample record

evidence.json → claims[] "credit-live-schema-validation" Real, already run

Not a concept: this already happened. The full JSON record and both validator runs (the failing first attempt, the passing second) are in evidence.json verbatim, reproducible with curl + pip install check-jsonschema. This is the proof underneath row 4 of the table above.

3 · A CDOP-shaped export endpoint, on our own API

GET /.well-known/vealth/work-cdop-export/:workId: concept Concept

A quiet, documentation-grade x402 endpoint (same tier as the existing /work-tco2e and /proof-check family) that takes a settled, retired EWP workId and returns it pre-shaped as a CDOP Unit_Description record, so any agent that already speaks CDOP (a Sylvera integration, a CDR.fyi tool, any of the 52 CDOP-participating orgs) can pull an EcoWealth receipt without knowing anything about EWP's own event shapes first.

GET https://vealth.net/.well-known/vealth/work-cdop-export/14

200 OK
{
  "project": { "current_registry_project_id": "REGEN-NETWORK:CITY-FOREST-CREDITS:0x0008f3" },
  "unit": {
    "metric": "tCO2e", "owner_account_id": "0x034F…c89",
    "retirement_beneficiary": "EcoWealth EWP: settled workId 14",
    "retirement_detail": "Retired via Klima Retirement Aggregator on Base; EWP contract 0x76c17C…A14B; proof: photo+GPS+signature -> approve -> settle -> retire",
    "serial_number": "EWP-BASE-0x76c17C-WORK-14-RETIRE",
    "status": "Retired", "type": "Removal", "quantity": 1,
    "block_start": 1, "block_end": 1
  },
  "vintage": { "vintage": "2024-01-01" }
}

4 · MCP tool schema + concierge note

tools.json: for any MCP-capable agent host Concept

One tool, matched to the export endpoint above, usable by any MCP host, not just a hand-rolled integration.

{
  "tools": [
    { "name": "ewp_export_as_cdop_unit",
      "description": "Fetch a settled, retired EWP work packet and return it as a CDOP Unit_Description-shaped record (project/unit/vintage), including the retirement_beneficiary field.",
      "inputSchema": { "type": "object", "required": ["workId"],
        "properties": { "workId": { "type": "integer" } } } }
  ]
}

CDOP Export Concierge

Role. Explains, in plain language, that an EWP receipt already carries everything CDOP's Unit_Description schema asks for, and hands back the mapped JSON on request.

Guardrails. Never claims Sylvera or CDOP has adopted or endorsed this mapping. Always states plainly that this is EcoWealth's own concept transform of its own data, not a CDOP-published artifact.

Sample turn. "workId 14 settled and retired on Base, here it is as a CDOP Unit_Description record, including a retirement_beneficiary distinct from the signer. This shape isn't published by CDOP or Sylvera; it's our own mapping of our own receipt."

None of this asks Sylvera to do anything. The mapping doc, the export endpoint, and the validated record are entirely ours to ship, any time: the only step left is filing the PR against CDOP's own open, MIT-licensed, contribution-welcome repo. The field already exists. We already know our data fits it.
← Back to the hub
EcoWealth Corporation · Prepared by Brandon Kelly · [email protected]
Unlisted concept page, noindex, nofollow. Every file on this page is a concept draft on EcoWealth's own side (except item 2, which is a real, already-executed validation run). Nothing has been submitted to CDOP's repository or to Sylvera. No relationship with Sylvera exists or is claimed.
Provisioned by EcoWealth · Digital Provisioning Protocol · provenance‑sealed