MCP server exposing the AI Task Board to any MCP-capable AI agent
Project description
AI Task Board — MCP Server
Exposes the board to any MCP-capable AI agent (Claude Code/Desktop, Cursor,
Cline, Windsurf, or a custom client — MCP is model-agnostic) as 8 typed tools
mapped 1:1 onto the Board REST API. It is a thin
client: it holds one scoped API key (one actor) and forwards calls. See the tool
contract in docs/api/mcp-tools.md and per-client
wiring + behavioral rules in docs/INTEGRATION.md.
Tools
list_projects · get_board · list_tasks · get_task (read) ·
claim_task · create_task · update_task (write) · add_report (report)
Conflict handling baked in:
claim_taskon a contested task returns who holds it and for how long (never steals it).update_taskon a staleexpected_versionreturns aversion_conflictwith advice to re-read and retry (never overwrites a human's edit).
Install & run
cd mcp-server
uv venv --python 3.14 .venv
uv pip install --python .venv -e ".[dev]"
export ATB_API_BASE_URL="http://127.0.0.1:8077" # the backend
export ATB_API_KEY="datb_danylo_full" # this agent's scoped key (= an actor)
export ATB_PROJECT_ID="<project-id>" # optional default project
.venv/bin/python -m atb_mcp.server # speaks MCP over stdio
Connect to an agent
Any MCP client uses the same command + args + env (see
docs/INTEGRATION.md for Claude Desktop, Cursor,
Windsurf, Cline, and custom clients). Claude Code example:
claude mcp add ai-task-board \
--env ATB_API_BASE_URL=http://127.0.0.1:8077 \
--env ATB_API_KEY=datb_danylo_full \
--env ATB_PROJECT_ID=<project-id> \
-- /media/work/GitHub/ai-task-board/mcp-server/.venv/bin/python -m atb_mcp.server
Or add to a .mcp.json / claude_desktop_config.json:
{
"mcpServers": {
"ai-task-board": {
"command": "/media/work/GitHub/ai-task-board/mcp-server/.venv/bin/python",
"args": ["-m", "atb_mcp.server"],
"env": {
"ATB_API_BASE_URL": "http://127.0.0.1:8077",
"ATB_API_KEY": "datb_danylo_full",
"ATB_PROJECT_ID": "<project-id>"
}
}
}
}
Pair it with the behavioral skill in ../skill/ so the agent knows
how to run the board (claim before working, one report per step, respect
priorities and other actors' claims).
Config (env)
| Var | Default | Meaning |
|---|---|---|
ATB_API_BASE_URL |
http://127.0.0.1:8077 |
backend base URL |
ATB_API_KEY |
— | scoped key = the agent's actor identity |
ATB_PROJECT_ID |
— | default project when a tool omits project_id |
ATB_TIMEOUT |
15 |
HTTP timeout (s) |
Tests
.venv/bin/python -m pytest
Spins up the real backend (via backend/.venv) as a subprocess and exercises all
8 tools end-to-end, including the claim-conflict and version-conflict paths.
Verify end-to-end (manual script)
With a seeded backend already running:
ATB_API_BASE_URL=http://127.0.0.1:8077 PYTHONPATH=. \
.venv/bin/python scripts/verify_mcp.py
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ai_task_board_mcp-0.1.0.tar.gz.
File metadata
- Download URL: ai_task_board_mcp-0.1.0.tar.gz
- Upload date:
- Size: 6.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e7a0046d71c9f9c6e42afa3864010d423a14a770fc21e1ed37dbba79512ec1c
|
|
| MD5 |
c22a5a6a97d22564b6d8e592207e0485
|
|
| BLAKE2b-256 |
6815a08c147472e04fd68be9bb57ba9dc60af6e1f44ff9d3f7ac2310e0d4decb
|
File details
Details for the file ai_task_board_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: ai_task_board_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7376e35bc1186395a4554f943b08647cef453ee89681c56a1897c2e8fa22066f
|
|
| MD5 |
51607c71cfb414c2a8db0a47c92ca279
|
|
| BLAKE2b-256 |
340f448884c67b7a06fb7f3394e840001cfc7b986b061c5a9ad613d556a4ac29
|