Feature: Add activate_repo / create_repo tool #7

Open
opened 2026-03-22 09:55:32 +00:00 by forgejo_admin · 0 comments
Contributor

Type

Feature

Lineage

Discovered scope from service-onboarding-sop gap analysis. No plan phase — backlog item.

Repo

forgejo_admin/woodpecker-sdk

User Story

As the superuser onboarding a new service, I can activate a Forgejo repo in Woodpecker CI via MCP tools instead of manually clicking through the Woodpecker UI.

Context

The service-onboarding-sop step 6 says "Activate Woodpecker — GAP: no activate_repo tool exists in woodpecker-mcp." The Woodpecker MCP has 25 tools but NO tool to activate/add a repo. Every new service onboarding requires a manual UI step. The Woodpecker API supports repo activation via POST /api/repos (with forge_remote_id lookup).

File Targets

Files the agent should modify:

  • src/woodpecker_sdk/client.py — add activate_repo(owner, name) method
  • src/woodpecker_sdk/models.py — add response model if needed

Files the agent should NOT touch:

  • Existing endpoint methods (no refactoring)

Acceptance Criteria

  • SDK has activate_repo(owner: str, name: str) method
  • Method returns the activated repo object
  • Error handling matches existing SDK patterns

Test Expectations

  • Unit test for the new method
  • Integration test: activate a test repo, verify in list_repos

Constraints

  • Match existing SDK patterns (auth, error handling, response models)
  • Check Woodpecker API docs for the correct endpoint and required params

Checklist

  • PR opened
  • Tests pass
  • No unrelated changes
  • service-onboarding-sop — references this gap in step 6
  • MCP server (woodpecker-mcp) will need a corresponding tool after SDK ships
### Type Feature ### Lineage Discovered scope from service-onboarding-sop gap analysis. No plan phase — backlog item. ### Repo `forgejo_admin/woodpecker-sdk` ### User Story As the superuser onboarding a new service, I can activate a Forgejo repo in Woodpecker CI via MCP tools instead of manually clicking through the Woodpecker UI. ### Context The `service-onboarding-sop` step 6 says "Activate Woodpecker — GAP: no activate_repo tool exists in woodpecker-mcp." The Woodpecker MCP has 25 tools but NO tool to activate/add a repo. Every new service onboarding requires a manual UI step. The Woodpecker API supports repo activation via `POST /api/repos` (with forge_remote_id lookup). ### File Targets Files the agent should modify: - `src/woodpecker_sdk/client.py` — add `activate_repo(owner, name)` method - `src/woodpecker_sdk/models.py` — add response model if needed Files the agent should NOT touch: - Existing endpoint methods (no refactoring) ### Acceptance Criteria - [ ] SDK has `activate_repo(owner: str, name: str)` method - [ ] Method returns the activated repo object - [ ] Error handling matches existing SDK patterns ### Test Expectations - [ ] Unit test for the new method - [ ] Integration test: activate a test repo, verify in list_repos ### Constraints - Match existing SDK patterns (auth, error handling, response models) - Check Woodpecker API docs for the correct endpoint and required params ### Checklist - [ ] PR opened - [ ] Tests pass - [ ] No unrelated changes ### Related - `service-onboarding-sop` — references this gap in step 6 - MCP server (`woodpecker-mcp`) will need a corresponding tool after SDK ships
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
ldraney/woodpecker-sdk#7
No description provided.