Risk
A critical issue, or a lethal-trifecta pattern, was observed on this surface.
What ran on this surface
3 categoriesTool PoisoningMCP02 · ASI02 · CoSAI-T41 finding · 0 clean
Observed: annotations: { readOnlyHint: true, destructiveHint: false }.
Fix. Do not mark destructive tools as readOnlyHint=true. ChatGPT, JetBrains Copilot, and Roo Code skip confirmation dialogs for readOnlyHint tools. Set destructiveHint=true on any tool that modifies state.
Code VulnerabilitiesMCP03 · MCP05 · MCP072 findings · 0 clean
Observed: 3/3 parameters unconstrained.
Fix. Add input validation constraints to tool parameters. Use maxLength for strings, pattern for format validation, enum for known value sets, and min/max for numeric ranges.
Observed: Live connection to the MCP server over streamable-http succeeded with no credentials.
Fix. Require authentication for MCP server connections. Use API keys, bearer tokens, or OAuth to authenticate clients before allowing tool enumeration or invocation.
Model ManipulationMCP01 · MCP06 · MCP071 finding · 0 clean
Observed: additionalProperties: (unset, defaults to true).
Fix. Set 'additionalProperties: false' on all tool input schemas. Allowing additional properties bypasses all parameter validation, enabling clients to pass arbitrary keys that server-side code may process...
Why these stay. The verdict is coverage aware. A clean result would read "Insufficient coverage", not "Safe", precisely because these rules did not run. Hiding them would let a shallow scan look as thorough as a deep one.
How this server was scanned
The method behind this result was not recorded: the scan predates it. How deep it reached is unknown, and is not implied by anything on this page.
Verifiable Findings
Not yet attestedThis server has not been scanned with attestation enabled yet.
How to verify this yourself
# Re-run the analyzer on the signed snapshot and recompute the findings digest curl -s https://mcp-sentinelapi-production.up.railway.app/api/v1/servers/compute-googleapis-com-20260728163042-10277d/attestation.json > att.json npx mcp-sentinel verify-scan --attestation att.json # Prove the attestation is in the public transparency log curl -s https://mcp-sentinelapi-production.up.railway.app/api/v1/servers/compute-googleapis-com-20260728163042-10277d/attestation/inclusion.json > incl.json npx mcp-sentinel transparency verify-inclusion --proof incl.json
Observed behaviorexecuted in sandbox
Declared tool hints vs. what each tool was actually observed to do when executed in our egress-denied sandbox - plus any witnessed tool→tool flow within this one server. This is not cross-server toxic flow, which composes several servers in one config.
No observed-behavior record is on file for this server's latest scan.
This is a coverage gap - we did not execute this server’s tools in the sandbox for this scan. It is not a clean result and is not scored as one. To see how observed behavior is rendered when a run does happen, view the illustrative cross-server toxic flow.
Intrinsic here, config-scoped elsewheredual unit
Everything on this page — the verdict, every finding — is compute.googleapis.com assessed on its own. That is its intrinsic posture. Whether it becomes one leg of a cross-server toxic flow is a different, config-scoped question: it depends on which other servers share its client config, and no verdict on this page changes for it.
Deepen this scan
Every link below opens a form prefilled with this server’s details. Nothing runs until you submit.
- Publish your source on GitHubto unlock rules skipped for want of this input
- Expose your package manifestto unlock rules skipped for want of this input
- Combine with other serversanalyze this server alongside others in one config
- Watch it run in a sandboxobserve the published artifact under an egress-denied sandbox