atxtechbro / atxtechbro/dotfiles
Add remaining git commands to MCP server (config, ls-files, init, clone, submodule)
- Dominant language
- Shell
- Stars
- 27
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
## Summary
Following the implementation of essential git commands in #712/#713, this issue tracks the remaining "nice to have" git commands that would complete our git MCP server implementation.
## Remaining Commands to Implement
### 1. **`git ls-files`** - List tracked files
- Show files under version control
- Different from regular `ls` - only shows git-tracked files
- Useful for scripting and automation
- Read-only operation
### 2. **`git config`** - Get/set configuration values
- Support both get and set operations
- Handle --global, --local, --system scopes
- Common in setup scripts and automation
- Both read and write operations
### 3. **`git init`** - Initialize new repository
- Create new git repository
- Support --bare flag
- Less common in batch operations but fundamental
- Write operation
### 4. **`git clone`** - Clone repositories
- Clone from URLs or local paths
- Handle authentication if possible
- Support common flags (--depth, --branch, etc.)
- Useful for multi-repo automation
- Write operation
### 5. **`git submodule`** - Manage submodules
- Most complex - multiple subcommands needed:
- init, update, add, remove, status, foreach
- Important for projects using submodules
- Both read and write operations
## Implementation Notes
Each command should follow the established pattern:
- BaseModel class for parameters
- GitTools enum entry
- Function implementation with error handling
- Addition to TOOL_REGISTRY
- Proper categorization in READ_ONLY_TOOLS or WRITE_TOOLS
- Support in git_batch with shorthand mapping
- Case handling in call_tool
## Priority Order (by complexity)
1. `git ls-files` - Simplest, read-only
2. `git config` - Straightforward get/set
3. `git init` - Simple write operation
4. `git clone` - Moderate complexity (URL/auth handling)
5. `git submodule` - Most complex (multiple actions)
## Related
- Previous issues: #706, #712
- PRs: #711, #713
This would complete the git MCP server implementation with all commonly used git commands.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the established BaseModel pattern, GitTools enum, TOOL_REGISTRY, READ_ONLY_TOOLS, WRITE_TOOLS, git_batch shorthand mapping, and call_tool handling mentioned in the issue. Work through the commands in the stated priority order, beginning with git ls-files. Done means all five command groups and their listed operations are registered, categorized, batch-supported, and have error handling.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- git, shell
- Domain
- cli, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 28/100