Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Generate random values and probability distribution samples.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ใช้ได้ทั้ง Claude บนเว็บ แอปคอมพิวเตอร์ และมือถือ:
https://random-mcp.eldesh-tools.workers.dev/mcpพิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http random https://random-mcp.eldesh-tools.workers.dev/mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"random": {
"url": "https://random-mcp.eldesh-tools.workers.dev/mcp"
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"random": {
"type": "http",
"url": "https://random-mcp.eldesh-tools.workers.dev/mcp"
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ChatGPT ต่อได้เฉพาะ server ที่อยู่บนอินเทอร์เน็ต:
https://random-mcp.eldesh-tools.workers.dev/mcpชื่อเมนูอาจต่างกันเล็กน้อยตามแพ็กเกจและรุ่นของแอป
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ยังไม่ได้อ่านรายการเครื่องมือของตัวนี้ เราตรวจ endpoint ทีละชุดวนไป
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub eldesh ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป
ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป
ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนคลาวด์ของผู้ทำ ต่อผ่านอินเทอร์เน็ตได้เลย ไม่ต้องลงโปรแกรม แต่ข้อมูลที่ส่งให้จะผ่านเซิร์ฟเวอร์ของผู้ทำ
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (2.1.0) เข้า registry 2 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Reelsaw
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Drive a self-hosted Reelsaw: turn long videos into vertical clips, edit, re-render and export them.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Cloudflare Workers 上で動作する、乱数生成用の MCP(Model Context Protocol)サーバーです。Notion Agent などの MCP クライアントから、整数・浮動小数点数・重み付き選択・各種確率分布の標本を生成できます。
公式サイト: https://random-mcp.eldesh-tools.workers.dev/
言語モデル自身に乱数を選ばせず、外部の乱数生成処理を MCP ツールとして呼び出せるようにすることを目的としています。
言語モデルに乱数の選択を委ねると、モデルの学習データや出力傾向が結果に影響し、統計的に偏った値が生成されます。たとえば「1から10の整数をランダムに選べ」と指示しても、モデルは特定の値(7など)を好む傾向があり、まっとうな意味での乱数にはなりません。このため、乱数が必要な処理はモデルが自律判断するのではなく、本サーバーのツールを通じて生成する必要があります。
乱数源には Web Crypto API を使用します。整数生成では、剰余による偏りを避けるため rejection sampling を行います。ただし、暗号鍵や認証トークンの生成を目的とした API ではありません。
公式サーバーは次の MCP エンドポイントで利用できます。利用者が Cloudflare や GitHub OAuth App を設定する必要はありません。
https://random-mcp.eldesh-tools.workers.dev/mcp
https://random-mcp.eldesh-tools.workers.dev/mcp を指定します。独自インスタンスを利用する場合は、そのデプロイ先 URL を指定しますConnect しますrandom-mcp)Approve を選択しますRun automatically に変更しますAgent の指示には例えば次のように追加し、乱択が必要な際に必ず random-mcp が使われるようにします。
## 乱択
random-mcp を必ず使用する。random-mcp が利用できない場合やエラーになった場合は、別の方法で代替せず、その旨をユーザーに伝える。
サーバーは /mcp で Streamable HTTP 接続を受け付けます。MCP クライアントとの認可には OAuth 2.1、ユーザーの認証には GitHub OAuth を使用します。
認可時には、MCP クライアントのアクセス許可画面を表示した後、GitHub の認証画面へ移動します。GitHub から取得する権限は read:user です。認可済みの MCP クライアントには mcp:use スコープのアクセストークンが発行されます。
random-mcp には以下に示す3つのツールがあり、それぞれ記載のフィールドを持つJSONオブジェクトを要求します。
random_int指定した確率分布に従う整数を指定数生成し、values配列で返します。
distribution: 確率分布名。省略時はuniformcount: 生成数。1以上1,000以下、既定値は1distribution | 追加フィールド | 意味・制約 |
|---|---|---|
uniform | min, max | min以上max以下の整数一様分布 |
bernoulli | probability | 指定確率で1、それ以外は0 |
binomial | trials, probability | 二項分布。成功確率をprobabilityとする独立な試行をtrials回行ったときの成功回数 |
poisson | lambda | 母数lambdaのポアソン分布 |
パラメーターの組み合わせには、次の制約があります。
trialsは0以上100,000以下の安全な整数で、trials * count <= 100000lambdaは0以上100以下で、lambda * count <= 10000引数の例: {"min":5,"max":10,"count":20}
random_double指定した確率分布に従う浮動小数点数を指定数生成し、values配列で返します。
distribution: 確率分布名。省略時はuniformcount: 生成数。1以上1,000以下、既定値は1distribution | 追加フィールド | 意味・制約 |
|---|---|---|
uniform | min, max | 半開区間[min, max)の連続一様分布 |
normal | mean, standard_deviation | 平均と標準偏差を指定した正規分布 |
lognormal | mu, sigma | log(X)が平均mu、標準偏差sigmaの正規分布に従う対数正規分布 |
exponential | rate | 率rateの指数分布。rate > 0 |
引数の例: {"distribution":"normal","mean":0,"standard_deviation":1,"count":20}
random_choice候補から指定数の要素を選択し、values配列で返します。
choices: 候補文字列の配列。1個以上1,000個以下weights: 各候補の相対的な重み。省略時は等確率count: 選択数。1以上1,000以下、既定値は1with_replacement: 復元抽出ではtrue、非復元抽出ではfalse。既定値はtrueweightsを指定する場合は、choicesと要素数を一致させ、少なくとも一つを正の値にします。 非復元抽出では、countを候補数以下にする必要があります。重みを指定する場合は、正の重みを持つ候補数以下にする必要もあります。
引数の例: {"choices":["A","B","C"],"weights":[1,2,1],"count":2,"with_replacement":false}
依存関係をインストールします。
npm install
GitHub の Developer settings で、ローカル開発用の OAuth App を作成します。
次の値を設定します。
http://localhost:8787http://localhost:8787/callback作成後、Client ID と Client secret を取得します。このアプリケーションが GitHub に要求する OAuth スコープは read:user です。
プロジェクト直下に .dev.vars を作成します。
GITHUB_CLIENT_ID=<GitHub OAuth App の Client ID>
GITHUB_CLIENT_SECRET= COOKIE_ENCRYPTION_KEY= GLAMA_MAINTAINER_EMAIL=
GLAMA_MAINTAINER_EMAIL は /.well-known/glama.json の応答内容を確認するための任意設定です。ローカルでこの確認をしない場合は省略できます。
COOKIE_ENCRYPTION_KEY は、例えば次のコマンドで生成できます。
openssl rand -hex 32
wrangler.jsonc のバインディング、互換日付、互換フラグ、または .dev.vars の変数名を変更した場合は、Workers ランタイムと環境変数の型定義を更新します。
npm run types
生成される worker-configuration.d.ts はリポジトリへコミットします。型定義が設定と一致していることは npm run typecheck で確認できます。
ローカルサーバーを起動します。
npm run dev
通常、MCP エンドポイントは次の URL になります。
http://localhost:8787/mcp
ランディングページは http://localhost:8787/ で確認できます。
[!NOTE]
Wrangler が
Request.cfを取得できないという警告を表示しても、最後にReady on http://localhost:8787と表示され、このプロジェクトがRequest.cfを使用していなければ動作確認を続けられます。
ローカルサーバーを起動した状態で MCP Inspector の Web UI を起動します。
npx --yes @modelcontextprotocol/inspector@latest
Inspector で Streamable HTTP を選択し、接続先に http://localhost:8787/mcp を指定します。接続時にブラウザで OAuth の認可フローが開始されるため、アクセスを許可して GitHub 認証を完了します。本番環境を確認する場合は、接続先をデプロイ済みの MCP URL に変更します。
接続後、Tools 画面にツールで示されているものが表示されることを確認します。
[!IMPORTANT]
2026/08/20現在の MCP Inspector では random_int, random_double による入力型に対応したWebUIフォームは導出されません。
これらのツールの動作確認をする場合は MCP Inspector の CLI などを利用してください。
この章は、random-mcp の独自インスタンスを新たに Cloudflare Workers へ構築する場合の手順です。公式サーバーのデプロイには使用していません。
構築には Cloudflare アカウントと、本番環境用の GitHub OAuth App が必要です。ローカル環境と本番環境ではコールバック URL が異なるため、OAuth App は環境ごとに作成してください。
GitHub の Developer settings で OAuth App を作成し、次の値を設定します。
/callback を加えた URLたとえば、Worker のオリジンが https://random-mcp.example.workers.dev の場合、Authorization callback URL は https://random-mcp.example.workers.dev/callback です。
作成後、Client ID と Client secret を取得します。このアプリケーションが GitHub に要求する OAuth スコープは read:user です。
OAuth の一時的な state を保存する Cloudflare KV namespace を作成します。次に、wrangler.jsonc で次の項目を独自インスタンス用に変更します。
name: Worker の名前kv_namespaces の OAUTH_KV バインディングにある id: 作成した KV namespace の IDCloudflare へログインします。
npx wrangler login
本番用 GitHub OAuth App の認証情報と Cookie 暗号化キーを Cloudflare Secret として登録します。
npx wrangler secret put GITHUB_CLIENT_ID
npx wrangler secret put GITHUB_CLIENT_SECRET npx wrangler secret put COOKIE_ENCRYPTION_KEY
COOKIE_ENCRYPTION_KEY には、ローカル開発と同様にランダムな値を使用します。.dev.vars は Cloudflare へ自動的には反映されないため、本番 Worker で使用する値は Cloudflare Secret として登録する必要があります。
GitHub OAuth App の Authorization callback URL がデプロイ先 Worker の /callback を指していることと、wrangler.jsonc の OAUTH_KV が利用可能な KV namespace を指していることを確認します。
デプロイします。
npm run deploy
公開 URL は通常、次の形式です。
https://random-mcp.<subdomain>.workers.dev/mcp
デプロイ後、公開された URL へ MCP クライアントまたは MCP Inspector から接続し、GitHub OAuth の認可とツールの呼び出しを確認します。
公式サーバーは Cloudflare の Git 連携によってデプロイされます。release ブランチへの push を契機に自動デプロイされるため、公式環境のリリースに npm run deploy は使用しません。
保守担当者向けの手順は RELEASE.md を参照してください。
MIT License の下で公開しています。