AI agents invoke strings_compare_branch to trigger actions in Phrase. 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.
Although a comparison is conceptually a read operation, this tool explicitly *creates* an async job and returns a job reference, indicating it triggers an external operation with side effects (job creation, resource allocation). This places it in Execute rather than Read. Severity is medium as misuse could consume resources or trigger unintended async jobs, but no data is modified or deleted.
From the tool's definition 'Create an async comparison between a branch and the main branch' — triggers an asynchronous job/operation rather than simply reading existing data
Attacks that exploit this kind of access
Create an async comparison between a branch and the main branch of a Phrase Strings project. Returns a comparison job — use strings_get_branch_comparison to fetch the result. It is categorised as a Execute tool in the Phrase MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
Register the Phrase MCP server in PolicyLayer and add a rule for strings_compare_branch: 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 Phrase. Nothing to install.
strings_compare_branch 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 strings_compare_branch 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 strings_compare_branch. 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.
strings_compare_branch is provided by the Phrase MCP server (phrase-mcp-server). 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 →