Caveat verdict

outlook-mcp

88
🟢 Trusted
No high-risk patterns surfaced by the deep scan — automated capability review, not behavioral proof.

An MCP server for personal Outlook via Graph API with OS-keyring auth; requires user-configured Azure AD app registration with zero telemetry and BYO credentials.

⚠ Flagged for review — coarse, uncorroborated signal, not a confirmed exploit. Review the config yourself before installing.

Automated static analysis — not a human review. Caveat flags capabilities, not confirmed intent, and can produce false positives. Disagree with this verdict? Use Dispute below.

0
security
90
transparency
70
maintenance

Findings (17)

Pattern match critical

Pipe-to-python pattern — remote code execution risk

RELEASING.md · code · curl -s https://pypi.org/pypi/outlook-graph-mcp/X.Y.Z/json | python

Pattern match critical

Pipe to python — executes piped content as Python code

RELEASING.md · code · | python3

Pattern match high

References child_process — can spawn system processes

docs/superpowers/plans/2026-05-13-openclaw-outlook-native-plugin.md · code · child_process

Pattern match high

Dynamic import() — loads module at runtime

docs/superpowers/plans/2026-05-13-openclaw-outlook-native-plugin.md · code · import("

Pattern match high

Uses spawn() — can execute external programs

docs/superpowers/plans/2026-05-13-openclaw-outlook-native-plugin.md · code · spawn(

Pattern match high

HTTP request to bare IP address — common in malicious payloads

docs/superpowers/plans/2026-05-13-openclaw-outlook-native-plugin.md · code · http://127.0.0.1

Pattern match high

<script> tag in markdown — potential code injection

tests/test_batch.py · prose · downgraded · <script>

Pattern match high

Possible hardcoded credential

tests/test_calendar_delta.py · prose · downgraded · token="https://graph/cal-delta-prior

Pattern match high

Accesses sensitive system files

tests/test_mail_attachments.py · prose · downgraded · /etc/passwd

Pattern match medium

Accesses OpenClaw config/secrets directly

SKILL.md · prose · downgraded · ~/.openclaw/openclaw.json

Pattern match medium

Accesses system credential store

SKILL.md · prose · downgraded · Keychain

Pattern match medium

Instructs covert action — may act without user awareness

CHANGELOG.md · prose · downgraded · silently

Pattern match medium

Blob URL — may embed executable content

docs/superpowers/plans/2026-05-13-openclaw-outlook-native-plugin.md · code · blob:

Pattern match low

Base64 encoding/decoding

CHANGELOG.md · prose · downgraded · base64-encode

Pattern match low

Popular HTTP library — network access

CHANGELOG.md · prose · downgraded · got

Pattern match low

References agent configuration files

RELEASING.md · prose · downgraded · CLAUDE.md

Pattern match low

Python httpx request — network access

scripts/preflight.py · prose · downgraded · httpx.get(

Why the tier is capped

Execution sink present in raw bytes (Hard Floor: class C/D). Final tier capped at Caution — cannot be lifted by any downgrade, example-payload opt-in, or allowlist.

Permissions & capabilities

No declared permissions — minimal attack surface.

Is this flag fair?

Check another skill Browse the registry Auditing your own skills or configs? Use the API