Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_archwiki | 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. |
| search_aur | 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. |
| get_official_package_info | 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. |
| check_updates_dry_run | 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. |
| install_package_secure | 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. |
| analyze_pkgbuild_safety | Analyze PKGBUILD content for security issues and dangerous patterns. Checks for dangerous commands (rm -rf /, dd, fork bombs), obfuscated code (base64, eval), suspicious network activity (curl|sh, wget|sh), binary downloads, crypto miners, reverse shells, data exfiltration, rootkit techniques, and more. Returns risk score (0-100) and detailed findings. Use this tool to manually audit AUR packages before installation. |
| analyze_package_metadata_risk | Analyze AUR package metadata for trustworthiness and security indicators. Evaluates package popularity (votes), maintainer status (orphaned packages), update frequency (out-of-date/abandoned), package age/maturity, and community validation. Returns trust score (0-100) with risk factors and trust indicators. Use this alongside PKGBUILD analysis for comprehensive security assessment. |
| remove_package | Remove a package from the system. Supports various removal strategies: basic removal, removal with dependencies, or forced removal. Only works on Arch Linux. Requires sudo access. |
| remove_packages_batch | Remove multiple packages in a single transaction. More efficient than removing packages one by one. Only works on Arch Linux. Requires sudo access. |
| list_orphan_packages | List all orphaned packages (dependencies no longer required by any installed package). Shows package names and total disk space usage. Only works on Arch Linux. |
| remove_orphans | Remove all orphaned packages to free up disk space. Supports dry-run mode to preview changes and package exclusion. Only works on Arch Linux. Requires sudo access. |
| find_package_owner | Find which package owns a specific file on the system. Useful for troubleshooting and understanding file origins. Only works on Arch Linux. |
| list_package_files | List all files owned by a package. Supports optional filtering by pattern. Only works on Arch Linux. |
| search_package_files | Search for files across all packages in repositories. Requires package database sync (pacman -Fy). Only works on Arch Linux. |
| verify_package_integrity | Verify the integrity of installed package files. Detects modified, missing, or corrupted files. Only works on Arch Linux. |
| list_package_groups | List all available package groups (e.g., base, base-devel, gnome). Only works on Arch Linux. |
| list_group_packages | List all packages in a specific group. Only works on Arch Linux. |
| list_explicit_packages | List all packages explicitly installed by the user (not installed as dependencies). Useful for creating backup lists or understanding system composition. Only works on Arch Linux. |
| mark_as_explicit | Mark a package as explicitly installed. Prevents it from being removed as an orphan. Only works on Arch Linux. |
| mark_as_dependency | Mark a package as a dependency. Allows it to be removed as an orphan if no packages depend on it. Only works on Arch Linux. |
| get_system_info | Get comprehensive system information including kernel version, architecture, hostname, uptime, and memory statistics. Works on any system. |
| check_disk_space | Check disk space usage for critical filesystem paths including root, home, var, and pacman cache. Warns when space is low. Works on any system. |
| get_pacman_cache_stats | Analyze pacman package cache statistics including size, package count, and cache age. Only works on Arch Linux. |
| check_failed_services | Check for failed systemd services. Useful for diagnosing system issues. Works on systemd-based systems. |
| get_boot_logs | Retrieve recent boot logs from journalctl. Useful for troubleshooting boot issues. Works on systemd-based systems. |
| get_latest_news | Fetch recent Arch Linux news from RSS feed. Returns title, date, summary, and link for each news item. |
| check_critical_news | Check for critical Arch Linux news requiring manual intervention. Scans recent news for keywords: 'manual intervention', 'action required', 'breaking change', etc. |
| get_news_since_last_update | Get news posted since last pacman update. Parses /var/log/pacman.log for last update timestamp. Only works on Arch Linux. |
| get_transaction_history | Get recent package transactions from pacman log. Shows installed, upgraded, and removed packages. Only works on Arch Linux. |
| find_when_installed | Find when a package was first installed and its upgrade history. Only works on Arch Linux. |
| find_failed_transactions | Find failed package transactions in pacman log. Only works on Arch Linux. |
| get_database_sync_history | Get database synchronization history. Shows when 'pacman -Sy' was run. Only works on Arch Linux. |
| list_active_mirrors | List currently configured mirrors from mirrorlist. Only works on Arch Linux. |
| test_mirror_speed | Test mirror response time. Can test a specific mirror or all active mirrors. Only works on Arch Linux. |
| suggest_fastest_mirrors | Suggest optimal mirrors based on official mirror status from archlinux.org. Filters by country if specified. |
| check_mirrorlist_health | Verify mirror configuration health. Checks for common issues like no active mirrors, outdated mirrorlist, high latency. Only works on Arch Linux. |
| analyze_pacman_conf | Parse and analyze pacman.conf. Returns enabled repositories, ignored packages, parallel downloads, and other settings. Only works on Arch Linux. |
| analyze_makepkg_conf | Parse and analyze makepkg.conf. Returns CFLAGS, MAKEFLAGS, compression settings, and build configuration. Only works on Arch Linux. |
| check_ignored_packages | List packages ignored in updates from pacman.conf. Warns if critical system packages are ignored. Only works on Arch Linux. |
| get_parallel_downloads_setting | Get parallel downloads configuration from pacman.conf and provide recommendations. Only works on Arch Linux. |
| check_database_freshness | Check when package databases were last synchronized. Warns if databases are stale (> 24 hours). Only works on Arch Linux. |
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 |
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 |