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
DenoとJSRで実現する最速MCPサーバー開発記 / Building MCP Server...
Search
Okuto Oyama
June 18, 2025
Technology
2
510
DenoとJSRで実現する最速MCPサーバー開発記 / Building MCP Servers at Lightning Speed with Deno and JSR
toranoana.deno #21
登壇資料
Okuto Oyama
June 18, 2025
Tweet
Share
More Decks by Okuto Oyama
See All by Okuto Oyama
転生したらTypeScriptのEnumだった件 ~型安全性とエコシステムの変化で挫けそうになっているんだが~ / TSKaigi 2025
yamanoku
0
29
React 18からのAPI useIDを使おう!/ Let's Use the useID API from React 18
yamanoku
0
98
リアクティブシステムの変遷から理解するalien-signals / Learning alien-signals from the evolution of reactive systems
yamanoku
3
1.8k
ブラウザ互換の重要性 - あらゆるユーザーに価値を届けるために必要なこと
yamanoku
0
300
画面遷移から考えるNuxtアプリケーションをアクセシブルにする方法 / How to make Nuxt applications accessible based on page transitions
yamanoku
0
880
Vue.js でアクセシブルなコンポーネントをつくるために / To make accessible components in Vue.js
yamanoku
0
3.3k
アクセシブルなフロントエンド開発のこれまでとこれから / the past and future of accessible front-end development
yamanoku
3
5.8k
PWA is Progressive Web Accessibility
yamanoku
0
92
PWA RTA in Japan 2020
yamanoku
0
140
Other Decks in Technology
See All in Technology
“それなりに”安全なWebアプリケーションの作り方
xryuseix
0
380
エンタープライズ企業における開発効率化のためのコンテキスト設計とその活用
sergicalsix
1
400
Progressive Deliveryで支える!スケールする衛星コンステレーションの地上システム運用 / Ground Station Operation for Scalable Satellite Constellation by Progressive Delivery
iselegant
1
130
[mercari GEARS 2025] なぜメルカリはノーコードを選ばなかったのか? 社内問い合わせ工数を60%削減したLLM活用の裏側
mercari
PRO
0
110
JavaScript パーサーに using 対応をする過程で与えたエコシステムへの影響
baseballyama
1
100
Lazy Constant - finalフィールドの遅延初期化
skrb
0
210
データとAIで未来を創るDatabricks - 君の可能性を加速させるプラットフォーム
taka_aki
0
110
はじめての OSS コントリビューション 〜小さな PR が世界を変える〜
chiroito
4
320
それでは聞いてください「Impeller導入に失敗しました」 #FlutterKaigi #skia
tacck
PRO
0
120
改竄して学ぶコンテナサプライチェーンセキュリティ ~コンテナイメージの完全性を目指して~/tampering-container-supplychain-security
mochizuki875
1
200
us-east-1 の障害が 起きると なぜ ソワソワするのか
miu_crescent
PRO
3
900
Kubernetesと共にふりかえる! エンタープライズシステムのインフラ設計・テストの進め方大全
daitak
0
190
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Designing for humans not robots
tammielis
254
26k
Building Adaptive Systems
keathley
44
2.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Typedesign – Prime Four
hannesfritz
42
2.9k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Transcript
DenoとJSRで実現する 最速MCPサーバー開発記 2025-06-18 toranoana.deno #21 大山奥人 / yamanoku
• 株式会社Schoo ◦ 技術戦略部門ユニット • PodCast ◦ お元気ですか.fm • @yamanoku
◦ X ◦ GitHub ◦ BlueSky 大山奥人 - yamanoku おおやま おくと
個人でも会社でも 生成AIを使うことは 当たり前になってきた
世はまさに 生成AI戦国時代
突然ですが、質問です
皆さんの推し 生成AIサービスは 何ですか?
私の推しは …
None
Claudeの個人的推しポイント • LLMモデル(Claude Sonnet / Opus) • Claude Code •
Claude Code GitHub Actions • Web、DesktopやClaude CodeでのMCP連携 💰個人で6月からMAX $200 Planにて課金しています💰
MCP ( Model Context Protocol )
引用元: What is Model Context Protocol (MCP)? How it simplifies
AI integrations compared to APIs | AI Agents That Work
いくつかMCPを試してみた • Figma Context MCPを試してみて感動 ◦ Figma APIと疎通したやり取りでUIを構築 ◦ 1人日はかかりそうなUI実装が30分足らずで完成
• Playwright MCPでブラウザ操作して感動 ◦ テストケースをAI側が生成してくれる ◦ 自然言語でブラウザが操作できる! ◦ 新たな支援技術のようなもの?(アクセシビリティ観点)
これは、楽しい!
いくつかの言語でMCPのSDKが扱える ※スクリーンショットは2025年6月時点のもの
自分も MCPサーバー 作ってみよう!
mizchiさんの記事ほかでDenoでMCPサーバー作ってみた話を見かける
Denoで MCPサーバーを 作ってみる
Denoの開発体験が最高 • TypeScriptファースト ◦ 現在のNode.jsもオプションなしでTS実行できるが ◦ tsconfig.jsonの設定がたいへん…🥲 • Linterやtestなど機構が標準搭載 •
npm packageとも互換がある サクッと作ってみるには自分にとって最適だった!
Denoの特徴とMCPサーバーでの利点 • サンドボックス実行・パーミッション制御ができる ◦ 疎通・通信するときに確認が入る ◦ 実行前の確認はセキュリティ観点で有効 ◦ 場合によっては --deny-net
で外界と遮断することもできる ◦ 学習データ汚染を減らせる期待がある ちなみにNode.jsでもv24からパーミッション機能が安定版でリリース https://nodejs.org/api/permissions.html
npmとDenoでのMCPサーバー起動の違い
Denoで作った MCPサーバーの紹介
Baseline MCP Server 特定のHTML、CSS、JavaScript、Web APIに関するBaselineの情報を教えてく れるMCPサーバー AIエージェントが情報を参照してWidely なものを選んだり、一部制限があるもの を使わないようにする https://github.com/yamanoku/baseline-mcp-server
Connpass User MCP Server Connpassのユーザー情報ほか 参加イベント・発表イベントや 所属するグループ情報を取得する MCPサーバー ※Connpass APIキーが必要
https://github.com/yamanoku/connpass-user-mcp-server
ALT Decision Tree MCP Server 画像の代替テキスト(ALT属性)をALT決 定木に基づいて自動生成するMCPサー バー 画像とそれにまつわる文脈をLLMに 渡すことで、より適切な
代替テキストを提示してくれる https://github.com/yamanoku/alt-decision-tree-mcp-server
作ったMCPサーバーを 使ってもらいたい!
Deno packageの 配布先といえば …
None
JSRへのアップロード体験が最高! npm publishとの比較として…(個人的感想) • CLI操作+ブラウザ操作でサクサクとpublish • publishするまでの前準備がそこまでかからない • npmパッケージとしても配布できる ◦
npm i jsr:@organization/some-mcp-server
JSR Scoreを埋めていくのが楽しい
Deno Land Inc. への 個人的要望
Deno Deployで リモートMCPサーバーを ホスティングしたい!
リモートMCPサーバーのホスティング候補 • Cloudflare • Vercel • Azure Container Apps (他もご存じの方がいたら教えてください)
この中にDeno Deployも入れてほしい!
まとめ • MCPサーバーをDenoで作ってみた • Node.js環境で作るよりも簡単に作れるのが良い • パーミッションの制約でよりセキュアで高品質なMCPサーバーへ • JSRの体験が良すぎる。ありがとうございます •
Deno DeployでリモートMCPサーバー建てたい!お願いします! みんなもDenoでMCPサーバー作ってみよう!
Thank you for listening ! 2025-06-18 toranoana.deno #21 大山奥人 /
yamanoku