example-config.json•6.22 kB
{
"name": "GitHub Actions MCP Server Example Configuration",
"examples": {
"simple_workflow": {
"description": "Basic CI workflow example",
"workflow": {
"owner": "your-username",
"repo": "your-repo",
"path": ".github/workflows/ci.yml",
"name": "Continuous Integration",
"on": {
"push": {
"branches": ["main", "develop"]
},
"pull_request": {
"branches": ["main"]
}
},
"jobs": {
"test": {
"runs-on": "ubuntu-latest",
"steps": [
{
"name": "Checkout repository",
"uses": "actions/checkout@v4"
},
{
"name": "Setup Node.js",
"uses": "actions/setup-node@v4",
"with": {
"node-version": "18"
}
},
{
"name": "Install dependencies",
"run": "npm install"
},
{
"name": "Run tests",
"run": "npm test"
}
]
}
}
}
},
"docker_workflow": {
"description": "Docker build and push workflow",
"workflow": {
"owner": "your-username",
"repo": "your-repo",
"path": ".github/workflows/docker.yml",
"name": "Docker Build and Push",
"on": {
"push": {
"branches": ["main"]
},
"release": {
"types": ["published"]
}
},
"env": {
"REGISTRY": "ghcr.io",
"IMAGE_NAME": "${{ github.repository }}"
},
"jobs": {
"build-and-push": {
"runs-on": "ubuntu-latest",
"permissions": {
"contents": "read",
"packages": "write"
},
"steps": [
{
"name": "Checkout repository",
"uses": "actions/checkout@v4"
},
{
"name": "Log in to Container Registry",
"uses": "docker/login-action@v3",
"with": {
"registry": "${{ env.REGISTRY }}",
"username": "${{ github.actor }}",
"password": "${{ secrets.GITHUB_TOKEN }}"
}
},
{
"name": "Extract metadata",
"id": "meta",
"uses": "docker/metadata-action@v5",
"with": {
"images": "${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}"
}
},
{
"name": "Build and push Docker image",
"uses": "docker/build-push-action@v5",
"with": {
"context": ".",
"push": true,
"tags": "${{ steps.meta.outputs.tags }}",
"labels": "${{ steps.meta.outputs.labels }}"
}
}
]
}
}
}
},
"deployment_workflow": {
"description": "Deployment workflow with environments",
"workflow": {
"owner": "your-username",
"repo": "your-repo",
"path": ".github/workflows/deploy.yml",
"name": "Deploy Application",
"on": {
"workflow_dispatch": {
"inputs": {
"environment": {
"description": "Environment to deploy to",
"required": true,
"default": "staging",
"type": "choice",
"options": ["staging", "production"]
},
"version": {
"description": "Version to deploy",
"required": false,
"default": "latest"
}
}
}
},
"jobs": {
"deploy": {
"runs-on": "ubuntu-latest",
"environment": "${{ github.event.inputs.environment }}",
"steps": [
{
"name": "Checkout repository",
"uses": "actions/checkout@v4"
},
{
"name": "Setup deployment tools",
"run": "echo 'Setting up deployment tools...'"
},
{
"name": "Deploy to ${{ github.event.inputs.environment }}",
"run": "echo 'Deploying version ${{ github.event.inputs.version }} to ${{ github.event.inputs.environment }}'"
},
{
"name": "Verify deployment",
"run": "echo 'Verifying deployment...'"
}
]
}
}
}
}
},
"common_commands": {
"list_recent_runs": {
"tool": "list_workflow_runs",
"description": "List recent workflow runs",
"params": {
"owner": "your-username",
"repo": "your-repo",
"per_page": 10
}
},
"get_failed_runs": {
"tool": "list_workflow_runs",
"description": "List failed workflow runs",
"params": {
"owner": "your-username",
"repo": "your-repo",
"status": "failure",
"per_page": 5
}
},
"trigger_deployment": {
"tool": "trigger_workflow",
"description": "Trigger deployment workflow",
"params": {
"owner": "your-username",
"repo": "your-repo",
"workflow_id": "deploy.yml",
"ref": "main",
"inputs": {
"environment": "staging",
"version": "v1.0.0"
}
}
}
},
"environment_setup": {
"required_env_vars": [
"GITHUB_TOKEN"
],
"github_token_scopes": [
"repo",
"workflow",
"contents:read",
"contents:write",
"actions:read",
"actions:write"
],
"setup_instructions": [
"1. Create a GitHub Personal Access Token with the required scopes",
"2. Set the GITHUB_TOKEN environment variable",
"3. Install dependencies: npm install",
"4. Build the project: npm run build",
"5. Start the server: npm start"
]
}
}