Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Cloudflareで認証付きリモートMCPサーバーをつくりました
Search
nyawach
November 12, 2025
240
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Cloudflareで認証付きリモートMCPサーバーをつくりました
2025/11/12 Cloudflare Workers Tech Talk in Fukuoka #1
nyawach
November 12, 2025
More Decks by nyawach
See All by nyawach
ts-morphを使ってコードリプレイスとASTへのハードルを下げる!
nyawach
5
890
Featured
See All Featured
So, you think you're a good person
axbom
PRO
2
2.2k
Building the Perfect Custom Keyboard
takai
2
900
The agentic SEO stack - context over prompts
schlessera
0
970
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.2k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Automating Front-end Workflow
addyosmani
1369
210k
30 Presentation Tips
portentint
PRO
1
430
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
330
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Balancing Empowerment & Direction
lara
6
1.3k
Transcript
Cloudflareで認証付き リモートMCPサーバーを つくりました 🍜 Cloudflare Workers Tech Talk in Fukuoka
#1
ひめ 姫野 佑介 / Yusuke Himeno 株式会社マネーフォワード カードプロダクト開発部 フロントエンドエンジニア リーダー
福岡在住。Web技術全般が好き。 X: @_hyme_ GitHub: nyawach
さて、突然ですが、
ラーメンは好きですか?
わたしは大好きです
レビューを貯めてきました 食べログやRetty、noteでの記事投稿などでのレビューが溜まってきた
とあるSlackチャンネルにて
どうせなら ・ 使ったことない技術を使いたい ・ リモートMCPサーバーにして設定が楽になるようにしたい ・ ただ、アクセス制御をかけたい ・ 変なレビューコメントがでたら怒られそう
どうせなら ・ 使ったことない技術を使いたい ・ リモートMCPサーバーにして設定が楽になるようにしたい ・ ただ、アクセス制御をかけたい ・ 変なレビューコメントがでたら怒られそう Cloudflare
ですべて叶いそう!
デモ動画
技術スタック Cloudflare ・ Workers - 実行環境 ・ D1 - データベース
・ Access - アクセス制限 アプリケーション ・ @modelcontextprotocol/sdk ・ Hono / Hono MCP ・ Drizzle ・ TypeScript
Cloudflare D1 ・ note、食べログ、Rettyから頑張って引っ張ってくる ・ Cloudflare D1へ頑張って保存
Cloudflare Access Zero Trust セキュリティで、インフラストラクチャ、セルフホスト型、SaaS アプリ ケーションにアクセスできるユーザーを管理(ダッシュボードの説明そのまま) タイプが色々あるが、今回はSaaSタイプを選択
Cloudflare Access ログイン方法 OIDC対応のIdPを設定可能 今回はデフォルトで提供されている Onetime PINを利用
Cloudflare Access ポリシー設定 以下のようにルールを設定 ・ セレクター: Email ・ 値: 特定のメールアドレス数件
認証クライアントの実装 Exampleがある remote-mcp-cf-access - cloudflare/ai
アプリケーション実装 ・ McpServer 初期化 ・ API(店舗検索)を登録 ・ HonoとHono MCPで Streamable
HTTP配信 import { StreamableHTTPTransport } from "@hono/mcp"; const app = new Hono(); app.all("/mcp", async (c) => { const transport = new StreamableHTTPTransport(); await mcpServer.connect(transport); return transport.handleRequest(c); }); import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import { Hono } from "hono"; import { schema, handler, } from "./api/search-restaurants"; const mcpServer = new McpServer({ name: "Ramen Review Search MCP Server", version: "1.0.0", }); mcpServer.tool("search_restaurant", schema, handler);
アプリケーション実装 OAuthProvider でラップしたものを default export https://github.com/cloudflare/workers-oauth-provider // ... import {
OAuthProvider } from "@cloudflare/workers-oauth-provider" export default new OAuthProvider({ apiHandlers: { "/mcp": { fetch: app.fetch as ExportedHandlerFetchHandler<unknown, unknown>, }, }, defaultHandler: { fetch: handleAccessRequest as ExportedHandlerFetchHandler<unknown, unknown>, }, authorizeEndpoint: "/authorize", clientRegistrationEndpoint: "/register", tokenEndpoint: "/token", });
動作確認 Cursor設定 Remote MCPに対応してないため、 mcp-remote コマンドで実行 { "servers": { "ramen-mcp":
{ "command": "npx", "args": [ "-y", "mcp-remote", "<URL>" ] } } }
動作確認 承認画面が表示される
動作確認 メールアドレスを入力 とどいたメールからOTPを入力
🎉
まとめ ✅ アクセス制限付きのリモートMCPサーバーをCloudflareプロダクト群で つくれた ✅ サンプルも豊富なので気軽につくれる環境がある
Thank you! 🍜