AI agents invoke hg_rebase to trigger actions in Mercurial. 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.
Rebase rewrites commit history (non-trivially reversible but potentially destructive if done wrong), replays changesets onto a new destination, and can alter the repository's DAG structure. It is not a simple write but an execution of a complex operation. While technically reversible with evolve/undo in Mercurial, it can cause data loss or conflicts if misused, placing it at Execute with high severity.
From the tool's definition 'Rebases changes onto a destination' — rebase rewrites commit history by replaying changesets onto a new base, which is a complex repository operation with significant side effects
Attacks that exploit this kind of access
Rebases changes onto a destination. It is categorised as a Execute tool in the Mercurial MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
Register the Mercurial MCP server in PolicyLayer and add a rule for hg_rebase: 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 Mercurial. Nothing to install.
hg_rebase 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 hg_rebase 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 hg_rebase. 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.
hg_rebase is provided by the Mercurial MCP server (metal-shark-sharktech/mcp-server-mercurial). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the 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 →