Skip to main content

A FastMCP-based MCP server for DevOps

Project description

DevOps MCP Server

A FastMCP-based MCP server providing DevOps tools and integrations.

Features

  • GitHub repository search and management
  • File content retrieval from repositories
  • Issue tracking and management
  • Code search functionality

Installation

To install the package, use the following command:

pip install devops-mcps

Usage

Run the MCP server:

devops-mcps

Configuration

Environment Variables

Set the required environment variable for GitHub API access:

export GITHUB_PERSONAL_ACCESS_TOKEN=your_token_here

JSON Configuration

Create a config.json file:

{
  "github": {
    "access_token": "your_token_here",
    "api_url": "https://api.github.com"
  },
  "server": {
    "port": 8000,
    "debug": false
  }
}

UVX Configuration

Install UVX tools:

uvx install

Run with UVX:

uvx run devops-mcps

Docker Configuration

Build the Docker image:

docker build -t devops-mcps .

Run the container:

docker run -p 8000:8000 devops-mcps

VSCode Configuration

UVX Way

  1. Install the UVX extension in VSCode
  2. Create a .vscode/settings.json file:
{
  "uvx.command": "devops-mcps",
  "uvx.port": 8000
}
  1. Press F5 to start debugging

Docker Way

"devops-mcps": {
  "command": "docker",
  "args": [
    "run",
    "-i",
    "huangjien/devops-mcps:latest"
  ],
  "env": {
    "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxxxxxxxxxxxxxxx2Ce"
  }
}
  1. Reopen in Container

Development

Install development dependencies:

pip install -e .[dev]

CI/CD Pipeline

GitHub Actions workflow will automatically:

  1. Build and publish Python package to PyPI
  2. Build and push Docker image to Docker Hub

Required Secrets

Set these secrets in your GitHub repository:

  • PYPI_API_TOKEN: Your PyPI API token
  • DOCKER_HUB_USERNAME: Your Docker Hub username
  • DOCKER_HUB_TOKEN: Your Docker Hub access token

Workflow triggers on push to main branch.

Packaging and Publishing

Build the package

python -m build

Upload to PyPI

  1. Create a ~/.pypirc file with your API token:
[pypi]
username = __token__
password = your_pypi_api_token_here
  1. Upload the package:
twine upload dist/*

Important Notes

  • Ensure all classifiers in pyproject.toml are valid PyPI classifiers
  • Remove deprecated license classifiers in favor of SPDX license expressions
  • The package will be available at: https://pypi.org/project/devops-mcps/
  • Update the version everytime, or when you push, it will show an error: already exists.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

devops_mcps-0.2.0.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

devops_mcps-0.2.0-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file devops_mcps-0.2.0.tar.gz.

File metadata

  • Download URL: devops_mcps-0.2.0.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for devops_mcps-0.2.0.tar.gz
Algorithm Hash digest
SHA256 21dec58054fe12373f5b0c5e552ea4f7f30935576de66384cb9718c7d3454089
MD5 0ac4e27ce18eb5510fa41d8aa82b2b95
BLAKE2b-256 a765007f4b3223a6819400dc9e840790d7df38f19d7fbc8c2ba01496d08127c3

See more details on using hashes here.

File details

Details for the file devops_mcps-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: devops_mcps-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for devops_mcps-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b97aca2ebbf5c3b84e0741c058dae7b7d6eededa05f196ec14bb83e79d55289c
MD5 1f618b39b734433a2796df6dc0be0770
BLAKE2b-256 422973eb058a7172f93a810b85b1ca076129a457e402dc808b63997ba408cd53

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page