Raziel
REMOTE · MCP.TIDE.ORG · 2 COMPONENTS · SCANNED SEP 21
MCP server teaching AI agents to implement TideCloak: auth, E2EE, IGA, security analysis
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security74
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability82
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 3636 tokens (~181/item across 20 items; 20 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 20 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 21 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the Raziel MCP server?
Raziel is a hosted endpoint at https://mcp.tide.org/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · mcp.tide.org
claude mcp add --transport http tide-foundation-raziel 'https://mcp.tide.org/mcp'
{
"mcpServers": {
"tide-foundation-raziel": {
"url": "https://mcp.tide.org/mcp"
}
}
} {
"servers": {
"tide-foundation-raziel": {
"type": "http",
"url": "https://mcp.tide.org/mcp"
}
}
} [mcp_servers.tide-foundation-raziel] url = "https://mcp.tide.org/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"tide-foundation-raziel": {
"type": "remote",
"url": "https://mcp.tide.org/mcp",
"enabled": true
}
}
} openclaw mcp add tide-foundation-raziel --url 'https://mcp.tide.org/mcp' --transport streamable-http
mcp_servers:
tide-foundation-raziel:
url: "https://mcp.tide.org/mcp" {
"McpServers": {
"tide-foundation-raziel": {
"Transport": "http",
"Url": "https://mcp.tide.org/mcp"
}
}
} assistant mcp add tide-foundation-raziel -t streamable-http -u 'https://mcp.tide.org/mcp'
{
"mcpServers": {
"tide-foundation-raziel": {
"type": "http",
"url": "https://mcp.tide.org/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 26 Aug 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 25 Aug 26 0
- Stability: 0.97 → pass security
- 24 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.
- 21 Aug 26 0
- The server rewrote its instructions, which are the text every model session reads security
- Schema quality: 151 → 181 ▼ functional
- Schema quality: unverified → excellent ▲ functional
- Server version: 1.9.15 → 1.9.23 functional
- New tool “tide_onboarding” functional
- “tide_skill” reworded the description of “name” cosmetic
- 19 Aug 26 0
- The server rewrote its instructions, which are the text every model session reads security
- Schema quality: excellent → unverified ▼ functional
- Server version: 1.9.14 → 1.9.15 functional
- Server version: 1.9.13 → 1.9.14 functional
- 18 Aug 26 0
- Server version: 1.9.12 → 1.9.13 functional
- New tool “tide_dpop_asset” functional
- 17 Aug 26 0
- The server rewrote its instructions, which are the text every model session reads security
- Tool “tide_branding” rewrote its description, which is the text the model reads security
- Schema quality: 123 → 140 ▼ functional
- Server version: 1.9.11 → 1.9.12 functional
- “tide_branding” added an optional parameter “accent” cosmetic
- “tide_branding” added an optional parameter “appName” cosmetic
- “tide_branding” added an optional parameter “realm” cosmetic
- “tide_branding” added an optional parameter “tidecloakUrl” cosmetic
- “tide_canon” reworded the description of “name” cosmetic
- 13 Aug 26 0
- The server rewrote its instructions, which are the text every model session reads security
- Schema quality: 107 → 123 ▼ functional
- Server version: 1.9.10 → 1.9.11 functional
- Server version: 1.9.9 → 1.9.10 functional
- New tool “tide_branding” functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 21 Sept 2026 · Probed https://mcp.tide.org/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=mcp.tide.org | CN=GeoTrust TLS RSA CA G1,OU=www.digicert.com,O=DigiCert Inc,C=US | 31 Aug 2026 | 28 Feb 2027 | RSA 2048 | SHA256-RSA | 2bf4f3a4fbe2f92bf1e59a52da01f48 |
| SANs: mcp.tide.org | ||||||
| CN=GeoTrust TLS RSA CA G1,OU=www.digicert.com,O=DigiCert Inc,C=US (CA) | CN=DigiCert Global Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US | 2 Nov 2017 | 2 Nov 2027 | RSA 2048 | SHA256-RSA | d07782a133fc6f9a57296e131ffd179 |
| CN=DigiCert Global Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US (CA) | CN=DigiCert Global Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US | 1 Aug 2013 | 15 Jan 2038 | RSA 2048 | SHA256-RSA | 33af1e6a711a9a0bb2864b11d09fae5 |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of mcp.tide.org. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| org. | present | 26974 | 8 | Verified |
| tide.org. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.tide.org/mcp | Verified | 200 | |
| http (plaintext) | http://mcp.tide.org/mcp | HTTPS enforced | 301 | https://mcp.tide.org/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
tide_adapter ~46
Read an adapter instruction file (AGENTS, CLAUDE, replit)
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Adapter file name. Available: AGENTS, CLAUDE, replit |
No output schema declared.
No examples provided.
tide_blast_radius ~146
Run a Blast Radius Assessment of an EXISTING app: an adversarial, vendor-neutral map of where authority is concentrated to a single point (whoever obtains that one thing obtains everything it governs), scored by blast radius (Total/Systemic/Contained/Limited) across three cores — Identity, Governance, Access — and delivered as a director-facing PDF. Phase 1 names no vendor; an opt-in Phase 2 companion explains how TideCloak shrinks each blast radius. Use this when the user wants to 'assess', 'red team', 'threat model', 'find the security gaps in', or make a before/after security case for an existing application.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
tide_branding ~272
BRAND THE ENCLAVE FOR THE USER — generate a logo + background and upload them so the Tide login/approval screen is branded. Returns a single ready-to-run command that generates the assets (no image model needed), validates them, uploads both, and saves+signs the IdP settings. Also returns the VERIFIED upload contract (multipart parts, the png/jpg/jpeg/gif/webp allowlist with SVG REJECTED, the 5 MB cap, set-branding = save AND re-sign, IGA-exempt) plus image-model prompts for agents that can generate images. Pass realm/accent/appName to get the command pre-filled. CALL THIS whenever branding, a logo, a background, theming or 'skinning' the enclave or login screen comes up — then RUN the command; do not just describe it.
| Name | Type | Req | Description |
|---|---|---|---|
| accent | string | – | Hex accent colour without '#', e.g. '2f6f4e'. Default 1f6feb. |
| appName | string | – | App name. Deterministically varies the mark's geometry so realms look distinct. |
| realm | string | – | Realm to brand, e.g. 'myapp'. Fills in the command. |
| tidecloakUrl | string | – | Base URL. Default http://localhost:8080. |
No output schema declared.
No examples provided.
tide_canon ~136
Read a canon file (invariants, anti-patterns, concepts, framework-matrix, feature-mapping, troubleshooting, tidecloak-bootstrap, etc.)
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Canon file name. Available: agent-authority, anti-patterns, breach-precedents, concepts, custom-contracts, feature-mapping, framework-matrix, hosting-options, iga-change-requests-api, invariants, red… |
No output schema declared.
No examples provided.
tide_choose_playbook ~47
Recommend the right playbook for a given situation
| Name | Type | Req | Description |
|---|---|---|---|
| situation | string | yes | Describe what the builder wants to do, e.g. 'add login to a new Next.js app' |
No output schema declared.
No examples provided.
tide_choose_scenario ~49
Match a user request to a known scenario pattern before falling back to generic playbooks
| Name | Type | Req | Description |
|---|---|---|---|
| situation | string | yes | Describe the app or problem, e.g. 'build an organisation password manager' |
No output schema declared.
No examples provided.
tide_dpop_asset ~177
Returns the CONTENTS of `public/tide_dpop_auth.html` — the DPoP relay page the Tide enclave loads during login — plus its sha256, the required next.config.ts rewrite/CSP wiring, and how to verify. The file is NOT shipped in the @tidecloak/* npm packages and is NOT in the TideCloak container, so there is nowhere else to get it: without this tool people search GitHub and find a STALE copy that posts to window.parent, which breaks the popup fallback and fails login with TIDE-SWE-UNHANDLED. CALL THIS whenever DPoP is enabled (it is on by default), whenever a login fails with TIDE-SWE-UNHANDLED or 'Popup DPoP verification failed to load', and before copying this file from anywhere else.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
tide_gaps ~24
Read the gap register — what is still uncertain or unresolved in the pack
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
tide_hosting ~176
Where TideCloak runs: local Docker vs partner-hosted (Skycloak managed TideCloak-as-a-service). Returns the local-vs-hosted decision with the honest trade-offs, the trust model, the verified Skycloak API reference (correct cluster field names and the required version), and the full provisioning playbook. CALL THIS BEFORE STARTING ANY TIDECLOAK DEPLOYMENT — the choice must be made up front (I-17) because a realm cannot be moved between local and hosted afterwards. Triggers: 'deploy to production', 'deploy TideCloak', 'go live', 'host this somewhere', 'managed option', 'stable URL', 'can someone host TideCloak for us', or any request to stand up an instance where local-vs-hosted has not been settled.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
tide_list ~38
List all available content in the Tide agent pack by category
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | yes | Which category to list, or 'all' for everything |
No output schema declared.
No examples provided.
tide_list_scenarios ~21
List all available scenario patterns under reference-apps/
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
tide_onboarding ~303
STOP KEYCLOAK'S 'UPDATE ACCOUNT INFORMATION' PAGE and collect the details in-app instead. Tide asserts ONLY a username (the vuid) -- no email, no name -- so Keycloak blocks new users on an unstyled form showing a 64-hex username. Returns: a read-only DIAGNOSTIC that identifies which of FOUR mechanisms is causing the page (they need different fixes), the script that fixes it, and a ready-to-drop React modal that collects the details AFTER login via the Account API. CALL THIS whenever signup, onboarding, 'Update Account Information', a profile/details form, or 'what users see after they create an account' comes up -- and ALSO proactively once a realm is bootstrapped, because the default is that every new user hits that page.
| Name | Type | Req | Description |
|---|---|---|---|
| appName | string | – | App name, e.g. 'Mood Garden'. Used in the modal's copy. |
| componentPath | string | – | Where to WRITE the component, e.g. 'src/components/ProfileOnboarding.tsx'. |
| fields | array | – | Which fields to collect. ASK THE USER FIRST — do not guess. Default ['firstName','lastName']. |
| framework | string | – | Controls the mounting snippet. Default nextjs-app. |
| realm | string | – | Realm, e.g. 'vialproof'. Fills in the commands. |
| tidecloakUrl | string | – | Base URL. Default http://localhost:8080. |
No output schema declared.
No examples provided.
tide_playbook ~160
Read a step-by-step playbook for a specific Tide task
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Playbook name. Available: add-auth-nextjs-existing, add-auth-nextjs-fresh, add-rbac-nextjs, bootstrap-realm-from-template, configure-e2ee-roles-and-policies, deploy-forseti-policy, deploy-tidecloak-d… |
No output schema declared.
No examples provided.
tide_prompt ~62
Read a reusable starter prompt from the pack
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Prompt file name. Available: add-admin-approval-flow, build-private-customer-portal, migrate-generic-auth-to-tide, red-team-review, secure-existing-app, security-gap-analysis |
No output schema declared.
No examples provided.
tide_scenario ~69
Read a scenario summary from reference-apps/<scenario>/scenario.md
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Scenario name. Available: attested-provenance-registry, encrypted-communication, git-pr-signing-service, iga-admin-governance, organisation-password-manager, policy-governed-signing |
No output schema declared.
No examples provided.
tide_scenario_bootstrap ~74
Read a scenario bootstrap sequence from reference-apps/<scenario>/bootstrap-sequence.md
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Scenario name. Available: attested-provenance-registry, encrypted-communication, git-pr-signing-service, iga-admin-governance, organisation-password-manager, policy-governed-signing |
No output schema declared.
No examples provided.
tide_scenario_manifest ~70
Read a scenario manifest from reference-apps/<scenario>/manifest.yaml
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Scenario name. Available: attested-provenance-registry, encrypted-communication, git-pr-signing-service, iga-admin-governance, organisation-password-manager, policy-governed-signing |
No output schema declared.
No examples provided.
tide_scenario_roles ~75
Read a scenario role-policy matrix from reference-apps/<scenario>/role-policy-matrix.md
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Scenario name. Available: attested-provenance-registry, encrypted-communication, git-pr-signing-service, iga-admin-governance, organisation-password-manager, policy-governed-signing |
No output schema declared.
No examples provided.
tide_security_analysis ~128
Analyze an EXISTING (possibly non-Tide) system for security gaps and map them to Tide capabilities. Returns the Security Analyst role instructions, the security gap mapping table (SG-01…SG-18), and the runtime-probe procedures. Use this when the user asks 'do a security analysis', 'where is my auth weak', or 'what would Tide change about my security'.
| Name | Type | Req | Description |
|---|---|---|---|
| include_runtime_probes | boolean | – | Include the runtime-confirmation probe procedures (canon/security-runtime-probes.md). Only relevant when the operator is authorized to probe a live target. Defaults to true. |
No output schema declared.
No examples provided.
tide_skill ~94
Read a composable skill definition
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Skill name. Available: grc-review, tide-diagnostics, tide-integration, tide-learning-capture, tide-mcp-qa, tide-rbac-and-e2ee, tide-red-team, tide-reviewer, tide-route-and-api-protection, tide-scenar… |
No output schema declared.
No examples provided.
What is the Raziel MCP server?
Raziel is an MCP server listed in the public MCP registry as io.github.tide-foundation/raziel. MCP server teaching AI agents to implement TideCloak: auth, E2EE, IGA, security analysis. This page covers its hosted endpoint (https://mcp.tide.org/mcp).
Is the Raziel MCP server safe to use?
Raziel scores 86 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Raziel MCP server expose?
Raziel exposes 20 tools: tide_list, tide_canon, tide_playbook, tide_skill, tide_prompt, and 15 more. Their descriptions and schemas cost roughly 2,167 tokens of context every time the server is loaded.
Does the Raziel MCP server require authentication?
No. We connected to Raziel without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the Raziel MCP server still maintained?
Raziel is still listed as active in the MCP registry. We last reached this channel on 21 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.