Add the Consensus MCP server to a Cloudflare One MCP Portal so users reach it through one Access-protected URL.
MCP Server Portals, part of Cloudflare One (Zero Trust), give your users a single portal URL for all approved MCP servers, with Access policies in front. The portal auto-detects Streamable HTTP and supports stateless servers.
Cloudflare’s separate AI Gateway product is not in the MCP path; tool calls don’t traverse it. Use MCP Portals.
Set the authentication type to bearer and paste your Consensus API key as the raw bearer token (or as a custom Authorization: Bearer ak_live_... header).
Set the authentication type to oauth and choose automatic OAuth registration. Cloudflare registers with Consensus through Dynamic Client Registration and each user signs in on first use. Manual credentials also work if you prefer a confidential client: Authorization endpoint https://consensus.app/oauth/authorize/, Token endpoint https://consensus.app/oauth/token/, Scope search.
Users blocked by an Access policy can still reach mcp.consensus.app directly unless Access is also the OAuth provider; combine with your egress policy if that matters.
Manual-OAuth servers show Waiting until the first user completes sign-in.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Consensus","description":"Developer documentation for Consensus, the AI research engine.","colors":{"primary":"#068EF1","light":"#25A4FF","dark":"#006FCE"},"logo":{"light":"https://mintcdn.com/consensus-f7e6ffce/dgMy-hN5nu-w_SpH/logo/logomark.svg?fit=max\u0026auto=format\u0026n=dgMy-hN5nu-w_SpH\u0026q=85\u0026s=596624f632c0308dda7b8f24003c9a33","dark":"https://mintcdn.com/consensus-f7e6ffce/dgMy-hN5nu-w_SpH/logo/logomark.svg?fit=max\u0026auto=format\u0026n=dgMy-hN5nu-w_SpH\u0026q=85\u0026s=596624f632c0308dda7b8f24003c9a33"},"favicon":"https://mintcdn.com/consensus-f7e6ffce/dgMy-hN5nu-w_SpH/logo/logomark.svg?fit=max\u0026auto=format\u0026n=dgMy-hN5nu-w_SpH\u0026q=85\u0026s=596624f632c0308dda7b8f24003c9a33","navbar":{"links":[{"icon":"https://cdn.jsdelivr.net/npm/@fortawesome/[email protected]/svgs/brands/github.svg","href":"https://github.com/Consensus-NLP","label":"GitHub"},{"href":"https://help.consensus.app","label":"Help center"}],"primary":{"type":"button","label":"Go to Consensus","href":"https://consensus.app"}},"footer":{"socials":{"github":"https://github.com/Consensus-NLP","x":"https://twitter.com/ConsensusNLP","linkedin":"https://www.linkedin.com/company/consensus-nlp"}},"icons":{"library":"lucide"},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"consensus-f7e6ffce","hasAudioNarration":false,"actualSubdomain":"consensus-f7e6ffce","customDomains":["docs.consensus.app"],"gitSource":{"type":"github","owner":"consensus-nlp","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ae35fc214b16bba03dc825b","collectionId":"816afcef-4312-4fb3-8632-d68a9ad56f43","liveDeploymentHistoryId":"6ae35fc214b16bba03dc825b","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae35fc214b16bba03dc825b","clientVersion":"0.0.4021","searchFilterCounts":[{"language":"default","tag":"Use cases","count":37},{"language":"default","tag":"Get started","count":34},{"language":"default","tag":"Use case library","count":32},{"language":"default","tag":"MCP","count":21},{"language":"default","tag":"Enterprise","count":20},{"language":"default","tag":"API","count":12},{"language":"default","tag":"Connect your client","count":12},{"language":"default","tag":"AI gateways","count":10},{"language":"default","tag":"Academic","count":10},{"language":"default","tag":"Introduction","count":7}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"gallery.css","content":".gallery-page-title{font-size:30px;font-weight:650;letter-spacing:-.02em;line-height:1.2;margin:0 0 8px;color:#18181b}.dark .gallery-page-title{color:#fafafa}.gallery-page-subtitle{font-size:15px;line-height:1.55;margin:0;color:#52525b}.dark .gallery-filters-label,.dark .gallery-page-subtitle{color:#a1a1aa}.gallery-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:24px 0 8px}.gallery-filters-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#71717a;margin-right:4px}.gallery-chip{appearance:none;cursor:pointer;font-size:13px;font-weight:500;line-height:1;padding:7px 13px;border-radius:999px;border:1px solid #e4e4e7;background:#fff;color:#3f3f46;transition:background-color 120ms ease,border-color 120ms ease,color 120ms ease}.gallery-chip:hover{background:#f4f4f5;border-color:#d4d4d8}.gallery-chip.active{background:#068ef1;border-color:#068ef1;color:#fff}.dark .gallery-chip{background:0 0;border-color:#3f3f46;color:#d4d4d8}.dark .gallery-chip:hover{background:#27272a;border-color:#52525b}.dark .gallery-chip.active{background:#25a4ff;border-color:#25a4ff;color:#0b1220}.gallery-count{font-size:13px;color:#71717a;margin:0 0 20px}.dark .gallery-count{color:#a1a1aa}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-bottom:40px}@media (max-width:1100px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.gallery-grid{grid-template-columns:minmax(0,1fr)}}.gallery-card[hidden]{display:none}.gallery-card{display:block;text-decoration:none!important;border:0;height:100%}.gallery-card-inner{display:flex;flex-direction:column;height:100%;position:relative;padding:16px;border-radius:12px;border:1px solid #e4e4e7;background:#fff;transition:border-color 140ms ease,box-shadow 140ms ease,transform 140ms ease}.gallery-card:hover .gallery-card-inner{border-color:#a1a1aa;box-shadow:0 4px 14px rgba(9,9,11,.07);transform:translateY(-2px)}.dark .gallery-card-inner{border-color:#27272a;background:#111113}.dark .gallery-card:hover .gallery-card-inner{border-color:#52525b;box-shadow:0 4px 16px rgba(0,0,0,.35)}.gallery-popular{position:absolute;top:12px;right:13px;font-size:12px;line-height:1;color:#f59e0b}.gallery-card-personas{display:block;font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px;padding-right:18px;color:#068ef1}.gallery-card-personas[data-persona=academic]{color:#068ef1}.gallery-card-personas[data-persona=life-health-sciences]{color:#059669}.gallery-card-personas[data-persona=consulting-advisory]{color:#7c3aed}.gallery-card-personas[data-persona=physical-sciences]{color:#d97706}.gallery-card-personas[data-persona=platform]{color:#db2777}.dark .gallery-card-personas[data-persona=academic]{color:#38bdf8}.dark .gallery-card-personas[data-persona=life-health-sciences]{color:#34d399}.dark .gallery-card-personas[data-persona=consulting-advisory]{color:#a78bfa}.dark .gallery-card-personas[data-persona=physical-sciences]{color:#fbbf24}.dark .gallery-card-personas[data-persona=platform]{color:#f472b6}.gallery-card-title{display:block;font-size:15px;font-weight:600;line-height:1.35;margin-bottom:6px;color:#18181b}.dark .gallery-card-title{color:#fafafa}.gallery-card-desc{display:block;font-size:13px;line-height:1.5;color:#52525b;margin-bottom:12px}.dark .gallery-card-desc{color:#a1a1aa}.gallery-card-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto}.gallery-tag{font-size:10px;font-weight:550;line-height:1;padding:4px 7px;border-radius:5px;background:#f4f4f5;color:#52525b}.dark .gallery-tag{background:#1f1f23;color:#a1a1aa}.gallery-empty{grid-column:1/-1;padding:32px 0;font-size:14px;color:#71717a}.dark .gallery-empty{color:#a1a1aa}"},{"filePath":"landing.css","content":".uc-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:12px 0 8px}@media (max-width:900px){.uc-tiles{grid-template-columns:minmax(0,1fr)}}.uc-tile,.uc-tile-title{display:flex;flex-direction:column}.uc-tile{height:100%;padding:18px;border:0!important;border-radius:12px;background:#f4f8fc;box-shadow:inset 0 0 0 1px #dde7f1;text-decoration:none!important;transition:box-shadow 140ms ease,transform 140ms ease,background-color 140ms ease}.uc-tile:hover{background:#eef5fc;box-shadow:inset 0 0 0 1px #b9cfe4,0 4px 14px rgba(9,9,11,.07);transform:translateY(-2px)}.dark .uc-tile{background:#111a24;box-shadow:inset 0 0 0 1px #1f2d3b}.dark .uc-tile:hover{background:#142030;box-shadow:inset 0 0 0 1px #2e445a,0 4px 16px rgba(0,0,0,.35)}.uc-tile-title{align-items:flex-start;gap:12px;font-size:15px;font-weight:600;line-height:1.35;color:#18181b}.dark .uc-tile-title{color:#fafafa}.uc-tile-desc{display:block;margin-top:6px;font-size:14px;line-height:1.5;color:#52525b}.dark .uc-tile-desc{color:#a1a1aa}.uc-tile-cta{display:inline-flex;align-items:center;gap:4px;margin-top:auto;padding-top:14px;font-size:13px;font-weight:600;color:#068ef1}.dark .uc-tile-cta{color:#25a4ff}"},{"filePath":"sidebar-links.css","content":"a[data-internal-link] svg.size-2\\.5{display:none}"}],"page":{"pagePath":"enterprise/gateways/cloudflare","slug":"/enterprise/gateways/cloudflare","pageMetadata":{"title":"Cloudflare MCP Server Portals","description":"Add the Consensus MCP server to a Cloudflare One MCP Portal so users reach it through one Access-protected URL.","sidebarTitle":"Cloudflare","href":"/enterprise/gateways/cloudflare"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Add the Consensus MCP server to a Cloudflare One MCP Portal so users reach it through one Access-protected URL.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Note,Step,Steps,Tab,Table,Tabs}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Tab)_missingMdxReference(`Tab`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tabs)_missingMdxReference(`Tabs`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`MCP Server Portals, part of Cloudflare One (Zero Trust), give your users a single portal URL for all approved MCP servers, with Access policies in front. The portal auto-detects Streamable HTTP and supports stateless servers.`}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`Cloudflare’s separate `,_jsx(_components.strong,{children:`AI Gateway`}),` product is not in the MCP path; tool calls don’t traverse it. Use MCP Portals.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`register-the-server`,children:`Register the server`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Open MCP Portals`,children:_jsxs(_components.p,{children:[`In the Cloudflare dashboard go to `,_jsx(_components.strong,{children:`Zero Trust › Access controls › MCP Portals`}),`, open the `,_jsx(_components.strong,{children:`MCP servers`}),` tab, and select `,_jsx(_components.strong,{children:`Add an MCP server`}),`.`]})}),_jsx(Step,{title:`Fill in the server`,children:_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Value`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Name`})}),_jsx(_components.td,{children:`Consensus`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`HTTP URL`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`https://mcp.consensus.app/mcp`})})]})]})]})}),_jsx(Step,{title:`Choose authentication and policies`,children:_jsxs(_components.p,{children:[`Pick one of the options below, attach your Access policies, then `,_jsx(_components.strong,{children:`Save and connect server`}),`.`]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`authentication`,children:`Authentication`}),`\n`,_jsxs(Tabs,{children:[_jsx(Tab,{title:`Bearer (shared)`,id:`bearer-shared`,children:_jsxs(_components.p,{children:[`Set the authentication type to `,_jsx(_components.strong,{children:`bearer`}),` and paste your Consensus API key as the raw bearer token (or as a custom `,_jsx(_components.code,{children:`Authorization: Bearer ak_live_...`}),` header).`]})}),_jsx(Tab,{title:`OAuth (per user)`,id:`oauth-per-user`,children:_jsxs(_components.p,{children:[`Set the authentication type to `,_jsx(_components.strong,{children:`oauth`}),` and choose `,_jsx(_components.strong,{children:`automatic OAuth registration`}),`. Cloudflare registers with Consensus through Dynamic Client Registration and each user signs in on first use. Manual credentials also work if you prefer a confidential client: Authorization endpoint `,_jsx(_components.code,{children:`https://consensus.app/oauth/authorize/`}),`, Token endpoint `,_jsx(_components.code,{children:`https://consensus.app/oauth/token/`}),`, Scope `,_jsx(_components.code,{children:`search`}),`.`]})})]}),`\n`,_jsxs(_components.p,{children:[`Terraform resource: `,_jsx(_components.code,{children:`cloudflare_zero_trust_access_mcp_server_portal`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`notes`,children:`Notes`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Users blocked by an Access policy can still reach `,_jsx(_components.code,{children:`mcp.consensus.app`}),` directly unless Access is also the OAuth provider; combine with your egress policy if that matters.`]}),`\n`,_jsxs(_components.li,{children:[`Manual-OAuth servers show `,_jsx(_components.strong,{children:`Waiting`}),` until the first user completes sign-in.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Cloudflare docs: `,_jsx(_components.a,{href:`https://developers.cloudflare.com/cloudflare-one/access-controls/ai-controls/mcp-portals/`,children:`MCP Portals`})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Cloudflare MCP Server Portals","description":"Add the Consensus MCP server to a Cloudflare One MCP Portal so users reach it through one Access-protected URL.","sidebarTitle":"Cloudflare","href":"/enterprise/gateways/cloudflare"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Register the server","slug":"register-the-server","depth":2,"children":[]},{"title":"Authentication","slug":"authentication","depth":2,"children":[]},{"title":"Notes","slug":"notes","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/consensus-f7e6ffce/c0cade023bb5edd7/gallery.js","/_mintlify/custom/consensus-f7e6ffce/03c314722d3b2561/sidebar-links.js"],"subdomain":"consensus-f7e6ffce","siteName":"Consensus","title":"Cloudflare MCP Server Portals - Consensus","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-14T15:42:41.090Z","originalFileLocation":"enterprise/gateways/cloudflare.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Add the Consensus MCP server to a Cloudflare One MCP Portal so users reach it through one Access-protected URL.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Consensus\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/consensus-f7e6ffce/-BMcPI-gzcPNzUTf/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/consensus-f7e6ffce/-BMcPI-gzcPNzUTf/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/consensus-f7e6ffce/-BMcPI-gzcPNzUTf/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/consensus-f7e6ffce/-BMcPI-gzcPNzUTf/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/consensus-f7e6ffce/-BMcPI-gzcPNzUTf/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/consensus-f7e6ffce/-BMcPI-gzcPNzUTf/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/consensus-f7e6ffce/-BMcPI-gzcPNzUTf/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/consensus-f7e6ffce/-BMcPI-gzcPNzUTf/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/consensus-f7e6ffce/-BMcPI-gzcPNzUTf/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Cloudflare MCP Server Portals - Consensus\">\u003cmeta data-mint-head property=\"og:description\" content=\"Add the Consensus MCP server to a Cloudflare One MCP Portal so users reach it through one Access-protected URL.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Consensus\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.consensus.app/enterprise/gateways/cloudflare\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://consensus-f7e6ffce.mintlify.app/_mintlify/api/og/v2?division=AI+gateways\u0026amp;title=Cloudflare+MCP+Server+Portals\u0026amp;description=Add+the+Consensus+MCP+server+to+a+Cloudflare+One+MCP+Portal+so+users+reach+it+through+one+Access-protected+URL.\u0026amp;theme=1fe82c7b97f282977ec251e5\u0026amp;signature=d4a1fc2a92f8c1a876b035f1e074bbaef78520cc88f12fd6d5001cd51d0b3589\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Cloudflare MCP Server Portals - Consensus\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Add the Consensus MCP server to a Cloudflare One MCP Portal so users reach it through one Access-protected URL.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://consensus-f7e6ffce.mintlify.app/_mintlify/api/og/v2?division=AI+gateways\u0026amp;title=Cloudflare+MCP+Server+Portals\u0026amp;description=Add+the+Consensus+MCP+server+to+a+Cloudflare+One+MCP+Portal+so+users+reach+it+through+one+Access-protected+URL.\u0026amp;theme=1fe82c7b97f282977ec251e5\u0026amp;signature=d4a1fc2a92f8c1a876b035f1e074bbaef78520cc88f12fd6d5001cd51d0b3589\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/consensus-f7e6ffce/-BMcPI-gzcPNzUTf/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Consensus\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#068EF1\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.consensus.app/enterprise/gateways/cloudflare\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/enterprise/gateways/cloudflare.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.consensus.app/#organization\",\"name\":\"Consensus\",\"url\":\"https://docs.consensus.app\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/consensus-f7e6ffce/dgMy-hN5nu-w_SpH/logo/logomark.svg?fit=max\u0026auto=format\u0026n=dgMy-hN5nu-w_SpH\u0026q=85\u0026s=596624f632c0308dda7b8f24003c9a33\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.consensus.app#website\",\"name\":\"Consensus\",\"url\":\"https://docs.consensus.app\",\"publisher\":{\"@id\":\"https://docs.consensus.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.consensus.app/enterprise/gateways/cloudflare#webpage\",\"url\":\"https://docs.consensus.app/enterprise/gateways/cloudflare\",\"name\":\"Cloudflare MCP Server Portals\",\"description\":\"Add the Consensus MCP server to a Cloudflare One MCP Portal so users reach it through one Access-protected URL.\",\"dateModified\":\"2026-09-14T15:42:41.090Z\",\"isPartOf\":{\"@id\":\"https://docs.consensus.app#website\"},\"breadcrumb\":{\"@id\":\"https://docs.consensus.app/enterprise/gateways/cloudflare#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.consensus.app/enterprise/gateways/cloudflare#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"AI gateways\",\"item\":\"https://docs.consensus.app/enterprise/gateways/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Cloudflare MCP Server Portals\",\"item\":\"https://docs.consensus.app/enterprise/gateways/cloudflare\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.consensus.app/enterprise/gateways/cloudflare#article\",\"headline\":\"Cloudflare MCP Server Portals\",\"name\":\"Cloudflare MCP Server Portals\",\"description\":\"Add the Consensus MCP server to a Cloudflare One MCP Portal so users reach it through one Access-protected URL.\",\"url\":\"https://docs.consensus.app/enterprise/gateways/cloudflare\",\"mainEntityOfPage\":{\"@id\":\"https://docs.consensus.app/enterprise/gateways/cloudflare#webpage\"},\"dateModified\":\"2026-09-14T15:42:41.090Z\",\"publisher\":{\"@id\":\"https://docs.consensus.app/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.consensus.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Consensus\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Consensus","nav":{"global":null,"tabs":[{"tab":"Get started","pages":[{"title":"Get started","href":"/get-started/what-is-consensus"}]},{"tab":"API","pages":[{"title":"API","href":"/api-get-started"}]},{"tab":"MCP","pages":[{"title":"MCP","href":"/consensus-mcp"}]},{"tab":"Enterprise","groups":[{"group":"Enterprise","pages":[{"title":"Consensus for enterprise","sidebarTitle":"Overview","icon":"building-2","href":"/enterprise/overview"},{"title":"Connection reference","sidebarTitle":"Connection reference","icon":"file-code","href":"/enterprise/connection-reference"},{"title":"Security and data handling","sidebarTitle":"Security and data","icon":"shield-check","href":"/enterprise/security"},{"title":"Single sign-on (SSO)","sidebarTitle":"Single sign-on","icon":"key-round","href":"/enterprise/sso"}]},{"group":"Microsoft","pages":[{"title":"Microsoft 365 Copilot","sidebarTitle":"Microsoft 365 Copilot","icon":"https://mintlify.s3.us-west-1.amazonaws.com/consensus-f7e6ffce/logo/clients/microsoft-copilot.svg","href":"/enterprise/microsoft-365-copilot"},{"title":"Microsoft Copilot Studio","sidebarTitle":"Copilot Studio","icon":"https://mintlify.s3.us-west-1.amazonaws.com/consensus-f7e6ffce/logo/clients/microsoft-copilot.svg","href":"/enterprise/copilot-studio"}]},{"group":"AI gateways","pages":[{"title":"AI gateways and MCP registries","sidebarTitle":"Overview","icon":"server","href":"/enterprise/gateways/overview"},{"title":"TrueFoundry AI Gateway","sidebarTitle":"TrueFoundry","href":"/enterprise/gateways/truefoundry"},{"title":"LiteLLM MCP Gateway","description":"Add the Consensus MCP server to LiteLLM's config.yaml with a bearer token or per-user OAuth with Dynamic Client Registration.","sidebarTitle":"LiteLLM","href":"/enterprise/gateways/litellm"},{"title":"Cloudflare MCP Server Portals","sidebarTitle":"Cloudflare","href":"/enterprise/gateways/cloudflare"},{"title":"IBM ContextForge MCP Gateway","description":"Register the Consensus MCP server in IBM's open-source ContextForge gateway with a bearer token or per-user OAuth.","sidebarTitle":"IBM ContextForge","href":"/enterprise/gateways/ibm-contextforge"},{"title":"Azure API Management","sidebarTitle":"Azure API Management","href":"/enterprise/gateways/azure-api-management"},{"title":"AWS Bedrock AgentCore Gateway","sidebarTitle":"AWS AgentCore","href":"/enterprise/gateways/aws-agentcore"},{"title":"Portkey MCP Gateway","sidebarTitle":"Portkey","href":"/enterprise/gateways/portkey"},{"title":"Obot MCP Gateway","sidebarTitle":"Obot","href":"/enterprise/gateways/obot"},{"title":"Other gateways","sidebarTitle":"Other gateways","href":"/enterprise/gateways/other-gateways"}]}]},{"tab":"Use cases","pages":[{"title":"Use cases","href":"/use-cases"}]}]},"title":"Cloudflare MCP Server Portals - Consensus","buildId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","deploymentId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","dynamics":[],"chunks":[]}