AgilePlace MCP Server
by norman2112
README.md
# agileplaceMCP_v3
AgilePlace demo-provisioning MCP server. Creates and shapes demo environments (boards, bulk cards, hierarchy) from Claude Desktop or Cursor. stdio transport, single-user.
## Modules
| Module | Role |
|---|---|
| `config.mjs` | Env-driven config + authed HTTP client (Bearer). |
| `boardCache.mjs` | Board-list warm on first use; lazy per-board card types; label → ID resolution. |
| `rateLimiter.mjs` | Throttles off `X-RateLimit-Remaining` / `Reset`; honors `Retry-After`; caps in-tool sleep and returns `retryAfter` instead of blocking. |
| `tools/createCards.mjs` | Bulk card creation. |
| `server.mjs` | stdio MCP entrypoint. |
## createCards
- Sequential, self-throttling writes.
- Max ~40 cards per call; larger batches rejected (chunk and retry).
- Per-card `clientKey` correlation, echoed on results.
- Error handling: retry (429 / 5xx / network), fail-card-continue (400 / 422 / 404), abort-batch (401 / 403), circuit breaker on repeated identical failures.
- Partial success returns `isError: false`; cards in `created[]` should not be resubmitted.
## Configuration
Set credentials in the host config `env` block (`claude_desktop_config.json` or Cursor `mcp.json`). Not in source.
```json
{
"mcpServers": {
"agileplace-v3": {
"command": "node",
"args": ["/absolute/path/to/src/server.mjs"],
"env": {
"AGILEPLACE_DEFAULT_URL": "https://<your-org>.leankit.com/io",
"AGILEPLACE_DEFAULT_TOKEN": "<token>"
}
}
}
}
```
Run standalone:
```bash
node src/server.mjs
```
## Status
- `createCards` — implemented.
- `updateCards` / `findCards` / `createBoard` — not yet implemented.
- Deferred: multi-environment routing, lane name resolution, OKR tools, whole-call idempotency, tasks extension.
TDQS
A4.4/5.0
Scored across 1 tool
Disambiguation5/5
Only one tool exists, so there is no possibility of overlap or misselection. Its purpose is explicit: bulk-create cards on a board.
Naming Consistency4/5
The single tool uses a clear verb_noun camelCase name, createCards, but there is no broader naming pattern to evaluate consistency across a set.
Tool Count2/5
For an AgilePlace server, one tool covering only card creation is too narrow; agents will likely need other board, lane, and card lifecycle operations. The tool itself is substantial, but the server is under-scoped.
Completeness2/5
Only creation is exposed; there are no read, update, delete, search, or connect operations for cards or boards. Bulk creation is handled robustly, but most AgilePlace workflows hit dead ends.
Maintenance
ActivityMaintained
ResponsivenessNo issues