Poobah MCP
Tool Reference
DO Operations

DO Operations

Tools for deploying, executing, and querying Andromeda Digital Objects (smart contracts).

Note: All ADO tools support the optional userId parameter for session persistence. Include it in every call to maintain wallet and chain state across reconnections.

instantiate_ado

Deploy a new smart contract (ADO) to the blockchain.

Parameters

ParameterTypeRequiredDescription
adoTypestringYesThe type of ADO to deploy (e.g., "cw721", "cw20", "splitter")
versionstringNoSpecific version to deploy. Uses latest if not specified.
msgobjectYesThe instantiation message for the ADO
labelstringYesA human-readable label for the contract
simulatebooleanNoIf true, estimate gas without deploying (default: false)

Example

{
  "adoType": "cw721",
  "version": "2.2.0-b.12",
  "msg": {
    "name": "My NFT Collection",
    "symbol": "MNFT",
    "minter": "andr1..."
  },
  "label": "my-nft-collection"
}

Response

Returns the transaction hash. Use get_transaction_status to check deployment status.


execute_ado

Execute a transaction on a deployed smart contract.

Parameters

ParameterTypeRequiredDescription
addressstringYesThe contract address to execute on
msgobjectYesThe execution message
fundsarrayNoCoins to send with the message
simulatebooleanNoIf true, estimate gas without executing (default: false)

Example

{
  "address": "andr1contractaddress...",
  "msg": {
    "transfer_nft": {
      "recipient": "andr1recipient...",
      "token_id": "token123"
    }
  }
}

With Funds

{
  "address": "andr1contractaddress...",
  "msg": {
    "purchase": {
      "token_id": "token123"
    }
  },
  "funds": [
    { "denom": "uandr", "amount": "1000000" }
  ]
}

query_ado

Query data from an ADO contract (read-only, no gas required).

Parameters

ParameterTypeRequiredDescription
addressstringYesThe contract address to query
msgobjectYesThe query message

Example

{
  "address": "andr1contractaddress...",
  "msg": {
    "owner_of": {
      "token_id": "token123"
    }
  }
}

list_available_ados

List all available ADO types that can be deployed.

Parameters

None required.

Response

Returns a list of ADO types with their descriptions and available versions.


get_ado_info

Get basic information about a deployed ADO (type and version).

Parameters

ParameterTypeRequiredDescription
addressstringYesThe contract address of the ADO

Example

{
  "address": "andr1contractaddress..."
}

get_available_operations

Discover what operations are available for an ADO type or deployed contract.

Parameters

ParameterTypeRequiredDescription
adoTypeOrAddressstringYesADO type (e.g., "[email protected]") or contract address

Example (by type)

{
  "adoTypeOrAddress": "[email protected]"
}

Example (by address)

{
  "adoTypeOrAddress": "andr1contractaddress..."
}

Response

Returns lists of available execute and query operations with their parameters.


get_adop

Get the ADOP (ADO Operation Protocol) file for an ADO type. This provides detailed operation specifications.

Parameters

ParameterTypeRequiredDescription
adoTypestringYesThe ADO type (e.g., "primitive", "cw721")
versionstringNoSpecific version. Uses latest if not specified.

Example

{
  "adoType": "cw721",
  "version": "2.2.0-b.12"
}