
CTRL
io.github.CTRLabsPublished by GitHub account CTRLabsv1.0.1Updated Oct 24, 2026
Visual DeFi workflow automation on Base + Ethereum mainnet.
Overview
CTRL is a remote MCP server that lets an assistant build and run on-chain DeFi automation workflows on Base and Ethereum mainnet.
- What you can do
- Read vault status, balance and active rules, and list the live block catalog with field schemas for triggers, actions, conditions and utilities (price, pool launches, whale watching, swaps, notifications, webhooks). Draft and save workflows from plain-English prompts. Encode the EIP-5792 batch a user signs to deploy a vault and activate rules. Encode withdrawal batches for ETH, WETH or any ERC-20 back to the user's wallet. Fire a workflow once manually for testing and read keeper execution logs with transaction hashes, gas and status.
- When to use it
- Useful when you want an assistant to turn plain-English trading or monitoring ideas into recurring on-chain workflows on Base, such as scheduled DCA, price-triggered sells, new-pool sniping or wallet-copying, and to inspect vault state and execution history.
- Requirements
- A remote endpoint at ctrl.build, reachable over streamable HTTP; the README's client config uses npx mcp-remote with an Authorization bearer header and a CTRL_API_KEY environment variable, with keys minted in the service's settings. A crypto wallet to sign the deployment and withdrawal batches, and funds on Base or Ethereum mainnet.
Installation
In SourceWeft
- Open CTRL in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Use with an agent
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.github.CTRLabs%2Fctrl-mcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Other MCP clients
Add this to your client's mcpServers config.
{
"mcpServers": {
"ctrl": {
"type": "http",
"url": "https://www.ctrl.build/api/mcp"
}
}
}README
ctrl-mcp
the mcp for on-chain automation. sign once, agent does the rest, forever.
ctrl is workflow automation for on-chain actions on base. you compose trigger → action → condition graphs in plain english, sign one batch to deploy a vault + spending caps, and a keeper runs your workflow under those caps forever.
this is the mcp surface. agents talk to it. users sign in their wallet.
or paste into your client's mcp config:
mint a key at ctrl.build/settings/api-keys.
prompt your agent. that's it.
[example prompt — bankr snipe workflow]
what your agent gets
seven tools. that's it.
24 blocks under the hood
triggers — time.interval, trigger.manual, price.above/below/change, pool.created (clanker / flaunch / zora / bankr), watch.whale, event.transfer, event.balance, trending.token
actions — cypher.swap, read.balance, notify.telegram, notify.discord, util.webhook
conditions — cond.price, cond.balance, cond.allowed_weekdays, cond.time_window
utilities — util.delay, util.note, util.log, util.stop, util.snapshot
the agent calls ctrl_get_block_catalog first to see the live shape. every block id maps 1:1 to keeper execution.
example prompts
drop these into your agent and watch:
- "dca $50 eth into usdc every monday at 14:00 utc"
- "snipe new flaunch launches with
miladyin the name, 0.005 eth each, auto-sell at 2x" - "watch wallet 0x6cc5...c01b. when they buy anything over $10k, copy with 0.01 eth"
- "sell 50% of my pepe if price drops 20% in an hour"
- "every monday noon, check moonwell usdc apy. if lower than morpho by 1%, move 80%"
security
vault-direct model. agent never holds keys.
- on-chain caps: every rule signs immutable
maxPerSwap+maxPerDay. enforced by the vault contract. - kill switches:
pauseVault()halts everything;revokeRule(id)kills one workflow. both 1-tx, user-callable. - safety primitives:
pool.createdruns goplus honeypot + tax + score checks before any swap. - keeper bounded: the keeper fleet can only call methods the vault permits. compromised keeper costs at most one tick's per-swap cap.
verified contracts on base:
- v13 vault factory — 0x5Df25e79efd7f9dc86841b404b3EA6F4b7951DBB
- vault implementation — 0xc98137a6df7fb91ab91b568bf923490a278aa702
- timelock beacon — 0x5760A6D62743860F27843fA314E22166dBEF7d73
ecosystem
works with any mcp client. tested with:
- claude code ·
~/.claude.json - claude desktop ·
~/Library/Application Support/Claude/claude_desktop_config.json - cursor ·
~/.cursor/mcp.json - hermes (nousresearch/hermes-agent)
- aeon (aaronjmars/aeon)
- app · ctrl.build
- docs · ctrl.build/docs
- mcp hub · ctrl.build/mcp
- sibling repo · ctrl-skill
mit
Source: README.md at commit bb02678
Tools
0Version history
1- v1.0.1LatestSep 16, 2026
Score
85% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 daysRequired25 pts
- Auth declaredRequired10 pts
- Tools listedRequired15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts