MCP-NATIVE · AGENT-TO-AGENT · LIVE

AOI

Agent-to-Agent Intelligence Service

AOI gives autonomous agents access to real-world intelligence through MCP and secure APIs.

Dynamic pricing. Quote-first execution. Real satellite-derived data. Prepaid credits required for execution.

38 Live CapabilitiesLIVE

38 Production Capabilities

Climate risk, carbon, methane, vegetation, water, flood, wildfire, air quality, deforestation, and more — all with real satellite-derived data and scientific provenance.

Data: Real SatClimate signalsPricing: Dynamic quote

How It Works

Quote-first commercial flow — the agent controls every step

1

Discover

Browse sellable capabilities via MCP tools/list

2

Request Quote

Submit capability + input_data → receive a binding price

3

Review Price

Agent decides whether to proceed — no obligation

4

Execute

Accept the quote → AOI executes with real data

5

Receive Intelligence

Result + provenance + transaction record

Dynamic Pricing

AOI calculates the actual delivery cost from the capability cost profile, applies the predefined AOI commercial profit policy, and returns the final commercial price. Internal cost, margin, and profit remain private — the agent sees only the final price.

Connect an AI Agent

MCP is the preferred integration path

MCP

Recommended

No human dashboard required. An AI agent interacts directly with AOI through MCP.

Endpointhttps://carbonaa.org/functions/aoiMcpServer
ProtocolMCP / JSON-RPC 2.0
TransportHTTPS
AuthenticationAPI key (Bearer)
tools/list→ discover capabilities
request_quote→ get a binding price
execute_quote→ execute with the quote

MCP — tools/list

curl -X POST https://carbonaa.org/functions/aoiMcpServer \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/list"
  }'

// Returns discover_capabilities, request_quote,
// execute_quote, and quote_<capability_id> tools.

Agent Registration

Self-service — no admin intervention, no credits required to register

AOI-native API key (AoiApiKey) — fully decoupled from SatClimate
API key displayed once — store securely
No KYC or human approval required
No free credits — prepaid balance required for execution
organization and declared_purpose fields supported

Register

curl -X POST https://carbonaa.org/functions/aoiAgentOnboarding \
  -H "Content-Type: application/json" \
  -d '{
    "action": "register",
    "agent_name": "My Environmental Agent",
    "contact_email": "dev@example.com",
    "organization": "Example Corp",
    "declared_purpose": "Energy infrastructure risk assessment"
  }'

// Response:
{
  "status": "ok",
  "agent_id": "aoi_extagent_xxxx",
  "api_key": "aoi_live_xxxx_xxxx_xxxx_xxxx",
  "commercial_model": "quote_first",
  "granted_capabilities": ["energy_infrastructure_risk", ...],
  "next_steps": [
    "1. Save your API key",
    "2. Discover: action=catalog",
    "3. Request quote: action=quote",
    "4. Review the quoted price",
    "5. Execute: action=execute"
  ]
}

Request a Quote

AOI dynamically evaluates the commercial price and returns it for your review

REST API — Request Quote

curl -X POST https://carbonaa.org/functions/aoiAgentServiceGateway \
  -H "Content-Type: application/json" \
  -H "X-API-Key: aoi_live_xxxx" \
  -d '{
    "action": "quote",
    "capability_id": "energy_infrastructure_risk",
    "input_data": {
      "target": "European power grid",
      "location": "Europe"
    },
    "idempotency_key": "my-unique-request-001"
  }'

// Response:
{
  "status": "quote",
  "quote_id": "aoi_quote_xxxx",
  "capability_id": "energy_infrastructure_risk",
  "capability_name": "Energy Infrastructure Climate Risk",
  "price": 1250,
  "currency": "USD",
  "valid_until": "2026-09-19T22:00:00Z",
  "request_hash": "sha256:xxxx",
  "message": "Review the quoted price. To execute, call action=execute with this quote_id."
}

// The agent sees ONLY the final price.
// Internal delivery cost, margin, and profit are private — never exposed.

MCP equivalent

// MCP tools/call
{
  "jsonrpc": "2.0", "id": 2,
  "method": "tools/call",
  "params": {
    "name": "request_quote",
    "arguments": {
      "capability_id": "energy_infrastructure_risk",
      "input_data": { "target": "European power grid", "location": "Europe" }
    }
  }
}

Execute with the Quote

Accept the quote — AOI validates it, executes with real data, and returns intelligence

REST API — Execute

curl -X POST https://carbonaa.org/functions/aoiAgentServiceGateway \
  -H "Content-Type: application/json" \
  -H "X-API-Key: aoi_live_xxxx" \
  -d '{
    "action": "execute",
    "quote_id": "aoi_quote_xxxx",
    "input_data": {
      "target": "European power grid",
      "location": "Europe"
    }
  }'

// Response:
{
  "status": "completed",
  "execution_id": "aoi_exec_xxxx",
  "transaction_id": "aoi_txn_xxxx",
  "quote_id": "aoi_quote_xxxx",
  "capability_id": "energy_infrastructure_risk",
  "capability_name": "Energy Infrastructure Climate Risk",
  "price": 1250,
  "currency": "USD",
  "connection_status": "resolved",
  "real_data_used": true,
  "result": {
    "result_summary": "...",
    "risk_score": 72,
    "confidence": 82,
    "findings": [...],
    "recommendations": [...],
    "evidence_refs": [...]
  },
  "provenance": [...],
  "confidence": 82
}

// No credits. No credit balance. No credits_remaining.
// Just the final price, the result, and the provenance.

Real Data & Provenance

Production capabilities return provenance metadata — never fabricated data

Capabilities that depend on external data return provenance metadata. AOI retrieves real signals from approved data sources (SatClimate) and reasons over them. Chain-of-thought is never exposed. Internal cost is never exposed.

Provenance Example

{
  "provider": "SatClimate",
  "source_type": "satellite-derived",
  "signal_ids": ["sig_001", "sig_002", "sig_003"],
  "signal_labels": ["thermal_anomaly", "power_generation", "grid_activity"],
  "values": [0.84, 0.91, 0.76],
  "units": ["index", "index", "index"],
  "timestamps": ["2026-09-19T06:00:00Z", ...],
  "freshness": "T+4h",
  "confidence": 82
}

Security, Rate Limits & Error Codes

Production-grade controls

Rate Limiting

  • 30 authenticated requests/min per agent
  • Technical protection — not billing
  • Checked before pricing or execution

Idempotency

  • Quote: same key + same request = same quote
  • Execution: same key = same result, no duplicate charge
  • Different request with same key = 409 conflict

Quote Validity

  • Quotes valid for 15 minutes
  • Expired quotes return 410 Gone
  • Input data must match the quoted request
CodeMeaningAction
400Invalid request / missing fieldsCheck request format
401Invalid or missing API keyRegister or verify key
403Permission denied / capability not sellableCheck granted capabilities
404Capability or quote not foundVerify IDs
409Idempotency conflict / quote request mismatchUse a new key or request a new quote
410Quote expiredRequest a new quote
429Rate limit exceededSlow down (30/min)
503Data source unavailableRetry later

MCP vs REST API

Use whichever fits your stack

MCP

Recommended
  • • Designed for AI agents
  • • Capability discovery via tools/list
  • • Quote via request_quote tool
  • • Execution via execute_quote tool
  • • JSON-RPC 2.0 over HTTPS

REST API

  • • Direct HTTP integration
  • • action=quote → binding price
  • • action=execute → intelligence result
  • • action=catalog → discover capabilities
  • • Same authentication & security
AOI — Agent-to-Agent Intelligence Service
Carbonaa

Carbon offset & compliance for industry.

Solutions

Resources

Legal

© 2026 Carbonaa SA. All rights reserved. · Geneva, Switzerland
base44
Edit with Base44