Shortcut Tools API
Free JSON API, MCP server and CLI for 4,400+ keyboard shortcuts across 271 platforms
Overview
Every shortcut on this site is available as machine-readable JSON. The API is completely free: no API key, no registration, no SDK required. Responses are pre-generated static files served from a global CDN, which means they are fast, cacheable and reliable enough to build on. The dataset currently covers 271 platforms and 4,400+ shortcuts spanning editors, terminals, DevOps tools, design apps and AI tools, and it is regenerated whenever the site data changes.
Base URL: https://shortcut-tools.com/api/v1 · Machine spec: openapi.json (OpenAPI 3.0)
Endpoints
| Endpoint | Returns |
|---|---|
GET /api/v1/platforms.json | All 271 platforms: key, name, group and page URL |
GET /api/v1/shortcuts/{key}.json | One platform's full shortcut list, grouped by category, with keys, description and usage notes |
GET /api/v1/all.json | The entire dataset in one file (largest response — cache it) |
GET /api/v1/search?q={query} | Scored full-text search across all shortcuts; optional &limit= (default 10) |
Platform keys are short lowercase identifiers like vscode, tmux, figma or kubectl. If you are unsure of a key, list the platforms first or use search. Unknown keys return HTTP 404.
Quick examples
curl
curl -s https://shortcut-tools.com/api/v1/shortcuts/vscode.json | jq '.categories[0]'
curl -s "https://shortcut-tools.com/api/v1/search?q=duplicate+line&limit=5"
JavaScript
const res = await fetch('https://shortcut-tools.com/api/v1/shortcuts/tmux.json');
const { name, categories } = await res.json();
console.log(name, categories.length, 'categories');
Python
import requests
data = requests.get('https://shortcut-tools.com/api/v1/platforms.json').json()
print(data['count'], 'platforms')
MCP server for AI agents
The site also runs a stateless Model Context Protocol server at POST https://shortcut-tools.com/mcp (JSON-RPC 2.0). AI assistants that support remote MCP servers can call three tools: list_platforms, get_platform_shortcuts and search_shortcuts. This lets an assistant answer questions like "what is the tmux shortcut for a vertical split?" from live, structured data instead of guessing.
curl -s -X POST https://shortcut-tools.com/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"search_shortcuts","arguments":{"query":"vertical split"}}}'
CLI — shortcuts in your terminal
Prefer not to leave the terminal? The official zero-dependency CLI wraps this API (Node 18+):
npx shortcut-tools vscode # full cheat sheet for a platform
npx shortcut-tools search copy line
npx shortcut-tools list dev # platforms by group
npx shortcut-tools vim --json # pipe-friendly JSON
Source on GitHub · package: shortcut-tools on npm.
Usage policy & attribution
There are no hard rate limits, but the API is served for practical, reasonable use — cache responses where you can (they change at most a few times per week) and avoid tight polling loops. If you build something public with this data — a bot, an editor extension, a Raycast command, a dashboard — please credit shortcut-tools.com with a link. That keeps the project sustainable and helps others find the source. For corrections or data requests, use the contact page.
Frequently Asked Questions
Is the Shortcut Tools API free to use?
Yes. All endpoints are free, with no API key and no registration. Data is served as static JSON from a global CDN. We only ask that heavy automated use stays reasonable and that public projects link back to shortcut-tools.com as the source.
How do I get shortcuts for one specific app?
Request GET /api/v1/shortcuts/{key}.json with a platform key such as vscode, tmux or figma. Discover all valid keys via GET /api/v1/platforms.json.
What is the MCP endpoint for?
POST /mcp is a stateless Model Context Protocol server (JSON-RPC 2.0) exposing list_platforms, get_platform_shortcuts and search_shortcuts, so AI assistants can answer shortcut questions from live data.
Can I use the data from the command line?
Yes — npx shortcut-tools vscode prints a cheat sheet in your terminal, and --json gives pipe-friendly output for scripts.