Content
# 🚀 coding-mcp
A concise and easy-to-use Model Context Protocol (MCP) server covering **413+ CODING API** interfaces, providing comprehensive integration with the CODING DevOps platform.
> **Special thanks** to the powerful DevOps services provided by the [CODING](https://coding.net/) platform! CODING is a one-stop software development management platform under Tencent Cloud, offering project collaboration, code hosting, continuous integration, artifact repository, and other full-link tools for development teams. This project allows AI assistants to easily utilize these professional services through the MCP protocol.
## 🚀 **Quick Start**
```bash
# 1. Confirm your CODING team address
# For example: https://your-team.coding.net (private deployment)
# Or: https://e.coding.net (public cloud)
# 2. Obtain a CODING personal access token
# Log in to CODING → Personal Settings → Access Tokens → Create a new token
# 3. Configure Claude Desktop
# Edit the configuration file to add coding-mcp server configuration
# No manual installation required, npx will automatically download the latest version
```
**⚠️ Important: The API base URL must be configured correctly**
Choose the corresponding configuration based on your CODING deployment type:
### 📊 **Private Deployment Team** (Recommended)
```json
{
"mcpServers": {
"coding-mcp": {
"command": "npx",
"args": ["-y", "coding-mcp@latest"],
"env": {
"CODING_API_BASE_URL": "https://your-team.coding.net/open-api",
"CODING_PERSONAL_ACCESS_TOKEN": "your_token_here"
}
}
}
}
```
### ☁️ **Public Cloud Deployment**
```json
{
"mcpServers": {
"coding-mcp": {
"command": "npx",
"args": ["-y", "coding-mcp@latest"],
"env": {
"CODING_API_BASE_URL": "https://e.coding.net/open-api",
"CODING_PERSONAL_ACCESS_TOKEN": "your_token_here"
}
}
}
}
```
## 📊 Project Overview
### 🎯 Features
- ✅ **Complete Coverage**: Supports all 413+ API interfaces of the CODING platform
- 🔐 **Secure Authentication**: Security authentication based on personal access tokens
- ⚡ **High Performance**: Intelligent caching, concurrency control, automatic retries
- 📊 **Comprehensive Monitoring**: Detailed call statistics and health checks
- 🔄 **Modular**: 12 functional modules that can be independently enabled/disabled
- 🛠️ **User-Friendly**: Friendly AI Agent natural language interaction
### 📋 Supported Functional Modules
| Module | Number of APIs | Main Functions |
|--------|----------------|----------------|
| **CD/DevOps** | 50+ | Host groups, cloud accounts, pipelines, application deployment |
| **Git Management** | 80+ | Repositories, commits, branches, files, tags |
| **CI/Build** | 40+ | Build tasks, build records, logs, artifacts |
| **Issue Management** | 20+ | Issues, defects, requirements, comments |
| **User Management** | 15+ | User information, notifications, permissions |
| **Project Management** | 25+ | Projects, members, configurations |
| **Team Management** | 15+ | Teams, members, invitations |
| **Artifact Repository** | 30+ | Artifact repositories, package management, version control |
| **Wiki Documentation** | 10+ | Wiki pages, document management |
| **Service Hook** | 15+ | Service hooks, event notifications |
| **Merge Requests** | 25+ | MR management, code reviews |
| **Monitoring Statistics** | 20+ | Metrics, health checks, analysis |
## 🛠️ Installation and Configuration
### 1. No Manual Installation Required
Use via `npx`, no manual installation needed, always use the latest version.
### 2. Obtain Personal Access Token
1. Log in to the CODING platform
2. Go to [Personal Account Settings] > [Access Tokens]
3. Click [Create Access Token]
4. Check the following permissions:
- ✅ `user:profile:ro` - User information read-only
- ✅ `project:profile:rw` - Project information read/write
- ✅ `team:profile:ro` - Team information read-only
- ✅ `team:member:rw` - Team member management
- ✅ `project_issue_rw` - Project collaboration
- ✅ `depot_read` - Read code repository
- ✅ `depot_write` - Push to code repository
5. Generate and copy the token
### 2. Configure MCP Client
#### Claude Desktop Configuration
**Configuration File Location:**
- **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
- **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
**⚠️ Important: API Base URL Configuration**
`CODING_API_BASE_URL` is a **required configuration item** and must be set correctly based on your team settings:
- **Private Deployment Team**: `https://your-team.coding.net/open-api`
- **Public Cloud Team**: `https://e.coding.net/open-api`
### **Private Deployment Configuration Example**:
```json
{
"mcpServers": {
"coding-mcp": {
"command": "npx",
"args": ["-y", "coding-mcp@latest"],
"env": {
"CODING_API_BASE_URL": "https://your-team.coding.net/open-api",
"CODING_PERSONAL_ACCESS_TOKEN": "your_personal_access_token_here"
}
}
}
}
```
### **Advanced Configuration (Recommended)**:
```json
{
"mcpServers": {
"coding-mcp": {
"command": "npx",
"args": ["-y", "coding-mcp@latest"],
"env": {
"CODING_API_BASE_URL": "https://your-team.coding.net/open-api",
"CODING_PERSONAL_ACCESS_TOKEN": "your_personal_access_token_here",
"CODING_ENABLE_CACHE": "true",
"CODING_MAX_CONCURRENT_REQUESTS": "15",
"CODING_API_TIMEOUT": "30000",
"CODING_API_RETRY_ATTEMPTS": "3"
}
}
}
}
```
#### Other MCP Client Configurations
```json
{
"mcpServers": {
"coding-mcp": {
"command": "npx",
"args": ["-y", "coding-mcp@latest"],
"env": {
"CODING_API_BASE_URL": "https://your-team.coding.net/open-api",
"CODING_PERSONAL_ACCESS_TOKEN": "your_personal_access_token_here"
}
}
}
}
```
### 🔍 **How to Confirm Your API Base URL**
1. **Check Your CODING Login Address**:
- If it is `https://your-team.coding.net`, then the API address is `https://your-team.coding.net/open-api`
- If it is `https://e.coding.net`, then the API address is `https://e.coding.net/open-api`
2. **Test API Connection**:
```bash
curl "https://your-team.coding.net/open-api/?Action=DescribeTeam" \
-H "Authorization: token your_token_here"
```
3. **Common Configuration Errors**:
- ❌ Forgot to configure `CODING_API_BASE_URL`
- ❌ Used the wrong team address (e.g., accessing private deployment with public cloud address)
- ❌ API address missing `/open-api` suffix
### 3. Usage Instructions
After configuration is complete, restart Claude Desktop, and the service will automatically start via npx.
Upon successful startup, it will display:
```
🚀 CODING API MCP server has started (v0.1.0)
✅ Configuration Status: Configured
📊 Supports 413+ API interfaces, covering the complete DevOps process
🎉 Server is ready, you can start using all features!
```
## 💡 Usage Examples
### 🐛 Defect Management
```
👤 Help me check how many defects I have under my name
🤖 Let me check the defect status for you...
📊 **Your Defect Summary**:
- **Total**: 12 defects
- **Distribution by Status**: 3 pending, 5 in progress, 2 in testing, 2 completed
- **Distribution by Priority**: 2 high priority, 7 medium priority, 3 low priority
**High Priority Defects**:
1. DEFECT-2024 - Payment system error (in progress)
2. DEFECT-2023 - User login failure (pending)
Do you need me to help you handle these high-priority defects?
```
### 🏗️ CI/CD Management
```
👤 I want to check the build status of the project and then trigger a new build
🤖 📈 **Build Task Overview**:
- **Active Tasks** (3): Frontend build, Backend API, Mobile packaging
- **Recent Build Records**:
- ✅ Build #245 - Frontend build - Success (Duration: 3 minutes)
- ❌ Build #244 - Mobile packaging - Failed (Duration: 8 minutes)
🚀 **New Build Triggered**:
- Build ID: #246
- Task: Frontend build
- Branch: master
- Status: Running
```
### 📦 Git Repository Management
```
👤 I need to create a new branch in the main repository and then add some files
🤖 📊 **Repository Information**:
- Repository Name: web-frontend
- Default Branch: master
- Total Commits: 1,247
✅ **New Branch Created Successfully**:
- Branch Name: feature/user-dashboard
- Based on: master (latest commit)
Now you can start adding files, please tell me the specific content of the files you need to add.
```
### 🏢 Team Project Management
```
👤 Help me create a new project and invite a few team members
🤖 ✅ **Project Created Successfully**:
- Project Name: mobile-app-v2
- Display Name: Mobile App 2.0
- Project ID: 156
- Visibility: Private
Please provide the email addresses of the members to invite, and I will send them invitations.
```
## 🔧 Configuration Options
### Environment Variables
| Variable Name | Description | Default Value | Required |
|----------------|-------------|---------------|----------|
| `CODING_PERSONAL_ACCESS_TOKEN` | Personal access token | - | ✅ **Required** |
| `CODING_API_BASE_URL` | API base URL<br/>Private Deployment: `https://your-team.coding.net/open-api`<br/>Public Cloud: `https://e.coding.net/open-api` | `https://e.coding.net/open-api` | ✅ **Required** |
| `CODING_ENABLE_CACHE` | Enable caching | `false` | Optional |
| `CODING_MAX_CONCURRENT_REQUESTS` | Maximum concurrent requests | `10` | Optional |
| `CODING_API_TIMEOUT` | Request timeout (milliseconds) | `30000` | Optional |
| `CODING_API_RETRY_ATTEMPTS` | Retry attempts | `3` | Optional |
**⚠️ Important Reminder**:
- `CODING_API_BASE_URL` must match your team address
- Private deployment teams cannot use public cloud API addresses, and vice versa
- Configuration errors will cause all API calls to fail
### High-Performance Configuration Example
```json
{
"env": {
"CODING_API_BASE_URL": "https://your-team.coding.net/open-api",
"CODING_PERSONAL_ACCESS_TOKEN": "your_token_here",
"CODING_ENABLE_CACHE": "true",
"CODING_MAX_CONCURRENT_REQUESTS": "20",
"CODING_API_TIMEOUT": "45000",
"CODING_API_RETRY_ATTEMPTS": "5"
}
}
```
## 🎯 Complete Tool List
### 🔧 Core Management Tools (7)
- `coding_configure` - Configure service
- `coding_health_check` - Health check
- `coding_get_metrics` - Get metrics
- `coding_reset_metrics` - Reset metrics
- `coding_clear_cache` - Clear cache
- `coding_get_module_status` - Module status
- `coding_toggle_module` - Toggle module
### 🏗️ CD/DevOps Tools (50+)
- **Host Group Management**: `coding_cd_*_host_server_group*`
- **Cloud Account Management**: `coding_cd_*_cloud_account*`
- **Pipeline Management**: `coding_cd_*_pipeline*`
- **Application Management**: `coding_cd_*_application*`
- **Task Management**: `coding_cd_*_task*`
### 📦 Git Management Tools (80+)
- **Repository Management**: `coding_git_*_repository*`
- **Commit Management**: `coding_git_*_commit*`
- **Branch Management**: `coding_git_*_branch*`
- **File Management**: `coding_git_*_file*`
- **Tag Management**: `coding_git_*_tag*`
### 🏗️ CI/Build Tools (40+)
- **Job Management**: `coding_ci_*_job*`
- **Build Management**: `coding_ci_*_build*`
- **Log Management**: `coding_ci_*_log*`
- **Statistics Analysis**: `coding_ci_*_statistics*`
### 🐛 Issue Management Tools (20+)
- `coding_list_my_issues` - Get the list of issues I am responsible for
- `coding_get_defects_summary` - Get my defect summary statistics
- `coding_get_issue_detail` - Get detailed information about an issue
- `coding_create_issue` - Create a new issue
- `coding_update_issue_status` - Update issue status
### 👤 User Team Project Tools (55+)
- **User Management**: `coding_*_user*`
- **Team Management**: `coding_*_team*`
- **Project Management**: `coding_*_project*`
## 🚨 Troubleshooting
### Common Issues
**Q: Prompt "Configuration Status: Pending Configuration"**
- **Solution**: Check if the `CODING_PERSONAL_ACCESS_TOKEN` environment variable is set correctly
**Q: Prompt "Environment Variable Configuration Failed"**
- **Solution**: Regenerate the access token and ensure sufficient permissions
**Q: API Call Failed / Unable to Connect**
- **Solution Steps**:
1. Confirm that `CODING_API_BASE_URL` is configured correctly
2. For private deployment use: `https://your-team.coding.net/open-api`
3. For public cloud use: `https://e.coding.net/open-api`
4. Check network connection and validate token validity
**Q: Private Deployment Team Cannot Connect**
- **Common Error**: Used the public cloud API address `https://e.coding.net/open-api`
- **Correct Configuration**: Must use `https://your-team.coding.net/open-api`
- **Validation Method**:
```bash
curl "https://your-team.coding.net/open-api/?Action=DescribeTeam" \
-H "Authorization: token your_token"
```
**Q: Public Cloud Team Cannot Connect**
- **Common Error**: Used the private deployment format API address
- **Correct Configuration**: Use `https://e.coding.net/open-api`
### Debugging Tips
1. **Check Startup Logs**: Pay attention to the status information during server startup
2. **Health Check**: Use AI Agent to execute "Check CODING API connection status"
3. **Step-by-Step Validation**: Start testing with simple user information queries
4. **Check Permissions**: Ensure the access token includes the required permissions
## 🏗️ Project Architecture
### 📁 Project Structure
```
coding-mcp/
├── src/
│ ├── comprehensive-mcp-server.ts # Main server entry
│ ├── core/
│ │ ├── comprehensive-config.ts # Enhanced configuration manager
│ │ └── comprehensive-api-client.ts # High-performance API client
│ ├── types/
│ │ └── comprehensive-types.ts # Complete type definitions
│ ├── modules/
│ │ ├── cd-devops-tools.ts # CD/DevOps module (50+ APIs)
│ │ ├── git-management-tools.ts # Git management module (80+ APIs)
│ │ └── ci-build-tools.ts # CI/Build module (40+ APIs)
│ └── tools/
│ ├── issue-tools.ts # Issue management (20+ APIs)
│ ├── user-tools.ts # User management (15+ APIs)
│ ├── project-tools.ts # Project management (25+ APIs)
│ └── team-tools.ts # Team management (15+ APIs)
├── claude-desktop-config.json # Claude Desktop configuration example
├── package.json # Project configuration (v2.0.0)
└── README.md # This document
```
### 🎨 Architectural Features
- **Layered Design**: Clear separation of responsibilities
- **Modular**: 12 functional modules that can be independently controlled
- **High Performance**: Caching, concurrency control, retry mechanisms
- **Type Safety**: Complete TypeScript type system
- **Comprehensive Monitoring**: Detailed metrics collection and health checks
## 📊 Performance Features
### ⚡ Performance Optimization
- **Intelligent Caching**: Read-only operations are automatically cached, TTL configurable
- **Concurrency Control**: Maximum concurrency configurable to prevent API rate limiting
- **Retry Strategy**: Exponential backoff algorithm, intelligent error identification
### 📈 Monitoring Metrics
- **Call Statistics**: Request/success/error counts for each module
- **Response Time**: Average response time monitoring
- **Health Check**: Real-time status monitoring and module availability detection
## 🎉 Use Cases
### Development Team
- "Help me check today's build status"
- "Create a new feature branch"
- "Assign this defect to Zhang San for handling"
### Project Manager
- "Generate this week's project progress report"
- "View the workload of team members"
- "Create a new milestone plan"
### DevOps Engineer
- "Deploy the application to the production environment"
- "Check the pipeline execution status"
- "Configure a new build task"
### Quality Assurance
- "View all items pending testing"
- "Create test cases and defect reports"
- "Analyze defect trends and quality metrics"
## 🔮 Version Information
- **Current Version**: v0.1.0
- **API Coverage**: 413+ interfaces
- **Number of Modules**: 12
- **MCP Tools**: 200+
- **npm Package**: [coding-mcp@0.1.0](https://www.npmjs.com/package/coding-mcp)
## 📄 License
Apache-2.0 License
## 🙏 Special Thanks
**Thanks to [CODING](https://coding.net/) for providing an excellent DevOps platform!**
CODING is a one-stop software development management platform under Tencent Cloud, offering:
- 🏢 **Project Collaboration**: Efficient team collaboration and requirement management
- 📦 **Code Hosting**: Secure and reliable Git/SVN code repositories
- 🔄 **Continuous Integration**: Automated testing and build pipelines
- 📋 **Artifact Repository**: Comprehensive management of build artifacts
- ☁️ **Cloud Native**: Modern development and deployment tools
This project brings these powerful features to AI assistants through the MCP protocol, making development simpler!
## 🆘 Support
If you have any questions:
1. Check the startup logs and error messages
2. Validate the access token permission configuration
3. Check the network connection status
4. Submit an Issue for assistance
---
🚀 **Get started now:**
```bash
# No manual installation required, just configure Claude Desktop
# Add the following configuration to the configuration file:
```
```json
{
"mcpServers": {
"coding-mcp": {
"command": "npx",
"args": ["-y", "coding-mcp@latest"],
"env": {
"CODING_API_BASE_URL": "https://your-team.coding.net/open-api",
"CODING_PERSONAL_ACCESS_TOKEN": "your_token_here"
}
}
}
}
```
## ✅ **Configuration Verification Checklist**
Before you start using, please confirm the following configurations:
1. **✅ Confirm Team Type**
- [ ] Private Deployment: `https://your-team.coding.net/open-api`
- [ ] Public Cloud: `https://e.coding.net/open-api`
2. **✅ Validate API Connection**
```bash
curl "https://your-team.coding.net/open-api/?Action=DescribeTeam" \
-H "Authorization: token your_token_here"
```
3. **✅ Check Token Permissions**
- [ ] `collaboration:issue:rw` - Issue management
- [ ] `project:profile:rw` - Project information
- [ ] `team:profile:ro` - Team information
- [ ] `vcs:repository:rw` - Code repository
4. **✅ Test MCP Server**
```
"Hello, help me check the CODING API connection status"
```
## 📦 **npm Package Information**
- **Package Name**: `coding-mcp`
- **Current Version**: `v0.1.0`
- **Usage**: `npx -y coding-mcp@latest` (no manual installation required)
- **GitHub**: [https://github.com/ForeverWorld/coding-mcp](https://github.com/ForeverWorld/coding-mcp)
- **npm Page**: [https://www.npmjs.com/package/coding-mcp](https://www.npmjs.com/package/coding-mcp)
**Now you can interact with the AI Agent using natural language to utilize all features of the CODING platform!** ✨
Connection Info
You Might Also Like
everything-claude-code
Complete Claude Code configuration collection - agents, skills, hooks,...
markitdown
MarkItDown-MCP is a lightweight server for converting URIs to Markdown.
cc-switch
All-in-One Assistant for Claude Code, Codex & Gemini CLI across platforms.
servers
Model Context Protocol Servers
servers
Model Context Protocol Servers
Time
A Model Context Protocol server for time and timezone conversions.