arch-mcp

An AI-powered bridge to the Arch Linux ecosystem that enables intelligent package management, AUR access, and Arch Wiki queries through the Model Context Protocol (MCP).

Arch Linux MCP Server

PyPI Downloads

Disclaimer: Unofficial community project, not affiliated with Arch Linux.

A Model Context Protocol (MCP) server that bridges AI assistants with the Arch Linux ecosystem. Enables intelligent, safe, and efficient access to the Arch Wiki, AUR, and official repositories for AI-assisted Arch Linux usage on Arch and non-Arch systems.

Leverage AI to get output for digestible, structured results that are ready for follow up questions and actions.

📖 Complete Documentation with Comfy Guides

Sneak Peak into what's available

Claude Desktop Demo

VS Code Demo

Resources (URI-based Access)

Direct access to Arch ecosystem data via custom URI schemes:

Documentation & Search

URI SchemeExampleReturns
archwiki://archwiki://Installation_guideMarkdown-formatted Wiki page

Package Information

URI SchemeExampleReturns
archrepo://archrepo://vimOfficial repository package details
aur://*/infoaur://yay/infoAUR package metadata (votes, maintainer, dates)
aur://*/pkgbuildaur://yay/pkgbuildRaw PKGBUILD with safety analysis

System Packages (Arch only)

URI SchemeExampleReturns
pacman://installedpacman://installedSystem installed packages list
pacman://orphanspacman://orphansOrphaned packages
pacman://explicitpacman://explicitExplicitly installed packages
pacman://groupspacman://groupsAll package groups
pacman://group/*pacman://group/base-develPackages in specific group
pacman://database/freshnesspacman://database/freshnessPackage database sync status

System Monitoring & Logs

URI SchemeExampleReturns
system://infosystem://infoSystem information (kernel, memory, uptime)
system://disksystem://diskDisk space usage statistics
system://services/failedsystem://services/failedFailed systemd services
system://logs/bootsystem://logs/bootRecent boot logs
pacman://log/recentpacman://log/recentRecent package transactions
pacman://log/failedpacman://log/failedFailed package transactions

News & Updates

URI SchemeExampleReturns
archnews://latestarchnews://latestLatest Arch Linux news
archnews://criticalarchnews://criticalCritical news requiring manual intervention
archnews://since-updatearchnews://since-updateNews since last system update

Configuration

URI SchemeExampleReturns
config://pacmanconfig://pacmanParsed pacman.conf configuration
config://makepkgconfig://makepkgParsed makepkg.conf configuration
mirrors://activemirrors://activeCurrently configured mirrors
mirrors://healthmirrors://healthMirror configuration health status

Tools (Executable Functions)

Package Search & Information

ToolDescriptionPlatform
search_archwikiQuery Arch Wiki with ranked resultsAny
search_aurSearch AUR (relevance/votes/popularity/modified)Any
get_official_package_infoGet official package details (hybrid local/remote)Any

Package Lifecycle Management

ToolDescriptionPlatform
check_updates_dry_runCheck for available updatesArch only
install_package_secureInstall with security checks (blocks malicious packages)Arch only
remove_packageRemove single package (with deps, forced)Arch only
remove_packages_batchRemove multiple packages efficientlyArch only

Package Analysis & Maintenance

ToolDescriptionPlatform
list_orphan_packagesFind orphaned packagesArch only
remove_orphansClean orphans (dry-run, exclusions)Arch only
verify_package_integrityCheck file integrity (modified/missing files)Arch only
list_explicit_packagesList user-installed packagesArch only
mark_as_explicitPrevent package from being orphanedArch only
mark_as_dependencyAllow package to be orphanedArch only

Package Organization

ToolDescriptionPlatform
find_package_ownerFind which package owns a fileArch only
list_package_filesList files in package (regex filtering)Arch only
search_package_filesSearch files across packagesArch only
list_package_groupsList all groups (base, base-devel, etc.)Arch only
list_group_packagesShow packages in specific groupArch only

System Monitoring & Diagnostics

ToolDescriptionPlatform
get_system_infoSystem info (kernel, memory, uptime)Any
check_disk_spaceDisk usage with warningsAny
get_pacman_cache_statsPackage cache size and ageArch only
check_failed_servicesFind failed systemd servicessystemd
get_boot_logsRetrieve journalctl boot logssystemd
check_database_freshnessCheck package database sync statusArch only

Transaction History & Logs

ToolDescriptionPlatform
get_transaction_historyRecent package transactions (install/upgrade/remove)Arch only
find_when_installedPackage installation historyArch only
find_failed_transactionsFailed package operationsArch only
get_database_sync_historyDatabase sync eventsArch only

News & Safety Checks

ToolDescriptionPlatform
get_latest_newsFetch Arch Linux news from RSSAny
check_critical_newsFind critical news (manual intervention required)Any
get_news_since_last_updateNews posted since last system updateArch only

Mirror Management

ToolDescriptionPlatform
list_active_mirrorsShow configured mirrorsArch only
test_mirror_speedTest mirror latencyArch only
suggest_fastest_mirrorsRecommend optimal mirrors by locationAny
check_mirrorlist_healthVerify mirror configurationArch only

Configuration Management

ToolDescriptionPlatform
analyze_pacman_confParse pacman.conf settingsArch only
analyze_makepkg_confParse makepkg.conf settingsArch only
check_ignored_packagesList ignored packages (warns on critical)Arch only
get_parallel_downloads_settingGet parallel download configArch only

Security Analysis

ToolDescriptionPlatform
analyze_pkgbuild_safetyComprehensive PKGBUILD analysis (50+ red flags)Any
analyze_package_metadata_riskPackage trust scoring (votes, maintainer, age)Any

Prompts (Guided Workflows)

PromptPurposeWorkflow
troubleshoot_issueDiagnose system errorsExtract keywords → Search Wiki → Context-aware suggestions
audit_aur_packagePre-installation safety auditFetch metadata → Analyze PKGBUILD → Security recommendations
analyze_dependenciesInstallation planningCheck repos → Map dependencies → Suggest install order
safe_system_updateSafe update workflowCheck critical news → Verify disk space → List updates → Check services → Recommendations

Installation

Prerequisites

  • Python 3.11+
  • uv (recommended) or pip

Quick Install with uvx

uvx arch-ops-server

Configuration

Claude / Cursor / Any MCP client that supports STDIO transport

{
  "mcpServers": {
    "arch-ops": {
      "command": "uvx",
      "args": ["arch-ops-server"]
    }
  }
}

Contributing

Contributions are greatly appreciated. Please feel free to submit a pull request or open an issue and help make things better for everyone.

Contributing Guide

License

This project is dual-licensed under your choice of:

  • GPL-3.0-only - For those who prefer strong copyleft protections. See LICENSE-GPL
  • MIT License - For broader compatibility and adoption, including use in proprietary software and compatibility with platforms like Docker MCP Catalog. See LICENSE-MIT

You may use this software under the terms of either license. When redistributing or modifying this software, you may choose which license to apply.

By contributing to this project, you agree that your contributions will be licensed under both licenses.

Related Servers