Skip to content
reaatechREAATECH

Files · AWS Bedrock MCP Server for Small Business DevOps Runbooks

30 (0 binary, 366.2 kB total)attempt 1

README.md·2598 B·markdown
markdown
# AWS Bedrock MCP Server for Small Business DevOps Runbooks
 
An MCP server that exposes AWS Bedrock-powered runbook automation to any AI assistant, giving SMBs self-healing infrastructure without a dedicated DevOps team.
 
Small businesses can't afford 24/7 DevOps expertise. Their AI assistants have no secure, structured way to diagnose incidents, trigger rollbacks, or query service health -- every minor outage becomes a panic call to an expensive contractor. This recipe builds a lightweight MCP server that any AI assistant (Claude Desktop, ChatGPT, etc.) can connect to via the Model Context Protocol. The REAA packages agent-runbook-mcp, agent-runbook-health-checks, agent-runbook-incident, agent-runbook-service-map, and agent-mesh-mcp-server form the entire tool surface: health-check probes, incident triage flows, service dependency maps, and safe rollback commands. The custom glue layer wires these tools to AWS Bedrock models for interpreting runbooks and generating remediation steps, all exposed as typed MCP tools.
 
## Prerequisites
 
- Node.js >= 22
- pnpm 10.x
- AWS credentials with Bedrock access
 
## Installation
 
```bash
pnpm install
pnpm build
```
 
## Usage
 
Start the server:
 
```bash
pnpm dev
```
 
The server listens on port 3000 by default (configurable via `PORT` env var).
 
### MCP Tools
 
The server exposes four tools via JSON-RPC 2.0 over HTTP:
 
| Tool | Description |
|------|-------------|
| `health_check` | Probe configured services via REAA health-check analysis |
| `incident_triage` | Trigger incident triage with severity-based workflows |
| `rollback_service` | Execute safe rollback commands with platform-specific procedures |
| `service_map` | Generate service dependency maps with critical path analysis |
 
### Example: List Tools
 
```bash
curl -X POST http://localhost:3000/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/list"
  }'
```
 
Expected response:
 
```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "tools": [
      { "name": "health_check", "description": "Probe configured services for health", "inputSchema": { ... } },
      { "name": "incident_triage", "description": "Trigger incident triage", "inputSchema": { ... } },
      { "name": "rollback_service", "description": "Execute safe rollback", "inputSchema": { ... } },
      { "name": "service_map", "description": "Generate service dependency map", "inputSchema": { ... } }
    ]
  }
}
```
 
## Configuration
 
All configuration is via environment variables. See `.env.example` for a complete list.
 
## License
 
MIT