The MCP SysOperator server enables AI assistants to manage infrastructure as code through Ansible, Terraform, and AWS integrations.
- Ansible Operations: Run playbooks, list inventory, check syntax, list tasks, execute ad-hoc commands, and encrypt/decrypt sensitive data with Ansible Vault
- Terraform Support: Execute commands like
init
,plan
,apply
,destroy
, validate configurations, and manage workspaces - AWS Management: Control resources across EC2, S3, VPC, CloudFormation, IAM, RDS, Route53, ELB, Lambda, and more
- LocalStack Integration: Test AWS operations locally without real credentials
- Dynamic Inventory: Generate AWS resource inventories for Ansible
Allows execution of Ansible playbooks with parameters, inventory management, syntax validation, and task previews for infrastructure automation
Supports running on Linux systems with configuration file integration for the Claude app
Supports running on macOS systems with configuration file integration for the Claude app
Utilizes Node.js as the runtime environment for the MCP server operations
Enables execution of Terraform commands (init, plan, apply, destroy, output) with variables support for infrastructure as code deployment and management
Provides integration with Ansible Vault for handling encrypted content in playbooks and inventory files
MCP SysOperator
A Model Context Protocol (MCP) server for Infrastructure as Code operations. This server allows AI assistants to interact with Ansible and Terraform, execute playbooks and Terraform plans, manage cloud resources, and perform other infrastructure operations directly.
(Project previously known as mcp-ansible)
Demo Projects
All code in demos generated using Claude 3.7 Sonnet (via OpenRouter), Cline, and SysOperator
- AWS LAMP Stack - All Ansible code to deploy example LAMP stack in AWS
- AWS Terraform LAMP - Terraform and Ansible code to reply a LAMP stack
Features
- Run Ansible Playbooks: Execute Ansible playbooks with support for parameters like inventory, extra vars, tags, and limits
- List Inventory: View hosts and groups from an Ansible inventory file
- Check Syntax: Validate Ansible playbook syntax without execution
- List Tasks: Preview tasks that would be executed by a playbook
- Access Default Inventory: Access the default Ansible inventory file via resource API
- AWS Integration: Manage AWS resources (EC2, S3, VPC, CloudFormation, etc.)
- Terraform Support: Execute Terraform commands (init, plan, apply, destroy, output, etc.)
- tflocal Integration: Test Terraform configurations with LocalStack for local cloud development
- LocalStack Support: Test AWS operations locally using LocalStack without real AWS credentials
Requirements
- Node.js 18 or higher
- npm or yarn
- Ansible installed and in PATH
- @modelcontextprotocol/sdk (installed automatically)
- For AWS operations: AWS CLI and valid credentials
- For LocalStack: LocalStack installed and running, awslocal CLI
Installation
1. Clone the repository
2. Install dependencies
3. Build the server
4. Configure MCP settings
Add the Ansible MCP server to your MCP settings configuration file.
For VSCode with Claude extension:
- Edit the file at
~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
For Claude Desktop app:
- macOS: Edit
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows: Edit
%APPDATA%\Claude\claude_desktop_config.json
- Linux: Edit
~/.config/Claude/claude_desktop_config.json
Add the following to the mcpServers
section:
Make sure to replace /absolute/path/to/mcp-sysoperator
with the actual path to your installation.
Usage Examples
Once installed and configured, the MCP server provides the following tools to the AI assistant:
1. Run a Playbook
2. List Inventory
3. Check Playbook Syntax
4. List Tasks in a Playbook
5. Access Default Inventory Resource
6. AWS S3 Operations
7. Terraform Init and Plan
8. Terraform Apply
9. Terraform with LocalStack (tflocal)
LocalStack Integration
This project includes integration with LocalStack for testing AWS operations locally without real AWS credentials. The LocalStack integration allows you to:
- Test Ansible playbooks that use AWS services locally
- Develop and test AWS operations without incurring AWS costs
- Run tests without requiring real AWS credentials
- Validate your infrastructure code before deploying to real AWS
Using LocalStack
See the LocalStack README for detailed instructions on using the LocalStack integration.
Quick start:
Development
Project Structure
Adding New Features
To add new capabilities to the MCP server:
- Modify
src/ansible-mcp-server/index.ts
(future:src/sysoperator/index.ts
) - Add your new tool in the
setupToolHandlers
method - Implement a handler function for your tool in the appropriate operations file
- Add the schema definition in
common/types.ts
- Rebuild with
npm run build
⚠️ Disclaimer
SysOperator is currently in active development and undergoing extensive testing. It is not recommended for use in production environments at this time. The software may experience breaking changes, incomplete features, or unexpected behavior.
Use at your own risk.
License
MIT License - See LICENSE for details
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
A Model Context Protocol server enabling AI assistants to directly interact with infrastructure tools like Ansible and Terraform for executing playbooks, managing cloud resources, and performing other infrastructure operations.
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI assistants to interact with Azure DevOps resources including projects, work items, repositories, pull requests, branches, and pipelines through a standardized protocol.Last updated -15786156TypeScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that exposes Cloudinary Upload & Admin API methods as tools by AI assistants. This integration allows AI systems to trigger and interact with your Cloudinary cloud.Last updated -5506JavaScriptMIT License
- -securityFlicense-qualityA Model Context Protocol server that provides persistent task management capabilities for AI assistants, allowing them to create, update, and track tasks beyond their usual context limitations.Last updated -1TypeScript
- -securityFlicense-qualityA comprehensive Model Context Protocol server implementation that enables AI assistants to interact with file systems, databases, GitHub repositories, web resources, and system tools while maintaining security and control.Last updated -16TypeScript