Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.coralos.ai/llms.txt

Use this file to discover all available pages before exploring further.

Marketplace Integration

The Coral marketplace lets servers discover agents, and lets agent authors publish their agents with optional pricing metadata and identity attestation. In v1.1.0, the marketplace integration is focused on discovery and metadata. Remote execution and payments are disabled by default (see Status).

Enable marketplace discovery on your server

Marketplace-backed registry entries are provided by the MarketplaceAgentRegistrySource.
  • Config entry: registry.enableMarketplaceAgentRegistrySource (default: false)
  • Source of truth: RegistryConfig.kt and MarketplaceAgentRegistrySource.kt
config.toml
[registry]
enableMarketplaceAgentRegistrySource = true
When enabled, Coral Server adds a marketplace source to the local AgentRegistry on startup. You can list exportable agents (from local and marketplace sources) via the API:
curl -H "Authorization: Bearer $CORAL_TOKEN" \
  http://localhost:5555/api/v1/agent-rental/catalog | jq

Publishing agents for discovery

Agent authors publish with a standard coral-agent.toml (edition 3). For marketplace visibility, add pricing metadata under [marketplace.pricing]. This metadata is validated during load.
coral-agent.toml (excerpt)
edition = 3

[agent]
name = "natural-tone-agent"
version = "1.1.0"
description = "An agent that writes in natural, conversational tone"

[marketplace.pricing]
description = "A full markdown description of how the agent is priced"
currency = "USD"

[marketplace.pricing.recommendations]
min = 0.01
max = 1.50
Validation limits and field requirements are enforced in the marketplace pricing models (see RegistryAgentMarketplacePricing in RegistryAgent.kt), as well as core agent validation (name pattern, version semver, description lengths, etc.). If values are invalid, the server rejects the agent with a readable error.

Identity & attestation (overview)

Marketplace entries can include identity hints (e.g., ERC‑8004 wallet and HTTPS endpoints) to support future remote execution attestation.
  • Types and constraints are defined in RegistryAgent.kt under marketplace.identities.erc8004.
  • Endpoints must use HTTPS, names must match the required pattern, and wallet addresses are validated (Base58).
Attestation and remote rental are under active development. See Status for current limitations.

Using marketplace agents in sessions

Even when discovered from the marketplace, agents can still be launched locally on your server (using the image you control). In your SessionRequest, reference the source type:
{
  "agentGraphRequest": {
    "agents": [
      {
        "id": {
          "name": "natural-tone-agent",
          "version": "1.1.0",
          "registrySourceId": { "type": "marketplace" }
        },
        "name": "writer",
        "provider": { "type": "local", "runtime": "docker" }
      }
    ],
    "customTools": {}
  }
}
The Registry API (/api/v1/registry/...) exposes marketplace items side by side with local ones, including option schemas and export metadata.

Status (v1.1.0)

  • Remote providers/payments are disabled. Only provider.type = "local" is supported for execution on v1.1.0.
  • Payment session creation throws if blockchain services are disabled (see LocalSessionManager.createPaymentSession and BlankBlockchainService).
  • Use the marketplace today primarily for discovery and metadata; execution should be local.
See also: