A natural language interface for DevOps automation using LLMs and the Model Context Protocol (MCP) to orchestrate Jira, GitHub, and Slack operations.
Model Context Protocol (MCP) is a standardized interface that enables AI models to interact with external tools and services in a consistent way. Key advantages:
- Abstraction: Tools expose their functionality through a uniform protocol, making them easily consumable by AI models
- Composability: Chain multiple tool invocations into complex workflows
- Safety: Built-in validation, rate limiting, and access control
- Extensibility: Easy to add new tools while maintaining the same interface
- Observability: Standard logging and monitoring across all tool interactions
This project demonstrates a complete AI assistant for DevOps automation:
-
Natural Language Understanding
- User submits plain English request
- GPT converts it into a structured plan of tool invocations
- Each step includes tool name, action, arguments, and explanatory comment
-
MCP Execution
- Plan is executed step by step through MCP servers
- Each server handles specific tool (Jira/GitHub/Slack)
- Results are collected with success/failure status
-
Result Summarization
- GPT analyzes execution results
- Generates human-friendly summary
- Highlights key outcomes and any errors
-
Clone and Configure
# Clone repository git clone https://github.com/your-org/mcp-demo cd mcp-demo # Copy and edit environment variables cp backend/app/.env.example backend/app/.env
-
Configure Environment Edit
backend/app/.env:# OpenAI API key for GPT model access OPENAI_API_KEY=your_openai_api_key_here # Jira MCP Server JIRA_MCP_ENDPOINT=https://mcp.example.com/jira JIRA_MCP_TOKEN=your_jira_mcp_token_here # GitHub MCP Server GITHUB_MCP_ENDPOINT=https://mcp.example.com/github GITHUB_MCP_TOKEN=your_github_mcp_token_here # Slack MCP Server SLACK_MCP_ENDPOINT=https://mcp.example.com/slack SLACK_MCP_TOKEN=your_slack_mcp_token_here
-
Run with Docker
docker-compose up --build
-
Access the UI
- Frontend: http://localhost:5173
- Backend API: http://localhost:8000
-
Cross-Tool Status Report
Prompt: "Summarize high-priority Jira issues and merged GitHub PRs; post to #devops." Result: - Fetches high-priority Jira issues - Lists recently merged PRs - Posts formatted summary to Slack -
GitHub Activity Report
Prompt: "List merged PRs since last week." Result: - Retrieves PRs merged in last 7 days - Formats as markdown report -
Automated Task Creation
Prompt: "Create Jira tickets for PRs with TODO comments." Result: - Scans merged code for TODOs - Creates Jira tasks - Notifies team on Slack
See demo_prompts.json for more examples with detailed plans.
-
Natural Language Power
- Show how complex workflows are expressed in plain English
- Highlight plan generation and smart parameter selection
- Demonstrate error handling and recovery
-
Tool Integration
- Explain MCP server architecture
- Show how tools are abstracted and composed
- Discuss security and access control
-
Developer Experience
- Demo the approval workflow for reviewing plans
- Show real-time updates and error reporting
- Highlight the time saved vs manual operations
-
Architecture Benefits
- Explain how MCP enables tool independence
- Discuss scaling and monitoring capabilities
- Show how to add new tools and actions
-
Real-World Impact
- Share metrics on time saved
- Discuss reduction in human error
- Show examples of complex workflows automated
See CONTRIBUTING.md for development setup and guidelines.
This project is licensed under the MIT License - see LICENSE for details.