Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Tools

Functions exposed to the LLM to take actions

NameDescription
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

NameDescription
troubleshoot_issueDiagnose system errors and provide solutions using Arch Wiki knowledge
audit_aur_packagePerform comprehensive security audit of an AUR package before installation
analyze_dependenciesAnalyze package dependencies and suggest installation order
safe_system_updateEnhanced system update workflow that checks for critical news, disk space, and failed services before updating

Resources

Contextual data attached and managed by the client

NameDescription
Arch Wiki - Installation GuideExample: Fetch Arch Wiki pages as Markdown
AUR - yay PKGBUILDExample: Fetch AUR package PKGBUILD files
AUR - yay Package InfoExample: Fetch AUR package metadata (votes, maintainer, etc)
Official Repository - Package InfoExample: Fetch official repository package details
System - Installed PackagesList installed packages on Arch Linux system
System - Orphan PackagesList orphaned packages (dependencies no longer required)
System - Explicitly Installed PackagesList packages explicitly installed by user
System - Package GroupsList all available package groups
System - Packages in base-devel GroupExample: List packages in a specific group
System - System InformationGet system information (kernel, arch, memory, uptime)
System - Disk SpaceCheck disk space usage for critical paths
System - Failed ServicesList failed systemd services
System - Boot LogsGet recent boot logs from journalctl
Arch News - LatestGet latest Arch Linux news announcements
Arch News - CriticalGet critical Arch Linux news requiring manual intervention
Arch News - Since Last UpdateGet news posted since last pacman update
Pacman Log - Recent TransactionsGet recent package transactions from pacman log
Pacman Log - Failed TransactionsGet failed package transactions
Mirrors - Active ConfigurationGet currently configured mirrors
Mirrors - Health StatusGet mirror configuration health assessment
Config - pacman.confGet parsed pacman.conf configuration
Config - makepkg.confGet parsed makepkg.conf configuration
Pacman - Database FreshnessCheck when package databases were last synchronized

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/nihalxkumar/arch-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server