run_agent

Execute a Lens agent directly (synchronous). Returns the full response inline. Supports session_id for multi-turn conversations and images for VLM analysis. Use list_agents to get agent IDs.

Server Lens lens-mcp-server
Category Execute
Risk class High
Parameters 42 required

What run_agent does on Lens

AI agents invoke run_agent to trigger actions in Lens. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call — builds kicked off, notifications sent, workflows started.

ParameterTypeRequiredDescription
message string Yes The message/prompt to send to the agent
agent_id string Yes Agent UUID (from list_agents)
session_id string Session ID to continue a conversation (omit for new session)
format_instruction string Optional output format instruction (e.g. 'Respond in JSON')

Parameters from the server's own tool schema.

Why run_agent needs a policy

This tool triggers execution of an external agent with effects that depend entirely on what that agent does—it could perform read operations, modify data, call external APIs, or perform other side effects based on the agent's design. The synchronous execution model and support for multi-turn conversations and image analysis indicate substantial computational and potential side-effect capability.

From the tool's definition The tool description explicitly states 'Execute a Lens agent directly (synchronous)' and 'Returns the full response inline.' This indicates the tool runs code/agent logic whose effects depend on the agent's configuration and arguments.

Questions about run_agent

What does the run_agent tool do? +

Execute a Lens agent directly (synchronous). Returns the full response inline. Supports session_id for multi-turn conversations and images for VLM analysis. Use list_agents to get agent IDs. It is categorised as a Execute tool in the Lens MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.

What parameters does run_agent accept? +

run_agent accepts 4 parameters: message, agent_id, session_id, format_instruction. Required: message, agent_id. The full parameter table on this page comes from the server's own tool schema.

How do I enforce a policy on run_agent? +

Register the Lens MCP server in PolicyLayer and add a rule for run_agent: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Lens. Nothing to install.

What risk level is run_agent? +

run_agent is a Execute tool with high risk. Execute tools should be rate-limited and have argument validation enabled.

Can I rate-limit run_agent? +

Yes. Add a rate_limit block to the run_agent rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.

How do I block run_agent completely? +

Set action: deny in the PolicyLayer policy for run_agent. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.

What MCP server provides run_agent? +

run_agent is provided by the Lens MCP server (lens-mcp-server). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

// LOOK UP ANOTHER SERVER

Every MCP server has a record like this.

Type a name, get the same breakdown: verified identity, auth posture, risk grade, capabilities, recommended policy.

Teams ship this data inside their own products. See what a licence covers →

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.