Arch Linux MCP服务器
免责声明: 非官方社区项目,与Arch Linux无关。
A. 模型上下文协议 (MCP)服务器,将AI助手与Arch Linux生态系统连接起来。支持智能、安全和高效地访问Arch Wiki、AUR和官方存储库,以便在Arch和非Arch系统上使用人工智能辅助的Arch Linux。
利用人工智能获得易于理解、结构化的结果,为后续问题和行动做好准备。
📖 使用Comfy指南完成文档
偷偷潜入Peak的可用资源
Using VS Code Sonnet 3.5 for Safe Installation from AUR
Asking Claude Code Sonnet 4.5 for fedora equivalent command
资源(基于URI的访问)
通过自定义URI方案直接访问Arch生态系统数据:
文档和搜索
| URI方案 |
示例 |
返回 |
archwiki:// |
archwiki://Installation_guide |
Markdown格式的Wiki页面 |
包裹信息
| URI方案 |
示例 |
返回 |
archrepo:// |
archrepo://vim |
官方存储库包详细信息 |
aur://*/info |
aur://yay/info |
AUR包元数据(投票、维护者、日期) |
aur://*/pkgbuild |
aur://yay/pkgbuild |
带安全分析的原始PKGBUILD |
系统包(仅限Arch)
| URI方案 |
示例 |
返回 |
pacman://installed |
pacman://installed |
系统安装包列表 |
pacman://orphans |
pacman://orphans |
孤立包裹 |
pacman://explicit |
pacman://explicit |
明确安装的软件包 |
pacman://groups |
pacman://groups |
所有包组 |
pacman://group/* |
pacman://group/base-devel |
特定组中的包 |
pacman://database/freshness |
pacman://database/freshness |
包数据库同步状态 |
系统监控和日志
| URI方案 |
示例 |
返回 |
system://info |
system://info |
系统信息(内核、内存、正常运行时间) |
system://disk |
system://disk |
磁盘空间使用统计 |
system://services/failed |
system://services/failed |
失败的systemd服务 |
system://logs/boot |
system://logs/boot |
最近的启动日志 |
pacman://log/recent |
pacman://log/recent |
最近的包裹交易 |
pacman://log/failed |
pacman://log/failed |
包裹交易失败 |
新闻与更新
| URI方案 |
示例 |
返回 |
archnews://latest |
archnews://latest |
最新Arch Linux新闻 |
archnews://critical |
archnews://critical |
需要人工干预的关键新闻 |
archnews://since-update |
archnews://since-update |
自上次系统更新以来的新闻 |
配置
| URI方案 |
示例 |
返回 |
config://pacman |
config://pacman |
解析的pacman.conf配置 |
config://makepkg |
config://makepkg |
解析makepkg.conf配置 |
mirrors://active |
mirrors://active |
当前配置的镜像 |
mirrors://health |
mirrors://health |
镜像配置运行状况 |
工具(可执行函数)
包裹搜索和信息
| 工具 |
描述 |
平台 |
search_archwiki |
使用排名结果查询Arch Wiki |
任意 |
search_aur |
搜索AUR(相关性/投票数/受欢迎程度/修改) |
任何 |
get_official_package_info |
获取官方套餐详细信息(混合本地/远程) |
任何 |
软件包生命周期管理
| 工具 |
描述 |
平台 |
check_updates_dry_run |
检查可用更新 |
仅限Arch |
install_package_secure |
安装时进行安全检查(阻止恶意软件包) |
仅限Arch |
remove_packages |
删除包-接受单个包名称或列表(带deps,强制) |
仅Arch |
包装分析和维护
| 工具 |
描述 |
平台 |
manage_orphans |
管理孤立包(2个操作:列出孤立包,删除孤立包)。为了安全起见,始终先以干运行模式运行。 |
仅限拱门 |
verify_package_integrity |
检查文件完整性(已修改/丢失的文件) |
仅限Arch |
manage_install_reason |
管理安装原因(3个操作:列出显式包,标记为显式/依赖项) |
仅限Arch |
包装组织
| 工具 |
描述 |
平台 |
query_file_ownership |
统一的文件包所有权查询(3种模式:文件→包裹,包裹→文件,文件名搜索) |
仅限Arch |
list_package_groups |
列出所有组(base、base-devel等) |
仅限Arch |
list_group_packages |
显示特定组中的包 |
仅限Arch |
系统监测和诊断
| 工具 |
描述 |
平台 |
get_system_info |
系统信息(内核、内存、正常运行时间) |
任何 |
check_disk_space |
带有警告的磁盘使用情况 |
任何 |
get_pacman_cache_stats |
包缓存大小和年龄 |
仅限Arch |
check_failed_services |
查找失败的systemd服务 |
systemd |
get_boot_logs |
检索journalctl启动日志 |
systemd |
check_database_freshness |
检查包数据库同步状态 |
仅限Arch |
交易历史和日志
| 工具 |
描述 |
平台 |
query_package_history |
用于从pacman日志中查询包历史的统一工具(4种查询类型)。示例: query_type='all' 显示最近的交易; query_type='package', package_name='docker' 显示docker的安装/升级时间; query_type='failures' 显示失败的操作; query_type='sync' 显示数据库同步历史记录。 |
仅限拱门 |
新闻与安全检查
| 工具 |
描述 |
平台 |
get_latest_news |
从RSS获取Arch Linux新闻 |
任何 |
check_critical_news |
查找关键新闻(需要人工干预) |
任何 |
get_news_since_last_update |
自上次系统更新以来发布的新闻 |
仅限Arch |
镜像管理
| 工具 |
描述 |
平台 |
optimize_mirrors |
智能镜像管理(4个操作:状态、测试、建议、运行状况)。示例: optimize_mirrors(action='status', auto_test=True) 列出并测试所有镜像; optimize_mirrors(action='suggest', country='US', limit=5) 建议美国前五大镜子; optimize_mirrors(action='health') 检查问题并给出建议。 |
拱形/任意 |
配置管理
| 工具 |
描述 |
平台 |
analyze_pacman_conf |
使用可选焦点解析pacman.conf设置。示例: focus='full' (默认)返回所有设置; focus='ignored_packages' 仅返回忽略的包,并对关键包发出警告; focus='parallel_downloads' 仅返回带有优化建议的并行下载设置。 |
仅限拱门 |
analyze_makepkg_conf |
解析makepkg.conf设置(CFLAGS、MAKEFLAGS、构建配置) |
仅限Arch |
证券分析
| 工具 |
描述 |
平台 |
analyze_pkgbuild_safety |
全面的PKGBUILD分析(50+危险信号) |
任何 |
analyze_package_metadata_risk |
套餐信任评分(投票、维护者、年龄) |
任何 |
提示(引导式工作流)
| 提示 |
目的 |
工作流程 |
troubleshoot_issue |
诊断系统错误 |
提取关键字→ 搜索Wiki→ 情境感知建议 |
audit_aur_package |
安装前安全审计 |
获取元数据→ 分析PKGBUILD→ 安全建议 |
analyze_dependencies |
安装计划 |
检查仓库→ 映射依赖关系→ 建议安装顺序 |
safe_system_update |
安全更新工作流程 |
查看关键新闻→ 验证磁盘空间→ 列表更新→ 检查服务→ 建议 |
安装
先决条件
- Python 3.11+
- 紫外线 (推荐)或pip
快速安装 uvx
配置
Claude/Cursor/任何支持STDIO传输的MCP客户端
{
"mcpServers": {
"arch-linux": {
"command": "uvx",
"args": ["arch-ops-server"]
}
}
}
开放代码:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"arch-linux": {
"type": "local",
"command": ["uvx", "arch-ops-server"]
}
}
}
贡献
非常感谢您的贡献。请随时提交拉取请求或打开问题,帮助每个人做得更好。
贡献指南
许可证
此项目根据您的选择获得双重许可:
您可以根据任一许可证的条款使用此软件。在重新分发或修改此软件时,您可以选择应用哪个许可证。
通过为此项目做出贡献,您同意您的贡献将在两个许可证下获得许可。