dry_run_endpoint
Validate an endpoint document without writing it. Returns either {ok: true, resolved: <Framework config slice>} or {ok: false, errors: {...}}. Pass endpointId to dry-run a PATCH against an existing endpoint; omit it to dry-run a create. Supply sample and/or answerSample to also run each target's ...
This record as markdown: /tools/dev-echorelay-management/dry-run-endpoint.md
What dry_run_endpoint does on EchoRelay
AI agents invoke dry_run_endpoint to trigger actions in EchoRelay. 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.
| Parameter | Type | Required | Description |
|---|---|---|---|
sample | object | array | string | number | boolean | null | — | Optional: a request payload, shaped as one a caller would actually send, passed as JSON rather than as a string containing JSON. Every target carrying an outgoi |
lineKey | string | Yes | The line key. |
endpoint | object | Yes | Endpoint document (for create dry-run) or PATCH body (when endpointId is supplied). |
endpointId | string | — | Optional: dry-run a PATCH against this endpoint UUID. |
answerSample | object | array | string | number | boolean | null | — | Optional: an answer payload, shaped as one a target would actually return. Drives answerMapping the same way, as answerMappingEvaluation. It cannot be inferred |
Parameters from the server's own tool schema.
Why dry_run_endpoint is rated High
dry_run_endpoint triggers real processes with real consequences. An agent gone sideways doesn't fire it once. It starts dozens of builds, sends mass notifications, or burns through compute before anyone looks up.
Risk signalsAccepts URL/endpoint input (endpoint) · Handles credentials or secrets (endpoint.targets[].auth) · Accepts raw HTML/template content (endpoint.targets[].mapping[].template) · High parameter count (56 properties) · Bulk/mass operation — affects multiple targets
Attacks that exploit this kind of access
The rule that runs dry_run_endpoint safely
PolicyLayer is an MCP gateway: it sits between your AI agents and EchoRelay, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For dry_run_endpoint, this is the rule to start with:
dry_run_endpoint stays usable, but rate-capped: a runaway agent can't fire it dozens of times a minute. Everything else on the server is denied unless you say otherwise.
The button opens the PolicyLayer dashboard: create your workspace, connect EchoRelay, apply this rule, and every dry_run_endpoint call is checked against it from then on.
Questions about dry_run_endpoint
Validate an endpoint document without writing it. Returns either {ok: true, resolved: <Framework config slice>} or {ok: false, errors: {...}}. Pass endpointId to dry-run a PATCH against an existing endpoint; omit it to dry-run a create. Supply sample and/or answerSample to also run each target's mapping against a real payload and see what it produces, which field came from which node, and every rule that failed with the value that broke it. No DB write, no queue entry, no billing, and the payload is never sent anywhere. It is categorised as a Execute tool in the EchoRelay MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
dry_run_endpoint accepts 5 parameters: sample, lineKey, endpoint, endpointId, answerSample. Required: lineKey, endpoint. The full parameter table on this page comes from the server's own tool schema.
Register the EchoRelay MCP server in PolicyLayer and add a rule for dry_run_endpoint: 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 EchoRelay. Nothing to install.
dry_run_endpoint is a Execute tool with high risk. Execute tools should be rate-limited and have argument validation enabled.
Yes. Add a rate_limit block to the dry_run_endpoint 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.
Set action: deny in the PolicyLayer policy for dry_run_endpoint. 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.
dry_run_endpoint is provided by the EchoRelay MCP server (https://mcp.echorelay.dev). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on EchoRelay, and thousands of servers like it.
Across the catalogue