Getting started

Prerequisites:
  • Node.js version 18 or higher
  • Claude Desktop, with an account that can add integrations and MCP servers (other clients coming soon)
  • MacOS (for now) - This guide and the current release are for Mac users. We’re working on support for other platforms.

Fork the Codespace repo

Fork this repo.

Generate a GitHub PAT for the Codespace repo

Navigate to GitHub (here) to generate a fine-grained GitHub PAT that only has access to the codespace-executor repo you forked and has the following codespaces permissions below (screenshots to follow):
  • Codespaces: Read and write
  • Codespaces lifecycle admin: Read and write
  • Codespaces metadata: Read-only
  • Metadata: Read-only (this is preselected and mandatory on all fine-grained GitHub PATs)
If you are unfamiliar with GitHuB Personal Access Tokens (PAT) then refer to GitHub’s docs here for more info.
Img1 Pn Img2 Pn Be sure to copy the generated PAT as you will need to paste it in the next step.

Set up in Claude Desktop

Download the keyboard-mcp.dxt file found here: dxt github release. Navigate to the Claude Desktop app Extensions page via the Claude settings page or alternatively open the.dxt file and you will be taken direclty to the setup. Screenshot2025 07 28at10 39 00PM Pn Select Advanced settings and install the keyboard-mcp.dxt file. Screenshot2025 07 28at10 18 22PM Pn Copy the GitHub PAT generated in the previous step into the Claude UI. Screenshot2025 08 01at12 02 10PM Pn

Install Keyboard desktop app

You can download and run the Keyboard desktop app here. Just unzip it and run.

Create an account and get started.

Connect the Keyboard approver app to Claude

After you log in to the desktop app, find the “Settings” button. Once there, find your WebSocket key and copy it. Img4 Pn After you copy it, navigate back to Claude and add in the WebSocket Connection Key. Img5 Pn Now after you save make sure Keyboard is enabled. Screenshot 2025-07-28 at 4.30.21 PM.png That’s it! Setup is done.

Try your first prompt

Navigate back to the Claude chat in your Claude Desktop and try a prompt like this:
Can you run hello world code with Keyboard?
Screenshot 2025-07-28 at 4.31.46 PM.png Keyboard will plan, create a codespace, connect to a websocket, and run code that you will be notified to approve in the Keyboard Approver. Screenshot 2025-07-28 at 4.36.05 PM.png

Troubleshooting