Secure Exchange for AI Agents
Microsoft Graph API offers broad access to Exchange mailboxes with no granular controls. PortEden enforces per-agent rules on every Graph API request, whether your mailboxes are on-premises, hybrid, or fully in the cloud.
How PortEden Protects You
Six layers of security between AI and your data.
Visibility Controls
Choose what agents see: full content, headers only, or redacted versions, with the same rules across on-premises and Exchange Online.
Action Limits
Restrict agents to read-only, draft-only, or full write access across all Microsoft Graph API endpoints.
Contact Rules
Block agents from accessing emails involving specific contacts, distribution lists, or domains regardless of where the mailbox resides.
Time Windows
Limit access to recent emails only, restricting agents to relevant timeframes like the last 30 days.
Get Started in 3 Steps
Install — CLI or MCP
Install the PortEden CLI or add the cloud MCP connector to your AI client, then connect your Exchange accounts via Microsoft OAuth.
Set Your Rules
Configure visibility controls, contact rules, action limits, and time windows. Rules apply consistently across on-premises and cloud mailboxes.
Connect Your Agent
Point your AI agent to PortEden instead of Microsoft Graph directly. Every request is filtered through your rules with full audit logging.
Without vs. With PortEden
Without PortEden
- Graph API grants broad read/write/send/delete with no granular control
- Hybrid deployments have inconsistent security between on-prem and cloud
- AI agents hold raw OAuth tokens directly
- No audit trail of which mailboxes or messages agents accessed
- Revoking access requires reconfiguring each Exchange environment separately
With PortEden
- Granular read-only, draft-only, or write access per agent across all Exchange environments
- Consistent security rules for on-premises, hybrid, and cloud mailboxes
- Tokens and credentials stay in PortEden. Agents only get filtered data
- Full audit log of every request across Microsoft Graph API
- One-click revocation per agent without disrupting other integrations