io.github.CTRLabs/ctrl-mcp
repo:https://github.com/ctrlabs/ctrl-mcp
Visual DeFi workflow automation on Base + Ethereum mainnet.
- transport:
- remote
- credential class:
- self-provisionable
Owner verification
Not yet verified. Verifying proves you control this server and is free, permanently — it never changes a published score.
Start verification →Tools
- ctrl_activateshallow
Return an EIP-5792 transactions[] batch the user signs ONCE to deploy their vault + register spending rules. After signing, the keeper runs the workflow autonomously per the on-chain caps.
- ctrl_create_workflowshallow
Create a CTRL workflow draft. ONE trigger + an ordered chain of up to 20 actions/conditions/utilities. Returns { workflowId, activateUrl }. Pass `targetChain` to pick which chain the workflow runs on — "base" (default, launchpads + Aerodrome + UniV4) or "ethereum" (UniV3 only, no launchpads, no clanker/zora). CRITICAL: call ctrl_get_block_catalog FIRST (with the same `chain` value) to discover field names — every key in trigger.config and chain[].config must exactly match catalog fields[].key. Populate EVERY field the user expressed intent for. For pool.created (Token Launch, Base-only) set launchpad (e.g. ["bankr"]), keywordIncludes ("ai,agent,claw"), keywordMatchMode "any", keywordCategories (["ai_agents"]), safetyEnabled true, safetyRejectHoneypot true, safetyMinScore 50. For cypher.swap set tokenIn ("ETH"), tokenOut ("{{trigger.tokenAddress}}"), tokenOutMode "dynamic", amount (ETH units, e.g. 0.005 — ASK USER if not specified), slippage (15 for snipes), and autoSell* if user wants an exit (autoSellEnabled true, autoSellMode "multiple", autoSellMultiplier 2, autoSellPercent 100, autoSellReceiveToken "USDC"). For notify.telegram set message with {{token}}/{{amount}}/{{txHash}} placeholders. Interview the user for missing critical fields (amount, exit strategy, keywords) — do not silently default.
- ctrl_fire_manualshallow
Manually fire a workflow once. Keeper picks up within ~5s. Use to test a workflow without waiting for its natural trigger.
- ctrl_get_block_catalogshallow
Return the live catalog of every CTRL workflow block with id, label, description, and config-field schemas. Call this before ctrl_create_workflow when unsure of a block's config shape. Pass `chain` to filter to blocks that are compatible with the target chain (Base = launchpads + Aerodrome + UniV4; Ethereum = no launchpads, V3 only). Default is "base".
- ctrl_get_execution_logsshallow
Read recent workflow executions: trigger, status, BaseScan tx hash, gas, timing. Without workflowId returns the user's most recent across all workflows.
- ctrl_get_vault_statusshallow
Read the user's CTRL vault address, ETH + WETH balance, and active rules. Call this BEFORE ctrl_activate so you can tell the user how much they need to fund.
- ctrl_withdrawshallow
Return an EIP-5792 batch the user signs to withdraw funds from their CTRL vault back to their wallet. The agent never signs. token defaults to ETH; pass WETH or a 0x token address for other assets; omit amount to withdraw the full balance.
Embed this server’s score
Tool count and median score across every tool in this server’s corpus — honest in a way a single cherry-picked tool’s badge wouldn’t be.
[](https://vouch.tools/servers/d8af494e-7cf5-43a9-9b86-fedeaebef23d)