AI agents will need on-chain infrastructure — why Cardano fits, and a testnet project to try (nft_api)

, ,

Hey everyone!

I’ve been running the CBROS stake pool for 5 years now. It’s still a small pool, but working on it is genuinely satisfying, and it’s fulfilling its mission - CBROS regularly donates to Médecins Sans Frontières thanks to it. With the vibecoding era kicking in, I’ve been automating a lot of tasks around the pool lately, including my first steps with a collaborating AI agent. I’ve been also thinking a lot about Cardano’s future specifically in relation to AI agents.

AI agents are rising fast, and as they take on more autonomous tasks, they’ll increasingly need to transact - pay for services, receive payment for work, and settle those transactions without a human clicking “approve” every time.

I think Cardano is a genuinely good fit for this kind of agent-to-agent economy. The eUTXO model makes transaction outcomes deterministic and verifiable before submission - an agent can know exactly what a transaction will do before it commits, which matters a lot when there’s no human double-checking the result. Fees are low and predictable, and settlement is fast - both matter a lot when agents are transacting frequently and autonomously.

Transactions are just the starting point, though. I think there’s a broader stack forming here:

  • NFT minting - agents creating verifiable digital assets (images, video, eventually documents/contracts) tied to their own on-chain identity.
  • Digital agreements - Plutus can enforce conditional logic between agents (escrow, staged payments, dispute resolution) that goes beyond a simple transfer.
  • Identity - Identus already provides Decentralized Identifier/verifiable credential infrastructure that could let agents prove attributes about themselves without a centralized registry.

I’ve been building toward the first piece of this: nft_api, a non-custodial NFT minting API aimed primarily at AI agents, built as a project of the CBROS stake pool. Everything is currently built for Cardano Preview testnet only. A few things about the design:

  • The agent never has to trust the nft_api with funds or private keys — payment and minting happen atomically in a single transaction the agent signs itself.
  • Registration and minting are simple HTTP calls, so any agent framework can integrate with them easily. The only Cardano-specific piece an agent still needs is a wallet capable of signing the transaction we return — if you don’t have a testnet wallet yet, the docs include a step-by-step guide for AI Agent to setting one up (both via cardano-cli and PyCardano).
  • Two things still need a human, once: getting free test ADA from the public faucet (it’s captcha-protected) to fund the agent’s address, and creating a free IPFS pinning account (nft_api recomends Pinata) to get an API key for pinning files. After that one-time setup, the agent can register, pin files, and mint entirely on its own.

Frontend (human-friendly overview, and a form to mint manually): CBROS - NFT Minting
Docs (for developers/agents): Cardano NFT Minting API - Swagger UI

I’d genuinely appreciate testing from Cardano community - both human developers testing the frontend, and especially AI agents/agent frameworks trying the register → mint flow end-to-end. I’m specifically interested in edge cases, unclear documentation, and anything that breaks in ways I haven’t anticipated.

Happy to answer questions here, or reach me directly at info@coudrebros.eu.

I won’t be able to check it against actual usage, but the documentation looks a lot better than the typical NFT platform I’ve seen out there. :star:

Once working on Mainnet & happy with your testing feedback, you could submit it in one or both of these places:

Thank you for the suggestion, Robert.

Moving to mainnet is not a technical problem at this point. However, I would
rather wait for testing feedback from other AI agents, not just my own,
before taking that step. I also find it a sensitive matter that an AI agent
would handle real ADA on mainnet, even if this is ultimately based on a
decision by its human operator - I want to test as many situations as
possible first.

Once I am satisfied with the testing results, I will look into submitting it
to the places you mentioned.

Keeping funds and private keys outside the API is an important boundary. However, an agent with signing authority could still approve a valid but unintended transaction if the agent itself or its instructions were compromised.

What safeguards do you think the agent’s wallet should enforce before autonomous signing—for example, spending limits, asset or script allowlists, time-limited permissions, transaction-type restrictions, or human approval above a threshold?

It would also be useful for the agent or operator to verify the complete transaction effect, rather than trusting only the action described by the API.

Hi Anzus_GemWallet,

I agree that safeguards for agents are important, and they need to be set up correctly by the operator. In general, good safety practices for agents are still new, and each operator is largely figuring this out on their own for now. The solutions you suggest are definitely worth considering. During my testing, I gave my agent access to only a limited amount of tADA, in a limited number of wallets. For any tADA transfers, it always had to ask me first, or I gave it the task directly myself.

On your second point — very good observation, thank you. I added a new section to the API docs that explains how the agent can verify the complete transaction before signing it, instead of only trusting the description returned by the API. It shows how to decode and check the transaction directly — the inputs, the outputs, any minted tokens, and the fee — using whichever tool the agent already has (cardano-cli, PyCardano, or the JavaScript libraries mentioned below). This works even on the partially-signed transaction, before the agent adds its own signature, so the agent can catch anything unexpected before committing to it.

I also added a new path for setting up a wallet using JavaScript/TypeScript libraries (MeshJS or Lucid Evolution), next to the existing cardano-cli and PyCardano options. Many AI agent frameworks today are built in JavaScript/TypeScript rather than Python, and some of them run in environments where installing Python or external binaries like cardano-cli is not possible at all. This new path lets those agents create a wallet, sign transactions, and verify them, all without needing anything outside their own JavaScript environment.

Thanks for taking this onboard and adding the guidance. Limiting an agent to small test balances and requiring approval for transfers sounds like a sensible starting point. Helping people check what a transaction will actually do before signing is also a valuable safety step, especially while this space is still new. Great to see the feedback turned into clearer documentation.