Skip to main content
Glama

Build native pool manifest

build_pool_manifest
Read-only

Builds one native pool transaction. Operations: "create" (new pool, ALWAYS guarded by a manager badge: a fresh badge minted in the same transaction, or managerBadge; poolProfile and the badge fields are written in the same transaction), "contribute" (add liquidity, needs the manager badge), "deposit" / "withdraw" (move reserves without minting/burning units, need the manager badge), "redeem" (burn pool units, public), "profile" (metadata of the pool and its pool unit, needs the owner badge), "manage" (retire a pool in one transaction with any of emptyReserves / markRetired / freezeProfile; freezing is IRREVERSIBLE: confirm with the user first). Badges are resolved from the account automatically. Returns the manifest for the user to sign.

Input Schema

NameRequiredDescriptionDefault
kindNocreate only: "one", "two" or "multi" resources
poolNoPool address (every operation except create)
unitsNoredeem only: pool units to burn
localeYesLanguage of the console links: "en" or "es"en
accountYesAccount that signs, pays and presents the badges
amountsNocontribute: { resource: amount } for EVERY pool resource. deposit/withdraw: one or more entries, all moved in one transaction.
networkYesRadix network: "mainnet" (production) or "stokenet" (testnet)mainnet
badgeNameNocreate only: name of the new manager badge
operationYesWhat to do
resourcesNocreate only: resource addresses the pool holds
badgeSymbolNocreate only: symbol of the new manager badge
markRetiredNomanage: add the "retired" tag to the pool and its pool unit, keeping their current tags (owner badge)
poolProfileNoprofile, or create (written in the same transaction): pool metadata (blank fields are not written). The pool unit cannot be named at creation: its address does not exist until then; use "profile" afterwards.
unitProfileNoprofile only: pool unit metadata to write
badgeIconUrlNocreate only: icon URL of the new manager badge
managerBadgeNocreate only: guard the pool with this badge resource instead of minting a new one
emptyReservesNomanage: take every reserve out to the account (manager badge). Burns no units: other holders are left with nothing to redeem.
freezeProfileNomanage: lock the profile metadata keys and the owner role of the pool and its unit FOR GOOD (owner badge). Irreversible. The manager role of a native pool cannot be locked.
badgeDescriptionNocreate only: description of the new manager badge

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / resources / items / maxLength
      Added value: +200
    • addedInput schema / properties / resources / maxItems
      Added value: +20
  2. Added

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With only readOnlyHint=true declared, the description carries most of the burden and does so well: it discloses that badges are auto-resolved from the account, that poolProfile and badge fields are minted in the same transaction, that the pool unit cannot be named at creation, that emptyReserves leaves other holders with nothing to redeem, and that freezing is irreversible and must be confirmed with the user. It also states the return contract ("Returns the manifest for the user to sign").

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded and every clause carries real information, but the single dense paragraph packs seven operations into one run-on sentence, making per-operation lookup harder than a short bulleted list would be. Nothing is wasted; the structure could be tighter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 19-parameter, seven-operation manifest builder with no output schema, the description covers the transaction grouping, badge requirements, irreversibility hazards and the returned artifact — everything an agent needs to pick an operation and avoid a destructive mistake. Remaining gaps (network, locale) are fully documented in the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3; the description earns above that by mapping parameters to operations ("poolProfile and the badge fields are written in the same transaction", "kind" implied for create, managerBadge vs. fresh mint) and by explaining conditional applicability the flat schema cannot express. It does not, however, describe the shape of the amounts map beyond what the schema already says.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ("Builds one native pool transaction") and then enumerates all seven operations with their distinct semantics, which lets an agent distinguish this from build_dex_manifest, build_locker_manifest and other manifest builders in the sibling list. The scope (native pool only, one transaction, returns a signable manifest) is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Per-operation guidance is unusually strong: each of create/contribute/deposit/withdraw/redeem/profile/manage is tagged with its precondition ("needs the manager badge", "public", "needs the owner badge"). It does not, however, say when to prefer this over the sibling manifest builders or mention what to do if the user has no pool yet, so it stops short of explicit alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources