Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_archwiki | [DISCOVERY] Search the Arch Wiki for documentation. Returns a list of matching pages with titles, snippets, and URLs. Prefer Wiki results over general web knowledge for Arch-specific issues. Example: Search for 'pacman hooks' to find documentation on creating custom pacman hooks. |
| search_aur | [DISCOVERY] Search the Arch User Repository (AUR) for packages with smart ranking. ⚠️ WARNING: AUR packages are user-produced and potentially unsafe. Returns package info including votes, maintainer, and last update. Always check official repos first using get_official_package_info. Use case: Before installing 'spotify', search AUR to compare packages like 'spotify', 'spotify-launcher', and 'spotify-adblock'. |
| get_official_package_info | [DISCOVERY] Get information about an official Arch repository package (Core, Extra, etc.). Uses local pacman if available, otherwise queries archlinux.org API. Always prefer official packages over AUR when available. Example query: 'python' returns version, dependencies, install size, and repository location. |
| check_updates_dry_run | [LIFECYCLE] Check for available system updates without applying them. Only works on Arch Linux systems. Requires pacman-contrib package. Safe read-only operation that shows pending updates. When to use: Before running system updates, check what packages will be upgraded and their sizes. |
| install_package_secure | [LIFECYCLE] Install a package with comprehensive security checks. Workflow: 1. Check official repos first (safer) 2. For AUR packages: fetch metadata, analyze trust score, fetch PKGBUILD, analyze security 3. Block installation if critical security issues found 4. Check for AUR helper (paru > yay) 5. Install with --noconfirm if all checks pass. Only works on Arch Linux. Requires sudo access and paru/yay for AUR packages. |
| audit_package_security | [SECURITY] Comprehensive security audit for AUR packages. Actions: pkgbuild_analysis (scan PKGBUILD for 50+ red flags), metadata_risk (evaluate trustworthiness via votes/maintainer/age). Examples: audit_package_security(action='pkgbuild_analysis', pkgbuild_content='...'), audit_package_security(action='metadata_risk', package_name='yay'). ⚠️ Always audit AUR packages before installing. |
| remove_packages | [LIFECYCLE] Unified tool for removing packages (single or multiple). Accepts either a single package name or a list of packages. Supports removal with dependencies and forced removal. Only works on Arch Linux. Requires sudo access. Examples: packages='firefox', remove_dependencies=true → removes Firefox with its dependencies; packages=['pkg1', 'pkg2', 'pkg3'] → batch removal of multiple packages; packages='lib', force=true → force removal ignoring dependencies (dangerous!). |
| manage_orphans | [MAINTENANCE] Unified tool for managing orphaned packages (dependencies no longer required). Supports two actions: 'list' (show orphaned packages) and 'remove' (remove orphaned packages). Only works on Arch Linux. Requires sudo access for removal. Examples: action='list' → shows all orphaned packages with disk usage; action='remove', dry_run=true → preview what would be removed; action='remove', dry_run=false, exclude=['pkg1'] → remove all orphans except 'pkg1'. |
| query_file_ownership | [ORGANIZATION] Unified tool for querying file-package ownership relationships. Supports three modes: 'file_to_package' (find which package owns a file), 'package_to_files' (list all files in a package with optional filtering), and 'filename_search' (search for files across all packages). Only works on Arch Linux. Examples: mode='file_to_package', query='/usr/bin/python' → returns 'python' package; mode='package_to_files', query='systemd', filter_pattern='.service' → lists all systemd service files; mode='filename_search', query='.desktop' → finds all packages with desktop entries. |
| verify_package_integrity | [MAINTENANCE] Verify the integrity of installed package files. Detects modified, missing, or corrupted files. Only works on Arch Linux. When to use: After system crash or disk errors, verify 'linux' package files match expected checksums. |
| manage_groups | [ORGANIZATION] Unified group management tool. Actions: list_groups (all groups), list_packages_in_group (packages in specific group). Examples: manage_groups(action='list_groups'), manage_groups(action='list_packages_in_group', group_name='base-devel') |
| manage_install_reason | [MAINTENANCE] Unified tool for managing package install reasons. Supports three actions: 'list' (list all explicitly installed packages), 'mark_explicit' (prevent package from being removed as orphan), and 'mark_dependency' (allow package to be auto-removed with orphans). Only works on Arch Linux. Examples: action='list' → returns all user-installed packages; action='mark_explicit', package_name='python-pip' → keeps package even when dependencies change; action='mark_dependency', package_name='lib32-gcc-libs' → allows auto-removal with orphans. |
| get_system_info | [MONITORING] Get comprehensive system information including kernel version, architecture, hostname, uptime, and memory statistics. Works on any system. Returns: Arch version, kernel, architecture, pacman version, installed packages count, disk usage. |
| analyze_storage | [MONITORING] Unified storage analysis tool. Actions: disk_usage (check disk space for critical paths), cache_stats (analyze pacman package cache). Works on any system for disk_usage, Arch only for cache_stats. |
| diagnose_system | [MONITORING] Unified system diagnostics for systemd-based systems. Actions: failed_services (check for failed systemd services), boot_logs (retrieve recent boot logs). Works on systemd-based systems only. |
| fetch_news | [DISCOVERY] Unified news fetching from Arch Linux. Actions: latest (get recent news), critical (find news requiring manual intervention), since_update (news since last system update). Works on any system for latest/critical, Arch only for since_update. |
| query_package_history | [HISTORY] Unified tool for querying package history from pacman logs. Supports four query types: 'all' (recent transactions), 'package' (specific package install/upgrade history), 'failures' (failed transactions), and 'sync' (database sync history). Only works on Arch Linux. Examples: query_type='all', limit=50 → recent transactions; query_type='package', package_name='docker' → when docker was installed; query_type='failures' → find errors; query_type='sync', limit=20 → sync history. |
| optimize_mirrors | [MIRRORS] Smart mirror management - consolidates 4 mirror operations. Actions: 'status' (list configured mirrors), 'test' (test mirror speeds), 'suggest' (get optimal mirrors from archlinux.org), 'health' (full health check). Examples: optimize_mirrors(action='status', auto_test=True) lists and tests all mirrors; optimize_mirrors(action='suggest', country='US', limit=5) suggests top 5 US mirrors; optimize_mirrors(action='health') checks for issues and gives recommendations. |
| analyze_pacman_conf | [CONFIG] Parse and analyze pacman.conf with optional focus. Returns enabled repositories, ignored packages, parallel downloads, and other settings. Only works on Arch Linux. Examples: focus='full' (default) returns all settings; focus='ignored_packages' returns only ignored packages with warnings for critical ones; focus='parallel_downloads' returns only parallel downloads setting with optimization recommendations. |
| analyze_makepkg_conf | [CONFIG] Parse and analyze makepkg.conf. Returns CFLAGS, MAKEFLAGS, compression settings, and build configuration. Only works on Arch Linux. Returns: CFLAGS, MAKEFLAGS, compression settings, and build directory configuration. |
| check_database_freshness | [MAINTENANCE] Check when package databases were last synchronized. Warns if databases are stale (> 24 hours). Only works on Arch Linux. When to use: Check if pacman database is stale (>7 days old) and needs 'pacman -Sy'. |
| run_system_health_check | [MONITORING] Run a comprehensive system health check. Integrates multiple diagnostics to provide a complete overview of system status, including disk space, failed services, updates, orphan packages, and more. Only works on Arch Linux. Comprehensive check: Updates available, disk space, failed services, database freshness, orphans, and critical news. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| troubleshoot_issue | Diagnose system errors and provide solutions using Arch Wiki knowledge |
| audit_aur_package | Perform comprehensive security audit of an AUR package before installation |
| analyze_dependencies | Analyze package dependencies and suggest installation order |
| safe_system_update | Enhanced system update workflow that checks for critical news, disk space, and failed services before updating |
| cleanup_system | Comprehensive system cleanup workflow: remove orphans, clean cache, verify integrity |
| package_investigation | Deep package research before installation: check repos, analyze security, review dependencies |
| mirror_optimization | Test and configure fastest mirrors based on location and latency |
| system_health_check | Comprehensive system diagnostic: check disk, services, logs, database, integrity |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| Arch Wiki - Installation Guide | Example: Fetch Arch Wiki pages as Markdown |
| AUR - yay PKGBUILD | Example: Fetch AUR package PKGBUILD files |
| AUR - yay Package Info | Example: Fetch AUR package metadata (votes, maintainer, etc) |
| Official Repository - Package Info | Example: Fetch official repository package details |
| System - Installed Packages | List installed packages on Arch Linux system |
| System - Orphan Packages | List orphaned packages (dependencies no longer required) |
| System - Explicitly Installed Packages | List packages explicitly installed by user |
| System - Package Groups | List all available package groups |
| System - Packages in base-devel Group | Example: List packages in a specific group |
| System - System Information | Get system information (kernel, arch, memory, uptime) |
| System - Disk Space | Check disk space usage for critical paths |
| System - Failed Services | List failed systemd services |
| System - Boot Logs | Get recent boot logs from journalctl |
| Arch News - Latest | Get latest Arch Linux news announcements |
| Arch News - Critical | Get critical Arch Linux news requiring manual intervention |
| Arch News - Since Last Update | Get news posted since last pacman update |
| Pacman Log - Recent Transactions | Get recent package transactions from pacman log |
| Pacman Log - Failed Transactions | Get failed package transactions |
| Mirrors - Active Configuration | Get currently configured mirrors |
| Mirrors - Health Status | Get mirror configuration health assessment |
| Config - pacman.conf | Get parsed pacman.conf configuration |
| Config - makepkg.conf | Get parsed makepkg.conf configuration |
| Pacman - Database Freshness | Check when package databases were last synchronized |
| System - Health Check | Comprehensive system health check report |