Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Cloudflare MCP ServerでClaude Desktop からWeb APIを構築
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
kutakutat
December 12, 2024
Programming
1.2k
1
Share
Cloudflare MCP ServerでClaude Desktop からWeb APIを構築
Cloudflare MCP Server を使って Claude Desktop から Cloudflare Workers で Web APIを構築
kutakutat
December 12, 2024
More Decks by kutakutat
See All by kutakutat
AI ファーストなコードエディター Cursor を導入してみた
kutakutat
0
1.3k
Bitcoinから学ぶブロックチェーン入門
kutakutat
0
270
AutoML Tables で コードを書かずに機械学習入門 / Introduction to Machine Learning without Writing Code with AutoML Tables
kutakutat
0
580
Other Decks in Programming
See All in Programming
How Swift's Type System Guides AI Agents
koher
0
190
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
5
2.5k
Codex CLI でつくる、Issue から merge までの開発フロー
amata1219
0
330
Offline should be the norm: building local-first apps with CRDTs & Kotlin Multiplatform
renaudmathieu
0
170
条件判定に名前、つけてますか? #phperkaigi #c
77web
2
990
PHPで TLSのプロトコルを実装してみる
higaki_program
0
750
仕様漏れ実装漏れをなくすトレーサビリティAI基盤のご紹介
orgachem
PRO
9
5.2k
PHP でエミュレータを自作して Ubuntu を動かそう
m3m0r7
PRO
2
170
テレメトリーシグナルが導くパフォーマンス最適化 / Performance Optimization Driven by Telemetry Signals
seike460
PRO
2
220
レガシーPHP転生 〜父がドメインエキスパートだったのでDDD+Claude Codeでチート開発します〜
panda_program
0
620
「効かない!」依存性注入(DI)を活用したAPI Platformのエラーハンドリング奮闘記
mkmk884
0
310
ドメインイベントでビジネスロジックを解きほぐす #phpcon_odawara
kajitack
2
120
Featured
See All Featured
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
89
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
270
Technical Leadership for Architectural Decision Making
baasie
3
320
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.3k
Building the Perfect Custom Keyboard
takai
2
720
A Tale of Four Properties
chriscoyier
163
24k
Paper Plane (Part 1)
katiecoart
PRO
0
6.5k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
GraphQLとの向き合い方2022年版
quramy
50
14k
The agentic SEO stack - context over prompts
schlessera
0
740
Building Applications with DynamoDB
mza
96
7k
Transcript
Cloudflare MCP ServerでClaude Desktop からWeb APIを構築してみた Taku Yoshida (FrontierTech 合同会社)
2 スピーカー紹介 吉田 拓 • テクノロジーで "はじめる" を "ささえる" を掲げる
FrontierTech 社 CEO • 最近ハマってる遊び: ポーカー、o1 pro mode に10~30年 後に発見される概念(妄想)を考えてもらうこと FrontierTech CEO
3 もう少し詳しく https://zenn.dev/kutakutat/scraps/b7747379dc6033
4 モチベーション 📢 Anthropic がなにやら "MCP" っていう概念を発表した 💡 Claude Desktop
を離れずに Cloudflare Workers にスクリプトをデ プロイできるらしい 👉 (実用性はともかく ) まずはやってみたい !!
5 MCP(Model Content Protocol) とは https://modelcontextprotocol.io/introduction MCP は、AI アプリケーション用の USB-C
ポートのようなものです。 USB-C がデバイスをさまざまな周辺機器やアクセサリに接続するための標準化された方法を提供するの と同様に、MCP は AI モデルをさまざまなデータ ソースやツールに接続するための標準化された方法を提 供します。 Model Content Protocol(MCP) は、LLM アプリケーションと外部データ ソースおよびツールとのシー ムレスな統合 を可能にするオープンプロトコル です。 AI 搭載 IDE の構築、チャット インターフェイスの強化、カスタム AI ワークフローの作成など、どのような場 合でも、MCP は LLM を必要なコンテキストに接続するための標準化された方法を提供 します。 https://spec.modelcontextprotocol.io/specification/
6 Claude Desktop、IDE、または MCP を介してリソースにアク セスする AI ツールなどのプログラム MCP Host
MCPを活用した一般的なアーキテクチャーの例 Server との 1:1 接続を維持するプロトコルクライアント MCP Client 標準化されたプロトコルを通じて特定の機能を公開する軽量 プログラム (仕様上はリモートにあってもOK) MCP Server
7 MCP に対応した Host, Client 機能が実装されたデスクトップアプリ。 claude.ai では利用できない。 ※ Claud
Desktop では現在マシン上で実行されているローカル MCP Server への接続のみをサポートしている。 Claude Desktop Claude Desktop: MCP Host, Client の代表格 公式ドキュメントにある MCP 対応した Client の一覧
8 MCP 仕様の概要 MCP Client MCP Server Sampling サーバーからクライアントの LLMを使える機能
Tool モデルが実行できるアクションを提供する機能 Prompt プロンプトテンプレート機能 Resource データやコンテンツを提供する機能 JSON-RPC 形式 ステートフルな接続 どの機能を使うかの交渉 MCP Client が機能に対応していれば MCP Server そのままに Client を 切り替えられる (逆もしかり) Roots サーバーからクライアントの ファイルシステムのルートを使える機能
9 Claude Desktop とサーバ機能 Tool モデルが実行できるアクションを提供する機能 Resource データやコンテンツを提供する機能 Prompt プロンプトテンプレート機能
10 Claude Desktop とサーバ機能 Tool モデルが実行できるアクションを提供する機能 Prompt プロンプトテンプレート機能 Resource データやコンテンツを提供する機能
11 Tool を利用する流れ 結果をLLMが利用 Clientから指示 サーバから提供された Toolsを一覧化 LLMがToolを選ぶ サーバの Toolを使用(コール)する
12 PC やりたかったこと MCP Server Cloudflare MCP Server MCP Host
Claude Desktop MCP Client Cloudflare API スクリプトの作成 Cloudflare Workers の作成 スクリプトのデプロイ
13 Cloudflare 公式の MCP Server を利用する セットアップ手順 1. npx @cloudflare/mcp-server-cloudflare
init を実行 2. /Library/Application Support/Claude/claude_desktop_config.json に設定が追加される 3. Cloud Desktop を再起動
14 mcp-server-cloudflare の中身(とても雑な紹介 ) サーバから提供された Toolsを一覧化 worker_list Toolを使用(コール)する
実行!
16 作成中...
17 …完成
18 たしかにできている !
19 作成されているスクリプトの中身
20 PC やりたかったこと MCP Server Cloudflare MCP Server MCP Host
Claude Desktop MCP Client Cloudflare API スクリプトの作成 Cloudflare Workers の作成 スクリプトのデプロイ
21 本当はやりたかったこと : Hono を使用する もともとはさくっと Hono の API 立てられたら最高
! と思っていた Cloudflare Workers にファイルをアップする時に、コードの中身がそのままリクエストに展開されるように なっている Claude から MCP Client 経由で Toolコールする際にバンドルしたファイルがトークンの上限にひっかかり 実行できなかった ※ Hono は十分に軽量で非常にすきなライブラリです。あくまでトークンの上限に対して 当初想定の流れ 1. ✅ Fetch MCP Server で Hono のクイックスタートを URL を渡してよみこむ 2. ✅ Claude にサンプルコードを作成してもらう 3. ✅ Filesysytem MCP Server でローカル PC の特定のディレクトリにコードを置く 4. ✅ (Claude Desktop を離れ) npx wrangler deploy --dry-run --outdir dist でバンドル (Claude Desktop に戻る) 5. ✅ Filesysytem MCP Server でバンドルした成果物のパスを指定して読み込んでもらう 6. ❌ Cloudflare MCP Server で Cloudflare Workers にコードをあげる
まとめ MCPはLLMをデータやツールに接続するための標準化された仕様 MCP Server を作れば Cloudflare連携、ファイル連携などいろい ろできてLLMがいい感じに制御してくれる オープンな仕様なのでサーバー /クライアント増える可能性 +
仕様にはもっと広範な内容があり今後も期待 ! Sampling すごそう