Add sync_board MCP tool #37

Closed
opened 2026-03-14 19:36:33 +00:00 by forgejo_admin · 0 comments

Lineage

plan-pal-e-docs → Phase 5b (Auto-Population) → 5b-1 stack completion

Repo

forgejo_admin/pal-e-docs-mcp

User Story

As Betty Sue
I want a sync_board MCP tool
So that I can trigger board sync directly from my session without raw API calls

Context

PR #166 added POST /boards/{slug}/sync to the pal-e-docs API. The SDK will get sync_board() in v0.4.0 (pal-e-docs-sdk #28). The MCP server needs a tool that wraps this SDK method. Also bump SDK dependency to >=0.4.0 and MCP version to 0.3.0.

File Targets

Files to modify:

  • src/pal_e_docs_mcp/tools/boards.py — add sync_board tool function
  • pyproject.toml — bump SDK dep to >=0.4.0, bump MCP version to 0.3.0

Files NOT to touch:

  • src/pal_e_docs_mcp/server.py — no changes needed

Acceptance Criteria

  • sync_board(board_slug="board-pal-e-docs") MCP tool calls SDK sync_board() and returns JSON result
  • SDK dependency bumped to >=0.4.0
  • MCP server version bumped to 0.3.0
  • CI passes

Test Expectations

  • No new tests required (MCP tools are thin wrappers; SDK tests cover logic)
  • Run command: pytest tests/ -v (if existing tests exist)

Constraints

  • Follow existing tool patterns in tools/boards.py (use get_sdk(), _ok(), _error_response())
  • Use SDK method get_sdk().sync_board(board_slug) — NOT raw HTTP helpers
  • Parameter: board_slug: Annotated[str, Field(description="...")]

Checklist

  • PR opened
  • Tests pass
  • No unrelated changes
  • plan-pal-e-docs — parent plan
  • pal-e-docs-sdk #28 — SDK method this depends on
  • pal-e-docs PR #166 — the API endpoint
### Lineage `plan-pal-e-docs` → Phase 5b (Auto-Population) → 5b-1 stack completion ### Repo `forgejo_admin/pal-e-docs-mcp` ### User Story As Betty Sue I want a `sync_board` MCP tool So that I can trigger board sync directly from my session without raw API calls ### Context PR #166 added `POST /boards/{slug}/sync` to the pal-e-docs API. The SDK will get `sync_board()` in v0.4.0 (pal-e-docs-sdk #28). The MCP server needs a tool that wraps this SDK method. Also bump SDK dependency to >=0.4.0 and MCP version to 0.3.0. ### File Targets Files to modify: - `src/pal_e_docs_mcp/tools/boards.py` — add `sync_board` tool function - `pyproject.toml` — bump SDK dep to >=0.4.0, bump MCP version to 0.3.0 Files NOT to touch: - `src/pal_e_docs_mcp/server.py` — no changes needed ### Acceptance Criteria - [ ] `sync_board(board_slug="board-pal-e-docs")` MCP tool calls SDK `sync_board()` and returns JSON result - [ ] SDK dependency bumped to >=0.4.0 - [ ] MCP server version bumped to 0.3.0 - [ ] CI passes ### Test Expectations - [ ] No new tests required (MCP tools are thin wrappers; SDK tests cover logic) - Run command: `pytest tests/ -v` (if existing tests exist) ### Constraints - Follow existing tool patterns in `tools/boards.py` (use `get_sdk()`, `_ok()`, `_error_response()`) - Use SDK method `get_sdk().sync_board(board_slug)` — NOT raw HTTP helpers - Parameter: `board_slug: Annotated[str, Field(description="...")]` ### Checklist - [ ] PR opened - [ ] Tests pass - [ ] No unrelated changes ### Related - `plan-pal-e-docs` — parent plan - pal-e-docs-sdk #28 — SDK method this depends on - pal-e-docs PR #166 — the API endpoint
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
forgejo_admin/pal-e-mcp#37
No description provided.