shortcut-mcp について
shortcut-mcpはCloudflare Workers上で動作するShortcut向けMCPサーバーです。AIクライアントでプロジェクトを管理するチーム向けに、1つのツールから8種類の操作を提供します。
主な機能
- 01条件を指定したストーリー検索
- 02ストーリーとEpicの詳細表示
- 03ストーリーの作成と更新
- 04ストーリーへのコメント追加
- 05Shortcut REST APIへのアクセス
活用シーン
- 01担当者のアクティブなストーリー検索
- 02ストーリーの状態や担当者の変更
- 03見積もり付きストーリーの作成
- 04Epicやワークフローの確認
MCP 対応
MCPクライアントにShortcutの操作を公開します。各リクエストには利用者自身のShortcut APIトークンが必要で、サーバーには保存されません。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://streamshortcut.staycek.workers.dev/mcpclaude mcp add --transport http stayce-shortcut https://streamshortcut.staycek.workers.dev/mcp{"mcpServers":{"stayce-shortcut":{"type":"http","url":"https://streamshortcut.staycek.workers.dev/mcp"}}}Cursor で開く{"servers":{"stayce-shortcut":{"type":"http","url":"https://streamshortcut.staycek.workers.dev/mcp"}}}VS Code で開く{"mcpServers":{"stayce-shortcut":{"type":"http","url":"https://streamshortcut.staycek.workers.dev/mcp"}}}{"mcpServers":{"stayce-shortcut":{"serverUrl":"https://streamshortcut.staycek.workers.dev/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
StreamShortcut(Cloudflare Workers)
Cloudflare Workers にデプロイされた軽量な Shortcut MCP です。1 つのツールで 8 つのアクションを実行できます。
ライブ URL: https://streamshortcut.staycek.workers.dev/mcp
なぜ?
公式の @shortcut/mcp は、ツール定義に約 11,652 トークンを使用します(52 個のツール)。
StreamShortcut では約 500 トークンで済み、約 96%削減できます。
アクション
| アクション | 目的 |
|---|---|
search | ストーリーを検索します(デフォルト:自分のアクティブなストーリー)。テキストクエリまたは構造化フィルターを使用できます |
get | ID または URL でストーリーの詳細を取得します |
update | 状態、見積もり、担当者、タイプ、名前、説明を変更します |
comment | ストーリーにコメントを追加します |
create | タイプ、見積もり、状態、エピック、担当者、説明を指定してストーリーを作成します |
epic | エピックとそのストーリーの詳細を取得します |
api | その他すべての操作に使える REST API への直接アクセス |
help | ドキュメント |
Claude での使用方法
ご自身の Shortcut API トークンを必ず用意してください。 次の URL で取得できます:https://app.shortcut.com/settings/account/api-tokens
オプション 1:claude mcp add(推奨)
設定ファイルの編集は不要で、コマンド 1 つで追加できます。YOUR_TOKEN を実際のトークンに置き換えてください:
claude mcp add --transport http shortcut https://streamshortcut.staycek.workers.dev/mcp --header "X-Shortcut-Token: YOUR_TOKEN"
現在のプロジェクトだけでなく、すべてのプロジェクトで使用できるようにするには、-s user を指定します。
オプション 2:設定を直接編集する
次の内容を Claude Desktop/Claude Code の設定に追加します:
{
"mcpServers": {
"shortcut": {
"type": "http",
"url": "https://streamshortcut.staycek.workers.dev/mcp",
"headers": {
"X-Shortcut-Token": "your-token-here"
}
}
}
}
設定にはトークンをそのまま記述してください。
"${SHORTCUT_API_TOKEN}"の参照が解決されるのは、アプリの 起動時 の環境に変数が存在する場合のみです。 macOS では、Dock または Finder から起動したアプリは~/.zshrcを読み込まないため、変数が未定義となり、サーバーは認証に失敗します。環境変数の参照が確実に機能するのは、ターミナルから起動した場合のみです。
どちらの方法でも、追加したサーバーを認識させるために、設定後は Claude を再起動してください。
認証
このサーバーはステートレスで、何も保存しません。リクエストごとにご自身のトークンを送信し、そのトークンが永続化されることはありません。次のいずれかの方法で送信してください:
X-Shortcut-Token: your-token-here
Authorization: Bearer your-token-here
両方が指定されている場合は、X-Shortcut-Token が優先されます。OAuth フローはありません。認証されていないリクエストには、WWW-Authenticate ヘッダーとともに 401 が返されます。
動作確認
サービスが稼働中か確認します(トークンは不要です):
curl -s https://streamshortcut.staycek.workers.dev/health
Shortcut に直接リクエストして、トークンが有効か確認します:
curl -s -o /dev/null -w "%{http_code}\n" https://api.app.shortcut.com/api/v3/member -H "Shortcut-Token: YOUR_TOKEN"
200 はトークンが有効であることを示し、401 はトークンが誤っているか、期限切れであることを示します。
次に、全体の流れをテストします。アクティブなストーリーが返されます:
curl -s https://streamshortcut.staycek.workers.dev/mcp -H "Content-Type: application/json" -H "Accept: application/json, text/event-stream" -H "X-Shortcut-Token: YOUR_TOKEN" -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"shortcut","arguments":{"action":"search"}}}'
Claude で設定したら、*「自分の Shortcut のストーリーを表示して」*と尋ねるだけです。
トラブルシューティング
| 症状 | 原因 |
|---|---|
401 Missing Shortcut API token | トークンが送信されていません。X-Shortcut-Token または Authorization: Bearer を使用してください |
Error: API error (401): Unauthorized | トークンはサーバーに届きましたが、Shortcut に拒否されました。トークンの期限切れ、誤ったトークン、または展開されていない ${SHORTCUT_API_TOKEN} プレースホルダーがそのまま送信された可能性があります |
ワーカーからの 403 Forbidden | Cloudflare のボット保護です。一部の標準 HTTP クライアント(例:Python の urllib)は、ユーザーエージェントによってブロックされます。通常の User-Agent ヘッダーを設定してください |
| 設定を編集した後、サーバーが見つからない | Claude の再起動が必要です。MCP の設定は起動時にのみ読み込まれます |
独自にデプロイする(任意)
セルフホストする場合:
-
クローンしてインストールします:
git clone https://github.com/stayce/streamshortcut-cloudflare cd streamshortcut-cloudflare npm install -
デプロイします:
npm run deploy
サーバー側でシークレットを用意する必要はありません。ユーザーは常に自分のトークンを指定します。
開発
npm run dev # local server on http://localhost:8787
npm run typecheck # tsc --noEmit
npm run build # verify the Worker bundles (dry-run deploy)
例
{"action": "search"}
{"action": "search", "query": {"owner": "me", "state": "In Progress"}}
{"action": "get", "id": "704"}
{"action": "update", "id": "704", "state": "Done"}
{"action": "comment", "id": "704", "body": "Fixed!"}
{"action": "create", "name": "New bug", "type": "bug", "estimate": 3, "state": "Ready", "owner": "me"}
{"action": "epic", "id": "308"}
{"action": "api", "method": "GET", "path": "/workflows"}
{"action": "help"}
関連項目
- streamshortcut - ローカルで使用する元の stdio 版
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。