Agents Overview

Asset Core provides production-ready adapters for AI agent integration, enabling models to manipulate state through a bounded, auditable operation set.

Who this is for

Engineers building AI agents that need to interact with Asset Core state, whether through MCP, OpenAI function calling, or Gemini tools.

What you will learn

  • Why Asset Core’s fixed operation set is ideal for agents
  • How protocol adapters translate tool calls to HTTP
  • Which adapter to choose for your use case

When to use this

Use Asset Core as your agent’s state backend when you need:

  • Auditability: Every state change is recorded
  • Safety: Bounded operations prevent dangerous mutations
  • Determinism: Reproducible behavior for testing and debugging

High-level structure

The Problem with Open-Ended APIs

AI agents can execute arbitrary actions, which creates risks:

  • Unbounded mutations can corrupt state
  • No audit trail for what changed
  • Hard to test and verify behavior
  • Difficult to constrain permissions

Transactions as Safe Surface

Asset Core solves this by exposing exactly 16 operations:

DomainOperations
ContainerCreateContainer, RemoveContainer
BalanceAddFungible, RemoveFungible, TransferFungible, MergeStacks, ConsolidateStacks
InstanceMintInstance, BurnInstance, Attach, Detach
SlotPlaceInSlot, RemoveFromSlot, SwapSlots
SchemaRegisterClass, RegisterClassShape

This fixed vocabulary:

  • Limits blast radius: Agents can only do these things
  • Enables auditing: Every possible action is known
  • Supports permissions: Filter operations by tag
  • Simplifies testing: Finite state space

Protocol Adapters

Asset Core provides adapters that translate between AI protocols and HTTP:

Agent → Adapter → HTTP API → Daemon

Available adapters:

ProtocolDescriptionTransport
MCPModel Context ProtocolSTDIO, SSE
OpenAIFunction callingHTTP
GeminiFunction declarationsHTTP

All adapters expose the same tool surface, so switching protocols doesn’t require changing your Asset Core integration.

Adapter Architecture

Each adapter provides:

  • Tool definitions matching the protocol’s schema
  • Executor that maps tool calls to HTTP requests
  • HTTP client for daemon communication
  • Error handling with protocol-appropriate responses

The adapters live in the assetcore-adapters crate and share common infrastructure.

Tool Inventory

Standard tools across all adapters:

ToolDescription
assetcore_commitSubmit transactions to write daemon
assetcore_write_healthCheck write daemon health
assetcore_read_healthCheck read daemon health
assetcore_read_freshnessCheck projection freshness

The commit tool accepts the same operation structure as the HTTP API, so agents can compose complex transactions.

Filtering by Tags

Operations have tags (domain, action, scope, reversibility) that enable filtering:

# Allow only read operations
allowed = [op for op in operations if op.action != "destroy"]

# Restrict to specific domains
allowed = [op for op in operations if op.domain in ["balance", "container"]]

This lets you build agents with different permission levels without changing the core system.

Next steps