Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Customer support answers, refund rules, and escalation limits for AI assistants
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
ウェブ、デスクトップ、モバイルのClaudeで使えます:
https://desk-mcp-continuity2.vercel.app/mcpターミナルでこれを実行します
claude mcp add --transport http desk https://desk-mcp-continuity2.vercel.app/mcpプロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"desk": {
"url": "https://desk-mcp-continuity2.vercel.app/mcp"
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"desk": {
"type": "http",
"url": "https://desk-mcp-continuity2.vercel.app/mcp"
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
ChatGPTがつなげるのは、インターネット上のサーバーだけです:
https://desk-mcp-continuity2.vercel.app/mcpメニューの名前は、プランや時期によって少し違うことがあります。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
ツールの名前と説明は、サーバーが2026年11月8日に返したそのままの内容です。書いたのは作者で、私たちではありません。プレーンテキストとして表示しています。
list_support_desksList this team's support desks. Use the returned id. Do not guess a desk.
create_support_deskCreate a support desk when the user asks for a new policy home. Does not approve answers, refunds, features, or timelines.
save_approved_answerStore or revise an answer the user has explicitly approved. Identical retries keep the same revision. A changed answer requires expectedRevision from a previous read.
search_approved_answersLook up approved answers by topic, question, or answer text. An empty result means there is no approved answer. Draft for human review; do not invent one or promise the customer. Page with offset.
save_refund_ruleStore a refund rule the user has explicitly approved. matchTerms must name a specific situation. The word refund alone is not a rule. remedy is the only wording that may later be approved. decision ALLOW grants that wording. decision DENY refuses a refund and records the denial s
list_refund_rulesRead refund rules on a desk. Only APPROVED rules can authorize wording, and only through evaluate_commitment. Do not treat this list as permission to invent a refund.
save_escalation_limitStore the escalation limit the user has explicitly approved for one channel. maxTier must be on tierLadder. Promise flags default closed unless the user sets them true. A limit does not itself approve refund, feature, or timeline wording.
list_escalation_limitsRead escalation limits. A channel with no APPROVED limit cannot promise a refund, feature, or timeline and cannot be given an invented escalation path.
save_approved_commitmentStore a feature or timeline statement the user has explicitly approved. The statement is the only wording that can later pass evaluate_commitment. Do not save a date or a feature the user did not approve.
list_approved_commitmentsRead approved feature and timeline statements. Listing them does not approve a different promise. Call evaluate_commitment with the exact wording before saying one.
evaluate_commitmentDecide whether a proposed refund, feature, or timeline is in the approved set. REFUSED means do not say it, do not invent a substitute, and draft for human review instead of promising the customer. APPROVED means sayOnly is the only permitted wording. Pass channel to also enforce
evaluate_escalationDecide whether this channel may escalate or may promise a refund, feature, or timeline. REFUSED means do not escalate, do not invent a tier, and draft for human review instead of promising the customer. Permission to promise still requires evaluate_commitment for the exact wordin
get_desk_contextRetrieve selected approved answers for a customer question, plus the desk's approved refund rules, commitments, and escalation limits. This is evidence, not permission. A missing or RETIRED answer is not an invitation to invent one. Call evaluate_commitment before promising a ref
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月8日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント LAHutchins91 で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
170ミリ秒で応答(HTTP 200)
サインイン不要
13件のツールの説明を読み、AIへの隠れた指示は見つかりませんでした
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
作者のクラウドで動きます。インストール不要でインターネット経由でつながりますが、送った内容は作者のサーバーを通ります。
GitHubリポジトリの最終更新は–、最新バージョン(1.0.3)がレジストリに届いたのは30 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, MIDAS Gen NX / Civil NX
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
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.
Read and carefully change the model open in MIDAS Gen NX or Civil NX on this PC.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Desk keeps a support team's approved answers, refund rules, and escalation limits, then lets an assistant read that policy before it replies.
An assistant can store and look up what the team has approved. It must call Desk before drafting a customer reply. It must refuse a refund, a feature, or a timeline that is not in the approved set, including RETIRED or missing policy, and when a customer asks to ignore the rules. In those cases it drafts for human review instead of promising the customer. It does not invent a softer promise.
It works with ChatGPT, Claude, Gemini, Grok, and Cursor, plus any other MCP client that can do Streamable HTTP and OAuth. It is not a ChatGPT-only plugin.
Sign in with your Desk account when the assistant opens OAuth. Do not paste an API key or password into a header. Support tools need Pro or an active trial. The trial is 14 days, then Pro. Checkout shows the plan terms. This page does not print a price.
https://desk-mcp-continuity2.vercel.app/mcp (Streamable HTTP, OAuth sign-in)io.github.LAHutchins91/deskAfter you approve the connection, the server exposes these tools:
evaluate_commitment returns APPROVED only for wording already stored. Otherwise it returns REFUSED and the assistant must not promise that refund, feature, or timeline. evaluate_escalation refuses a channel or tier that is outside the saved limit. The assistant only calls these tools when you and the host allow it.
Run the server and use its /mcp path. With the default local base, that is http://localhost:3000/mcp. A deployed host uses the same path on APP_BASE_URL.
Cursor, in ~/.cursor/mcp.json or a project .cursor/mcp.json:
{
"mcpServers": { "desk": { "url": "http://localhost:3000/mcp" } } }
Claude Code:
claude mcp add --transport http desk http://localhost:3000/mcp
Do not pass an Authorization header. Other clients add the same URL, choose OAuth, and leave client id and secret empty. Desk supports dynamic client registration. Full steps for ChatGPT, Claude, Gemini, Grok, and Cursor are on the server's /connect page.
When stdin is a terminal, Desk serves Streamable HTTP. When stdin is not a terminal, it also speaks MCP on stdio. That is the same choice continuity-mcp makes, so a launcher such as Glama can attach stdin.
Registry metadata for this server is in server.json (io.github.LAHutchins91/desk).
npm ci
npm test npm run build npm start
Hosted accounts use Supabase for sign-in and policy storage, and Stripe for the 14-day trial and Pro. Copy .env.example to .env and set the variables there. supabase/schema.sql creates the tables. Stripe price ids belong in the environment. Desk never displays the amount.
Local stdio, with no account configured, stores one operator's policy under DESK_DATA_DIR (or the system temp directory). HTTP tool calls still require OAuth and an active trial or Pro.
docker build -t desk-mcp .
docker run --rm -p 3000:3000 desk-mcp
A container without a terminal on stdin speaks MCP on stdio and still listens on port 3000.
More from Ouroboros: https://ouroborosapps.com