feat(mcp): Git Operations MCP - Foundation & Core Setup #105

Open
opened 2026-01-06 19:19:02 +00:00 by cardosofelipe · 0 comments

Parent Issue

Part of #58 (Git Operations MCP Server)

Summary

Set up the foundation for the Git Operations MCP server including project structure, dependencies, Docker configuration, and core abstractions.

Tasks

Project Setup

  • Create mcp-servers/git-ops/ directory structure
  • Create pyproject.toml with dependencies (fastmcp, gitpython, httpx)
  • Create Dockerfile with Git CLI installed
  • Create .dockerignore
  • Add service to docker-compose.dev.yml
  • Create README.md with setup instructions

Core Models & Exceptions

  • Create models.py with result types (CloneResult, BranchResult, CommitResult, etc.)
  • Create exceptions.py with error hierarchy (GitError, CloneError, PushError, etc.)
  • Create config.py with configuration management

Base Abstractions

  • Define GitProvider protocol for provider implementations
  • Define GitOperations protocol for git wrapper
  • Create __init__.py with exports

Testing Foundation

  • Create tests/ directory structure
  • Create conftest.py with fixtures
  • Add pytest configuration

Acceptance Criteria

  • Project structure follows existing MCP server patterns
  • Docker container builds successfully
  • All core types properly defined with Pydantic
  • Exception hierarchy covers all error cases
  • Tests can run with IS_TEST=True uv run pytest

Labels

  • mcp
  • phase-2
  • backend
## Parent Issue Part of #58 (Git Operations MCP Server) ## Summary Set up the foundation for the Git Operations MCP server including project structure, dependencies, Docker configuration, and core abstractions. ## Tasks ### Project Setup - [ ] Create `mcp-servers/git-ops/` directory structure - [ ] Create `pyproject.toml` with dependencies (fastmcp, gitpython, httpx) - [ ] Create `Dockerfile` with Git CLI installed - [ ] Create `.dockerignore` - [ ] Add service to `docker-compose.dev.yml` - [ ] Create `README.md` with setup instructions ### Core Models & Exceptions - [ ] Create `models.py` with result types (CloneResult, BranchResult, CommitResult, etc.) - [ ] Create `exceptions.py` with error hierarchy (GitError, CloneError, PushError, etc.) - [ ] Create `config.py` with configuration management ### Base Abstractions - [ ] Define `GitProvider` protocol for provider implementations - [ ] Define `GitOperations` protocol for git wrapper - [ ] Create `__init__.py` with exports ### Testing Foundation - [ ] Create `tests/` directory structure - [ ] Create `conftest.py` with fixtures - [ ] Add pytest configuration ## Acceptance Criteria - [ ] Project structure follows existing MCP server patterns - [ ] Docker container builds successfully - [ ] All core types properly defined with Pydantic - [ ] Exception hierarchy covers all error cases - [ ] Tests can run with `IS_TEST=True uv run pytest` ## Labels - mcp - phase-2 - backend
Sign in to join this conversation.