The Copr MCP server lets you interact with Fedora Copr (a build system for RPM packages) to manage builds, projects, and repositories through an AI agent interface.
Check build status – Get the current state of a specific Copr build by ID.
List builds in a project – Retrieve all builds for a given Copr project (
ownername/projectname).Create a project – Create a new Copr project with a specified owner and build chroots (e.g.,
fedora-rawhide-x86_64).Submit builds – Initiate new builds from supported source types like PyPI or DistGit.
Enable a repository – Get instructions for enabling a Copr repository on a user's system.
List mock chroots – List all available mock chroots (build targets) across Fedora/RHEL versions and architectures, or those configured for a specific project.
Get build log URLs – Retrieve log URLs for a build, including SRPM, dist-git import, and per-chroot logs.
Fetch build log content – Download and return the text content of a build log.
Check authentication – Verify whether the user's API auth key is valid.
Provides tools for managing Fedora Copr builds and projects, including checking build status, listing recent builds, building packages, and creating projects.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Copr MCPList the last 5 builds in frostyx/foo"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Copr MCP
Demo
Please see the First look at the Copr MCP server.
Prerequisites
Install dependencies
uv syncRelated MCP server: codemagic_mcp
MCP Usage
Register the MCP server with Claude Code, Codex, Cursor, or any other agent.
Claude Code
To register the copr server with Claude Code, execute this command
$ claude mcp add copr --scope user \
-- uv run --directory "$(pwd)" python main.pyIf you don't need this MCP server anymore, uninstall it.
$ claude mcp remove coprCodex
$ codex mcp add copr -- uv run --directory "$(pwd)" python main.pyIf you don't need this MCP server anymore, uninstall it.
$ codex mcp remove coprCursor
If you use Cursor, open or create ~/.cursor/mcp.json and add the copr
entry to the list of mcpServers.
Change the directory (~/src/copr-mcp) to wherever you've cloned this
copr-mcp project.
{
"mcpServers": {
"copr": {
"command": "uv",
"args": [
"run",
"--directory",
"~/src/copr-mcp",
"python",
"main.py"
]
}
}
}If you don't need this MCP server anymore, removing the copr
entry from the mcpServers list in ~/.cursor/mcp.json.
Visual Studio Code
Open the Command Palette in VSCode by pressing
Ctrl+Shift+P. Then type >MCP: Open User Configuration. The file mcp.json that opens should look something like this:
{
"servers": {}
}Add the copr MCP server like so:
{
"servers": {
"copr": {
"type": "local",
"command": "uvx",
"args": ["--from", "git+https://github.com/fedora-copr/copr-mcp@main", "--verbose", "copr-mcp-server"]
}
}
}Save the file (~/.config/Code/mcp.json) and start the server by hitting the
little "Save" link that appears right above the line with "copr": {.
Test the server by opening the Chat view with Ctrl+Alt+I. Then type the following and press Enter:
Use copr_list_mock_chroots from the copr MCP server and list all supported mock chroots.You should see a Run copr_list_mock_chroots copr (MCP Server) followed by some
text and a button that says Allow in this Session.
If you don't need this MCP server anymore, remove the copr entry from the
servers list in the MCP: Open User Configuration
(~/.config/Code/mcp.json).
Run tools
Once the MCP server is registered, go to i.e. Claude or Cursor and ask it questions like
Tell me the status of Copr build 8101723
Can you give me last 5 builds from the frostyx/foo Copr project?
Build the DistGit package hello in my frostyx/foo project
Create a Copr project frostyx/foo with a fedora-43-x86_64 chroot
Development
Go to https://console.anthropic.com, "API Keys" and generate a new key. Then export it in your terminal:
$ export ANTHROPIC_API_KEY=...Then run
$ uv run main.py --prompt "Tell me the status of Copr build 8101723"To use a different model pass --model
$ uv run main.py --model gpt-5-mini --prompt "Tell me the status of Copr build 8101723"Full list of models can be found here: https://pydantic.dev/docs/ai/api/models/base/#pydantic_ai.models.KnownModelName
Tests
$ uv run mypy .
$ uv run ruff check
$ uv run pytestMaintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/fedora-copr/copr-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
