Focus Pad MCP
Share a to-do board with your AI agent. The Focus Pad MCP server lets an AI agent, for example Claude Code, read and change your Focus Pad tasks with the Model Context Protocol (MCP).
The agent can add tasks, complete them, and set their priority, color, deadline and Pesky interval. DevWorkspace Pro then reminds you about these tasks in the same way as about tasks that you added yourself. For example:
- Ask the agent to make a Job board collection and to add each open item from a code review.
- The agent sets priority 5 and a deadline on the item that blocks the release, and turns on Pesky every 30 minutes.
- Pesky sends you a desktop notification every 30 minutes until you complete the task.
The server runs only on your computer. It is off by default.
Turn On the Server
- Open Preferences > Focus Pad.
- In MCP server for AI agents, turn on the switch.
- Optional: change the Port. The default is
47821. - Click Save.
The server starts immediately. You do not have to restart DevWorkspace Pro. The bottom of the card shows Running on 127.0.0.1:47821.
If another app uses the port, the card tells you. Type a different port from 1024 to 65535 and click Save.
To stop the server, turn off the switch and click Save.
Connect Claude Code
When the server runs, the card shows the command for Claude Code:
- Click the copy icon next to Connect Claude Code.
- Paste the command in a terminal and press Enter.
The command is:
claude mcp add --transport http --scope user dwp-focuspad http://127.0.0.1:47821/mcp --header "Authorization: Bearer <token>"DevWorkspace Pro puts your token and port in the command when you copy it. --scope user makes the server available in all your projects. You do this step only one time.
To make sure that the connection works, start Claude Code and type /mcp. The list shows dwp-focuspad as connected. Then ask, for example, "Show my Focus Pad collections."
TIP
Tell the agent how to use the board, for example in your CLAUDE.md: "Keep open review items in the Focus Pad collection Job board. Use priority 5 and Pesky every 30 minutes for items that block a release."
Other MCP Clients
Each MCP client that supports the Streamable HTTP transport and custom headers can connect. Use these values:
| Setting | Value |
|---|---|
| Transport | Streamable HTTP |
| URL | The Endpoint in the card, for example http://127.0.0.1:47821/mcp |
| Header | Authorization: Bearer <token>. Copy the token with the copy icon next to Token. |
For example, a JSON configuration file for many clients:
{
"mcpServers": {
"dwp-focuspad": {
"type": "http",
"url": "http://127.0.0.1:47821/mcp",
"headers": { "Authorization": "Bearer <token>" }
}
}
}The server does not use sessions. Each request is complete. Only POST requests are accepted.
Tools
The agent sees these tools. Their descriptions tell the agent the formats below, so you do not have to explain them.
| Tool | What it does | Arguments |
|---|---|---|
list_collections | Lists the collections, with the number of tasks in each | None |
list_items | Lists the tasks of one collection, in order. Also gives the color names of the collection and your local time. | collection |
add_item | Adds a task after the last task of the collection | collection, text, optional priority, color, due, pesky |
update_item | Changes the text or the fields of one task | collection, index, expectedText, optional text, priority, color, due, pesky |
delete_item | Completes or deletes one task and the lines nested below it. The task is removed from the list, the same as when you complete a task with ⌘-click. | collection, index, expectedText |
create_collection | Makes a new, empty collection | name |
Fields
| Field | Values |
|---|---|
priority | Whole number from 0 to 5. 5 is the most urgent. 0 removes the priority. |
color | red, orange, brown, green, teal, blue, purple or magenta |
due | Deadline in your local time, in the format YYYY-MM-DDTHHMM, for example 2026-10-08T1430. The agent can also send 2026-10-08T14:30. |
pesky | Pesky interval in minutes, from 1 to 1440 (24 hours) |
null removes a field. If the agent does not send a field, the field does not change.
list_items also returns these read-only values for each task:
| Value | Meaning |
|---|---|
index | Position of the task in the collection, from 0 |
selected | true if you selected the task in Focus Pad. A checked box in Focus Pad selects a task. It does not complete it. |
order | The order in which you added the task. See Default order. |
githubIssue | The issue number if the task came from a GitHub issue |
Safe Edits
To change a task, the agent sends its index and its current text as expectedText. If you moved, sorted or changed tasks after the agent read the list, the text at that index is different. Then DevWorkspace Pro refuses the change, and the agent reads the list again.
This check compares only the text. If two tasks have the same text and they change places, the check cannot see it, and the agent can change the other task. Give tasks different text if this is important.
Each change keeps all other lines of the collection as they are: headings, notes, other tasks and the color names. Lines in a task, for example nested tasks, notes and code blocks below it, stay with the task. When the agent deletes a task, these lines are deleted too.
The agent cannot make a collection with the name General or with the name of a collection that exists. Upper and lower case letters count as the same.
Security
- Only this computer. The server listens on
127.0.0.1. Other computers on your network cannot connect to it. - Token. Each request must send the token in the
Authorizationheader. A request without the correct token gets the error401and changes nothing. DevWorkspace Pro makes a random token the first time that you turn on the server, and keeps it in the app settings file. - No web pages. The server refuses requests from web pages in your browser.
- Off by default. The server runs only when you turn it on.
- New token. To stop all connected agents, click Regenerate token and confirm. Then copy the new command or token to the agents that you want to keep.
Click the eye icon next to Token to show or hide the token. The command in the card also hides the token until you show it.
Treat the token as a password
Each program on your computer that has the token can read and change your Focus Pad. Do not put the token in files that you share or commit to Git.
Limits
- DevWorkspace Pro must be open. When it is closed, the server is not available and the agent gets a connection error.
- The agent works with tasks (
- [ ]lines). It cannot rename or delete collections, change headings or notes, or change color names. - When the agent completes a task that came from a GitHub issue, the issue stays open. To close the issue too, complete the task yourself in Focus Pad.
- Task text from the agent cannot end with
- #and a number, because Focus Pad reads that as a link to a GitHub issue. orderandgithubIssueare read-only.- The agent sees a change that you make in Focus Pad only when it calls
list_itemsagain. - When the agent changes a task, the Focus Pad window shows the change immediately. Your cursor and scroll position stay where they are. If you type in the same collection at the same moment, one of the two changes can be lost. Wait until the agent completes its change.
- If you create, rename or delete a collection at the same moment as the agent changes a task, the change of the agent can be lost. If this occurs, tell the agent to make the change again.
- Cloud Save and Pesky see the changes of the agent, the same as your changes.