Major refactoring of projman plugin architecture: Skills Extraction (17 new files): - Extracted reusable knowledge from commands and agents into skills/ - branch-security, dependency-management, git-workflow, input-detection - issue-conventions, lessons-learned, mcp-tools-reference, planning-workflow - progress-tracking, repo-validation, review-checklist, runaway-detection - setup-workflows, sprint-approval, task-sizing, test-standards, wiki-conventions Command Consolidation (17 → 12 commands): - /setup: consolidates initial-setup, project-init, project-sync (--full/--quick/--sync) - /debug: consolidates debug-report, debug-review (report/review modes) - /test: consolidates test-check, test-gen (run/gen modes) - /sprint-status: absorbs sprint-diagram via --diagram flag Architecture Cleanup: - Remove plugin-level mcp-servers/ symlinks (6 plugins) - Remove plugin README.md files (12 files, ~2000 lines) - Update all documentation to reflect new command structure - Fix documentation drift in CONFIGURATION.md, COMMANDS-CHEATSHEET.md Commands are now thin dispatchers (~20-50 lines) that reference skills. Agents reference skills for domain knowledge instead of inline content. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
146 lines
4.4 KiB
Markdown
146 lines
4.4 KiB
Markdown
---
|
|
name: mcp-tools-reference
|
|
description: Complete reference of available Gitea MCP tools with usage patterns
|
|
---
|
|
|
|
# MCP Tools Reference
|
|
|
|
## Purpose
|
|
|
|
Provides the complete reference of available MCP tools for Gitea operations. This skill ensures consistent tool usage across all commands and agents.
|
|
|
|
## When to Use
|
|
|
|
- **All agents**: When performing any Gitea operation
|
|
- **All commands**: That interact with issues, labels, milestones, wiki, or dependencies
|
|
|
|
## Critical Rules
|
|
|
|
### NEVER Use CLI Tools
|
|
|
|
**FORBIDDEN - Do not use:**
|
|
```bash
|
|
tea issue list
|
|
tea issue create
|
|
tea pr create
|
|
gh issue list
|
|
gh pr create
|
|
curl -X POST "https://gitea.../api/..."
|
|
```
|
|
|
|
**If you find yourself about to run a bash command for Gitea, STOP and use the MCP tool instead.**
|
|
|
|
### Required Parameter Format
|
|
|
|
All tools require the `repo` parameter in `owner/repo` format:
|
|
```python
|
|
# CORRECT
|
|
get_labels(repo="org/repo")
|
|
list_issues(repo="org/repo", state="open")
|
|
|
|
# INCORRECT - Will fail!
|
|
get_labels() # Missing repo parameter
|
|
```
|
|
|
|
---
|
|
|
|
## Issue Tools
|
|
|
|
| Tool | Purpose | Key Parameters |
|
|
|------|---------|----------------|
|
|
| `list_issues` | Fetch issues | `repo`, `state`, `labels`, `milestone` |
|
|
| `get_issue` | Get issue details | `repo`, `number` |
|
|
| `create_issue` | Create new issue | `repo`, `title`, `body`, `labels`, `assignee`, `milestone` |
|
|
| `update_issue` | Update issue | `repo`, `number`, `state`, `labels`, `body` |
|
|
| `add_comment` | Add comment to issue | `repo`, `number`, `body` |
|
|
|
|
## Label Tools
|
|
|
|
| Tool | Purpose | Key Parameters |
|
|
|------|---------|----------------|
|
|
| `get_labels` | Fetch all labels | `repo` |
|
|
| `suggest_labels` | Get intelligent suggestions | `repo`, `context` |
|
|
| `create_label` | Create repository label | `repo`, `name`, `color` |
|
|
| `create_label_smart` | Auto-detect org vs repo | `repo`, `name`, `color` |
|
|
|
|
## Milestone Tools
|
|
|
|
| Tool | Purpose | Key Parameters |
|
|
|------|---------|----------------|
|
|
| `list_milestones` | List all milestones | `repo`, `state` |
|
|
| `get_milestone` | Get milestone details | `repo`, `milestone_id` |
|
|
| `create_milestone` | Create new milestone | `repo`, `title`, `description`, `due_on` |
|
|
| `update_milestone` | Update milestone | `repo`, `milestone_id`, `state` |
|
|
|
|
## Dependency Tools
|
|
|
|
| Tool | Purpose | Key Parameters |
|
|
|------|---------|----------------|
|
|
| `list_issue_dependencies` | Get issue dependencies | `repo`, `issue_number` |
|
|
| `create_issue_dependency` | Create dependency | `repo`, `issue_number`, `depends_on` |
|
|
| `get_execution_order` | Get parallel batches | `repo`, `issue_numbers` |
|
|
|
|
## Wiki & Lessons Learned Tools
|
|
|
|
| Tool | Purpose | Key Parameters |
|
|
|------|---------|----------------|
|
|
| `list_wiki_pages` | List all wiki pages | `repo` |
|
|
| `get_wiki_page` | Fetch page content | `repo`, `page_name` |
|
|
| `create_wiki_page` | Create new page | `repo`, `title`, `content` |
|
|
| `update_wiki_page` | Update page content | `repo`, `page_name`, `content` |
|
|
| `search_lessons` | Search lessons learned | `repo`, `query`, `tags`, `limit` |
|
|
| `create_lesson` | Create lesson entry | `repo`, `title`, `content`, `tags`, `category` |
|
|
|
|
## Validation Tools
|
|
|
|
| Tool | Purpose | Key Parameters |
|
|
|------|---------|----------------|
|
|
| `validate_repo_org` | Check if repo is under org | `repo` |
|
|
| `get_branch_protection` | Check branch protection | `repo`, `branch` |
|
|
|
|
## Pull Request Tools
|
|
|
|
| Tool | Purpose | Key Parameters |
|
|
|------|---------|----------------|
|
|
| `list_pull_requests` | List PRs | `repo`, `state` |
|
|
| `get_pull_request` | Get PR details | `repo`, `number` |
|
|
| `create_pull_request` | Create PR | `repo`, `title`, `body`, `head`, `base` |
|
|
| `create_pr_review` | Create review | `repo`, `number`, `body`, `event` |
|
|
|
|
---
|
|
|
|
## Common Usage Examples
|
|
|
|
**Create sprint issue:**
|
|
```python
|
|
create_issue(
|
|
repo="org/repo",
|
|
title="[Sprint 17] feat: Implement JWT service",
|
|
body="## Description\n...\n## Implementation\n**Wiki:** [link]",
|
|
labels=["Type/Feature", "Priority/High"],
|
|
milestone=17
|
|
)
|
|
```
|
|
|
|
**Get parallel execution batches:**
|
|
```python
|
|
get_execution_order(repo="org/repo", issue_numbers=[45, 46, 47, 48])
|
|
# Returns: {"batches": [[45, 48], [46], [47]]}
|
|
```
|
|
|
|
**Search lessons learned:**
|
|
```python
|
|
search_lessons(repo="org/repo", tags=["auth", "python"], limit=10)
|
|
```
|
|
|
|
**Create lesson:**
|
|
```python
|
|
create_lesson(
|
|
repo="org/repo",
|
|
title="Sprint 18 - JWT Token Edge Cases",
|
|
content="# Sprint 18...\n## Context\n...",
|
|
tags=["auth", "jwt", "python"],
|
|
category="sprints"
|
|
)
|
|
```
|