CTRL
Server Details
Visual DeFi workflow automation on Base + Ethereum mainnet.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- CTRLabs/ctrl-mcp
- GitHub Stars
- 1
- Server Listing
- CTRL MCP
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4/5 across 6 of 6 tools scored. Lowest: 3.2/5.
Each tool targets a distinct operation: vault activation, workflow creation, manual firing, catalog retrieval, log reading, and vault status. No two tools have overlapping responsibilities.
All tools follow a consistent 'ctrl_verb' pattern (e.g., ctrl_activate, ctrl_create_workflow), making it easy to infer functionality from the name.
6 tools cover the essential operations for a workflow automation server without being excessive or sparse. The scope is well-defined.
The set covers core workflows (create, activate, trigger, monitor) but lacks explicit update/delete for workflows or vaults. This is a minor gap that can be worked around.
Available Tools
7 toolsctrl_activateBInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| depositEth | No | 0 | |
| expiryDays | No | ||
| workflowId | Yes | ||
| maxPerDayEth | No | 0.1 | |
| maxPerSwapEth | No | 0.01 |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits fully. It mentions that the user signs once and the keeper runs autonomously, but lacks details on side effects, authorization, gas costs, or reversibility of the operation. The description is too sparse for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences and efficiently conveys the core purpose and key behavioral note (keeper autonomy). No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of annotations, no output schema, and 5 undocumented parameters, the description falls short. It explains the return type and one-time signing but omits parameter meaning, error handling, and contextual usage scenarios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, meaning the schema provides no explanations for any of the 5 parameters. The description does not mention or explain any of the parameters (e.g., depositEth, expiryDays, workflowId), leaving the agent with no semantic guidance beyond parameter names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool 'returns an EIP-5792 transactions[] batch' for deploying a vault and registering spending rules, which is a specific verb+resource. It differentiates from sibling tools like ctrl_create_workflow or ctrl_fire_manual by focusing on the activation/signing step.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that the tool is used after creating a workflow (before keeper autonomy) but does not explicitly state when to use it vs alternatives like ctrl_create_workflow or ctrl_fire_manual. No exclusions or prerequisites are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ctrl_create_workflowAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| chain | Yes | ||
| trigger | Yes | ||
| description | No | ||
| targetChain | No | Chain to run the workflow on. Default: "base". "ethereum" disables launchpad-only blocks (pool.created/clanker/zora/bankr/flaunch) and UniV4/Aerodrome routing. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Discloses creation behavior (draft, not activation), required prior discovery call, side-effect of creating a resource, and return structure. Also explains configuration requirements and constraints like max 20 items.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with clear sections and front-loaded purpose, but quite long (multiple paragraphs). Could potentially be slightly more concise while retaining essential details. Still efficient for the complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, description covers return values. Also explains dependencies (ctrl_get_block_catalog), constraints (max 20, required fields), and edge cases (different chains, missing fields). Complete for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (20%), but description extensively explains parameters: targetChain enum values, chain and trigger config passthrough, and specifics for block types (e.g., for cypher.swap: amount, slippage, autoSell*). Adds significant meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it creates a CTRL workflow draft, specifies one trigger plus chain of up to 20 actions/conditions/utilities, and mentions return value { workflowId, activateUrl }. Differentiates from siblings like ctrl_activate (activation) and ctrl_get_block_catalog (discovery).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit when-to-use: call ctrl_get_block_catalog FIRST, use targetChain to select chain, gives detailed instructions for specific block types (pool.created, cypher.swap, notify.telegram), and advises to interview user for missing critical fields. Implicitly tells when not to use (e.g., not for activation).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ctrl_fire_manualAInspect
Manually fire a workflow once. Keeper picks up within ~5s. Use to test a workflow without waiting for its natural trigger.
| Name | Required | Description | Default |
|---|---|---|---|
| workflowId | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds timing detail ('Keeper picks up within ~5s') and implies one-time action. No annotations exist, so description carries burden. Lacks details on idempotency or side effects but provides useful behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words, front-loaded with the core action. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple one-parameter tool with no output schema. Provides purpose, usage guidance, and a timing guarantee. Missing parameter explanation slightly reduces completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter workflowId has 0% schema description coverage, and the description does not explain its purpose or format beyond the schema. The description should compensate for the missing schema descriptions but does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Manually fire a workflow once' with a specific verb and resource. Distinguishes from sibling tools like ctrl_activate and ctrl_create_workflow by focusing on manual firing for testing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use to test a workflow without waiting for its natural trigger,' providing clear context for when to use. Does not list when not to use or alternatives, but context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ctrl_get_block_catalogAInspect
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".
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | Optional. Filter the catalog to blocks compatible with this chain. Default: "base". | |
| category | No | Optional. Filter to a single block bucket. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It discloses the tool returns a live catalog with specific fields and filtering capabilities. It does not mention any side effects, rate limits, or authentication needs, but for a read-only lookup tool this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences convey the purpose, usage, and parameter details with no redundancy. The most critical information (what it returns and when to call) is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with two optional parameters and no output schema, the description covers return content, filtering, and usage context. It sufficiently prepares the agent to invoke the tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline at 3. The description adds value by explaining the chain parameter's effect in detail (which blocks are included per chain) and noting the default. For category, it adds minimal extra meaning beyond the schema. Overall, it provides useful additional context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns a live catalog of CTRL workflow blocks with specific fields (id, label, description, config-field schemas). It distinguishes from sibling tools like ctrl_create_workflow by specifying it should be called when unsure of a block's config shape.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly advises calling this tool before ctrl_create_workflow when the config shape is unknown, providing clear usage context. It also explains how to filter by chain and the default value, but does not mention when not to use it or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ctrl_get_execution_logsAInspect
Read recent workflow executions: trigger, status, BaseScan tx hash, gas, timing. Without workflowId returns the user's most recent across all workflows.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| workflowId | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses basic behavior (read operation, returns recent executions, default behavior without workflowId) but lacks details on rate limits, authentication, or side effects. For a read tool, this is insufficiently transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, purpose front-loaded, no wasted words. Efficiently conveys the core functionality and key behavioral nuance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and simple tool with 2 params, description covers purpose, return fields, and a key behavioral detail. Missing explanation of limit's effect and potential pagination, but overall nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 2 parameters with 0% description coverage. Description adds meaning by explaining workflowId's optionality and fallback behavior, but does not elaborate on the limit parameter beyond its default value. Provides partial compensation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Read recent workflow executions' and lists specific fields (trigger, status, BaseScan tx hash, gas, timing). It also explains behavior without workflowId, making it distinct from sibling tools like ctrl_create_workflow or ctrl_fire_manual.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies usage for reading execution logs but does not explicitly state when to use this tool vs alternatives like ctrl_get_block_catalog or ctrl_get_vault_status. No exclusions or when-not-to-use guidance provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ctrl_get_vault_statusAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description indicates a read-only operation and lists what is read, which is sufficient for a simple read. However, since no annotations are provided, the description could be more transparent about return format or error cases, but it covers the essential behavioral trait.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with purpose, and contains no unnecessary words. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema or annotations, the description provides the core purpose and usage hint. It lacks details on return structure or error handling, but for a zero-parameter, read-only tool, it is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters (0 params, baseline 4). The description adds meaning by detailing what the output includes, which is valuable beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool reads the user's CTRL vault address, ETH + WETH balance, and active rules. It uses a specific verb 'Read' and identifies the resource, and the mention of its predecessor role ('before ctrl_activate') distinguishes it from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states to call this before ctrl_activate and explains why (to tell user funding needs). This provides clear context, though it doesn't include when not to use it or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ctrl_withdrawAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| token | No | 'ETH' (default), 'WETH', or a 0x token address. | |
| amount | No | Decimal amount, e.g. '0.05'. Omit for full balance. | |
| wallet | Yes | Vault owner address (0x…). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It mentions 'agent never signs' and 'return an EIP-5792 batch', but does not explain that the user must sign to execute the transfer, potential side effects, or required permissions. This is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. First sentence states purpose and a behavioral trait, second covers parameter defaults. Each sentence contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, description should clarify return value format. It explains what the tool does and parameter defaults, but omits details about the batch content or error scenarios. Acceptable for a simple tool but leaves gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% parameter coverage with descriptions, so baseline is 3. The description adds value by stating token defaults to ETH and advising to omit amount for full balance, going beyond schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns a batch to withdraw funds from CTRL vault to wallet, using specific verb 'withdraw' and resources (CTRL vault, wallet). It distinguishes from siblings like ctrl_create_workflow and ctrl_activate by focusing on fund movement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides defaults for token (ETH) and amount (full balance if omitted), and clarifies agent involvement ('agent never signs'). It lacks explicit when-not-to-use or comparison to siblings, but the context of sibling names (e.g., ctrl_activate) implies this is for withdrawals only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- FlicenseAqualityFmaintenanceDeFi execution and agent-to-agent economy tools for AI agents — swaps, yield, transfers, policy enforcement, trust scoring, A2A jobs, and P\&L across Ethereum, Base, Arbitrum, and Polygon.311
- Alicense-qualityBmaintenanceDeFi execution layer for AI agents - swap, zap in/out of LP, route across AMMs on 5 EVM chains.807MIT
- Alicense-quality-maintenanceEnables AI applications to interact with the Base blockchain network, allowing wallet management, smart contract deployment, token transfers, NFT operations, DeFi interactions with Morpho vaults, and onramping funds via Coinbase.43
- AlicenseAqualityDmaintenanceCoordinated multi-wallet trading on Base. Create wallets, distribute funds, execute synchronized buys/sells, rebalance portfolios.8371MIT
Your Connectors
Sign in to create a connector for this server.