AI agents use contact_update to create or update resources in M365 — usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your M365 environment.
Based on naming convention and server context, contact_update creates or modifies contact records reversibly, fitting the Write category. Severity is medium because unauthorized contact modifications could affect communication routing, but lack complete destructive or financial impact. Confidence is reduced due to the empty tool description; a populated description would improve certainty.
From the tool's definition Tool name 'contact_update' indicates modification of contact data. The server description states it 'manage[s] Microsoft 365 services' including 'Contacts through natural language commands.' The tool description is empty, limiting full assessment.
Attacks that exploit this kind of access
contact_update. It is categorised as a Write tool in the M365 MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.
Register the M365 MCP server in PolicyLayer and add a rule for contact_update: 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 M365. Nothing to install.
contact_update is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.
Yes. Add a rate_limit block to the contact_update 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 contact_update. 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.
contact_update is provided by the M365 MCP server (robin-collins/m365-mcp). 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 →