Track MCP LogoTrack MCP
Track MCP LogoTrack MCP

The world's largest repository of Model Context Protocol servers. Discover, explore, and submit MCP tools.

Product

  • Categories
  • Top MCP
  • New & Updated
  • Submit MCP

Company

  • About

Legal

  • Privacy Policy
  • Terms of Service
  • Cookie Policy

© 2026 TrackMCP. All rights reserved.

Built with ❤️ by Krishna Goyal

    Foreman Mcp Server

    MCP server for Foreman host management and infrastructure automation

    0 stars
    Python
    Updated Oct 6, 2025

    Table of Contents

    • Features
    • Installation
    • From PyPI (Recommended)
    • From Source
    • Configuration
    • Required Permissions
    • Recommended Roles
    • MCP Configuration
    • Available Tools
    • Host Management
    • Host Search Functions
    • Infrastructure Information
    • OS Management
    • Content Management
    • Development
    • Support

    Table of Contents

    • Features
    • Installation
    • From PyPI (Recommended)
    • From Source
    • Configuration
    • Required Permissions
    • Recommended Roles
    • MCP Configuration
    • Available Tools
    • Host Management
    • Host Search Functions
    • Infrastructure Information
    • OS Management
    • Content Management
    • Development
    • Support

    Documentation

    Foreman MCP Server

    Python 3.10+

    License: MIT

    Pylint

    Safety Security Scan

    Dependency Security Check

    MCP server for Foreman host management and infrastructure automation.

    Features

    • List and search hosts from Foreman
    • Get detailed host information
    • Search by location, OS, and environment
    • Generic configuration via environment variables

    Installation

    From PyPI (Recommended)

    bash
    pip install foreman-mcp-server

    From Source

    bash
    git clone https://github.com/rorymcmahon/foreman-mcp-server.git
    cd foreman-mcp-server
    pip install -e .
    
    ## Configuration
    
    Set the following environment variables:
    
    - `FOREMAN_URL`: Base URL of your Foreman instance (e.g., `https://foreman.example.com`)
    - `FOREMAN_USERNAME`: Foreman username
    - `FOREMAN_PASSWORD`: **Personal Access Token** (not your web login password - create this in User Administration → Personal Access Tokens)
    - `FOREMAN_VERIFY_SSL`: Whether to verify SSL certificates (default: `true`)
    
    ### Required Permissions
    
    The user account needs the following minimum permissions to use all MCP server tools:
    
    | Resource Type | Permission | Purpose |
    |---------------|------------|---------|
    | Host | `view_hosts` | List and search hosts, get host details and status |
    | Organization | `view_organizations` | List organizations |
    | Location | `view_locations` | List locations |
    | Hostgroup | `view_hostgroups` | List and search by hostgroups |
    | Subnet | `view_subnets` | List subnets and get subnet details |
    | Domain | `view_domains` | List domains and get domain details |
    | SmartProxy | `view_smart_proxies` | List smart proxies and get proxy details |
    
    ### Recommended Roles
    
    Instead of assigning individual permissions, you can use these built-in roles:
    
    | Role | Description | Recommended For |
    |------|-------------|-----------------|
    | **Viewer** | Read-only access to most Foreman resources | General monitoring and inventory queries |
    | **Ansible Tower Inventory Reader** | Specific permissions for inventory access | Automated systems integration |
    | **Organization admin** | Full access within assigned organizations | Organization-specific administration |
    
    **Note**: The "Viewer" role provides the most appropriate permissions for this MCP server's read-only operations.
    
    ## MCP Configuration
    
    Add to your MCP client configuration:

    {

    "foreman-mcp-server": {

    "command": "foreman-mcp-server",

    "env": {

    "FOREMAN_URL": "https://foreman.example.com",

    "FOREMAN_USERNAME": "your-username",

    "FOREMAN_PASSWORD": "your-password",

    "FOREMAN_VERIFY_SSL": "true"

    }

    }

    }

    code
    ## Available Tools
    
    ### Host Management
    - `list_hosts(search, per_page, page)` - List hosts with optional search
    - `get_host(host_id)` - Get detailed host information
    - `get_host_status(host_id)` - Get status information for a specific host
    
    ### Host Search Functions
    - `search_hosts_by_location(location, per_page)` - Search by location
    - `search_hosts_by_os(os_name, per_page)` - Search by operating system
    - `search_hosts_by_environment(environment, per_page)` - Search by environment
    - `search_hosts_by_hostgroup(hostgroup, per_page)` - Search by hostgroup
    - `search_hosts_by_fact(fact_name, fact_value, per_page)` - Search by custom facts
    
    ### Infrastructure Information
    - `list_organizations(per_page)` - List all organizations
    - `list_locations(per_page)` - List all locations
    - `list_hostgroups(per_page)` - List all hostgroups
    - `list_subnets(per_page)` - List all subnets
    - `get_subnet(subnet_id)` - Get detailed subnet information
    - `list_domains(per_page)` - List all domains
    - `get_domain(domain_id)` - Get detailed domain information
    - `list_smart_proxies(per_page)` - List all smart proxies
    - `get_smart_proxy(proxy_id)` - Get detailed smart proxy information
    
    ### OS Management
    - `list_operatingsystems(per_page)` - List all operating systems
    - `get_operatingsystem(os_id)` - Get detailed operating system information
    - `list_architectures(per_page)` - List all architectures
    - `get_architecture(arch_id)` - Get detailed architecture information
    - `list_media(per_page)` - List all installation media
    - `get_media(media_id)` - Get detailed installation media information
    
    ### Content Management
    - `list_content_views(per_page)` - List all content views
    - `get_content_view(cv_id)` - Get detailed content view information
    - `list_repositories(per_page)` - List all repositories
    - `get_repository(repo_id)` - Get detailed repository information
    - `list_lifecycle_environments(per_page)` - List all lifecycle environments
    - `get_lifecycle_environment(env_id)` - Get detailed lifecycle environment information
    
    ## Development

    pip install -e ".[dev]"

    pytest

    code
    ## Support
    
    - [GitHub Issues](https://github.com/rorymcmahon/foreman-mcp-server/issues)
    - [Changelog](CHANGELOG.md)

    Similar MCP

    Based on tags & features

    • CH

      Chuk Mcp Linkedin

      Python00
    • PU

      Pursuit Mcp

      Python00
    • HE

      Hello Mcp

      Python00
    • GR

      Gradle Mcp

      Python00

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k
    View All MCP Servers

    Similar MCP

    Based on tags & features

    • CH

      Chuk Mcp Linkedin

      Python00
    • PU

      Pursuit Mcp

      Python00
    • HE

      Hello Mcp

      Python00
    • GR

      Gradle Mcp

      Python00

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k