THRONE
See report Verify server

registry / record

@softeria/ms-365-mcp-server

npm / sealed 2026-06-16 / No. 1183983b

Does @softeria/ms-365-mcp-server MCP work in Claude Code and Cursor? Throne executed @softeria/ms-365-mcp-server mcp in a single-use Firecracker microVM and replayed both recorded client behaviours. Compatibility verdict: fit. Is @softeria/ms-365-mcp-server mcp safe? Static security scan: 2 finding(s) to review under security ruleset v1. The full per-step results, security findings, scan date, and evidence hash are below.

> throne registry @softeria/ms-365-mcp-server sealed
receiptsealed evidence
scan id
1183983b3d594630b21efe19719a9e1b
target
@softeria/ms-365-mcp-server
sealed at
2026-06-16 18:21:55Z
evidence hash
sha256:8e8e834ab8cf933df2e5d219d9c0e980862b510225b153380768894fe60ee64a
01connectPASS1.5s

initialize ok: server Microsoft365MCP 0.124.1, negotiated protocolVersion 2025-11-25, capabilities ['tools']

02discoverPASS198ms

supported: tools/list (178 tools); method not found (tolerated): resources/list, prompts/list

03validate_schemasPASS582ms

all 178 tool inputSchemas are valid JSON Schema

04smoke_test_toolsPASS1.7s

called 10 of 10 tools (cap 10, strategy=serial): 4 ok, 6 returned tool-level errors (expected for synthesized args)

05error_handlingPASS12.8s

structured error responses, connection survived, wrong_type_args: login:accepted (returned result); logout:accepted (returned result); verify-login:accepted (returned result); list-accounts:accepted (returned result); select-account:accepted (returned result); unknown_method: error(-32601); invalid_id: no response (silent), connection alive; oversized_input: accepted (returned result); recovery: accepted (returned result); cancellation: accepted (returned result); old_version: accepted old version 2024-10-07, negotiated 2024-10-07, server may have stale protocol handling

06streamingNOT_APPLICABLE1ms

no streaming-capable tool declared by this server

07resource_lifecycleNOT_APPLICABLE2ms

resources capability not declared

08concurrent_callsPASS1.0s

ladder 1 overlapping login calls: max_observed_stable_concurrency=1; all ids answered exactly once at every level

09reconnectPASS3.9s

transport closed and relaunched; re-handshake ok (protocolVersion 2025-11-25, first session was 2025-11-25)

01connectPASS2.9s

initialize ok: server Microsoft365MCP 0.124.1, negotiated protocolVersion 2025-11-25, capabilities ['tools'] [request_strategy=pipelined, connection_count=2, second connection established]

02discoverPASS370ms

supported: tools/list (178 tools); method not found (tolerated): resources/list, prompts/list; notes: connection 2 confirms 178 tools

03validate_schemasPASS569ms

all 178 tool inputSchemas are valid JSON Schema

04smoke_test_toolsPASS1.1s

called 10 of 10 tools (cap 10, strategy=pipelined): 4 ok, 6 returned tool-level errors (expected for synthesized args)

05error_handlingPASS12.2s

structured error responses, connection survived, wrong_type_args: login:accepted (returned result); logout:accepted (returned result); verify-login:accepted (returned result); list-accounts:accepted (returned result); select-account:accepted (returned result); unknown_method: error(-32601); invalid_id: no response (silent), connection alive; oversized_input: accepted (returned result); recovery: accepted (returned result); cancellation: accepted (returned result); old_version: accepted old version 2024-10-07, negotiated 2024-10-07, server may have stale protocol handling

06streamingNOT_APPLICABLE0ms

no streaming-capable tool declared by this server

07resource_lifecycleNOT_APPLICABLE1ms

resources capability not declared

08concurrent_callsPASS4.7s

ladder 1/2/4/6 overlapping login calls: max_observed_stable_concurrency=6; all ids answered exactly once at every level

09reconnectPASS5.2s

transport closed and relaunched; re-handshake ok (protocolVersion 2025-11-25, first session was 2025-11-25)

chatgpt desktop calibratingemulation profile pending real-traffic captureCOMING SOON
SECURITY: REVIEW / 2 finding(s) (1 medium) / review recommended
MEDIUMTHR-EXEC-04 / Arbitrary command execution from tool arguments

execSync() called with a dynamically built command (heuristic, review): ''

package/bin/modules/generate-mcp-tools.mjs:19
LOWTHR-NET-05 / Hardcoded outbound endpoints

11 non-local endpoint host(s) referenced in code, verify each is expected for this server's purpose: docs.microsoft.com (package/dist/generated/client.js:6788), graph.microsoft.com (package/dist/cloud-config.js:4), learn.microsoft.com (package/examples/azure-container-apps/deploy.ps1:59), login.chinacloudapi.cn (package/dist/cloud-config.js:8), login.microsoftonline.com (package/dist/cloud-config.js:3), mcp.example.com (package/dist/cli.js:49), microsoftgraph.chinacloudapi.cn (package/dist/cloud-config.js:9), portal.azure.cn (package/dist/cloud-config.js:10), portal.azure.com (package/dist/cloud-config.js:5), schema.management.azure.com (package/examples/azure-container-apps/deploy.ps1:124), teams.microsoft.com (package/dist/lib/teams-url-parser.js:18)

package/dist/cli.js:49
VERDICT: FIT14 of 18 steps exercised across 2 clientsSANDBOXED RUN, submitted server executed in a disposable microVM, compatibility: 0 fail / 0 warn (14 of 18 steps exercised across 2 clients) / security: review, 2 finding(s), 0 highsealed by THRONE / No. 1183983b / 2026-06-16
scopeattestation tuple
target
@softeria/ms-365-mcp-server npm
engine
sandboxed
claude code
calibration: partial recorded=9,spec=0,assumed=9
cursor
calibration: partial recorded=11,spec=0,assumed=7
chatgpt desktop
calibration: unavailable recorded=0,spec=2,assumed=16
steps exercised
14 of 18
test suite
v1.0.0
security ruleset
v1.0.0
sealed at
2026-06-16 18:21:55Z
evidence hash
sha256:8e8e834ab8cf933df2e5d219d9c0e980862b510225b153380768894fe60ee64a
valid until
2026-09-14
THRONE: FITwear the crown

paste this in your README. it renders the live verdict and links back to this record. if a release ever breaks the verdict, the badge says so on its own.

[![THRONE: FIT](https://api.usethrone.dev/api/badge/%40softeria%2Fms-365-mcp-server)](https://usethrone.dev/server/softeria-ms-365-mcp-server)
executed in a disposable microVM, created for this scan and destroyed after it. nothing outlives a run.

maintainer of this server? challenge this record: hello@usethrone.dev. tell us what we got wrong and we re-run it in the open.

this page renders the stored record of a real run. nothing on it is asserted without the execution that proved it.