服务器开发平台

一个集成了AI代理、MCP协议支持和全面自动化工具的服务器开发和生产平台,适用于开发、基础设施管理和自动化任务。

  • by Fadil369
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Fadil369/advanced-server-platform

使用说明

高级服务器平台

一个功能强大、完全集成的开发和生产服务器平台,具有AI代理、MCP协议支持和全面的自动化工具。

🚀 特性

  • AI代理管理:用于开发、基础设施、监控、安全和自动化的多类型代理
  • MCP协议集成:具有可扩展服务器架构的完整模型上下文协议支持
  • 高级工具注册表:全面的工具系统,包含满足所有发展需求的类别
  • 基础设施即代码:基于Terraform的AWS基础设施部署
  • 监测和可观察性:Prometheus、Grafana和自定义指标集合
  • 容器编排:Docker Compose用于本地开发,ECS用于生产
  • 安全第一:内置安全扫描、漏洞评估和最佳实践
  • 全自动化:工作流自动化、CI/CD集成和智能任务管理

🏗️ 建筑

┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   Web Client    │    │   Mobile App    │    │   CLI Tools     │
└─────────┬───────┘    └─────────┬───────┘    └─────────┬───────┘
          │                      │                      │
          └──────────────────────┼──────────────────────┘
                                 │
                    ┌─────────────┴─────────────┐
                    │    Load Balancer (ALB)    │
                    └─────────────┬─────────────┘
                                  │
                    ┌─────────────┴─────────────┐
                    │   FastAPI Application     │
                    │   - Agent Manager         │
                    │   - MCP Client           │
                    │   - Tool Registry        │
                    └─────────────┬─────────────┘
                                  │
        ┌─────────────────────────┼─────────────────────────┐
        │                         │                         │
┌───────┴────────┐    ┌──────────┴──────────┐    ┌─────────┴────────┐
│   PostgreSQL   │    │   Redis Cache       │    │   MCP Servers    │
│   Database     │    │   Session Store     │    │   - Filesystem   │
└────────────────┘    └─────────────────────┘    │   - AWS Tools    │
                                                 │   - Code Analysis│
                                                 │   - Monitoring   │
                                                 └──────────────────┘

🛠️ 先决条件

  • Docker&Docker编写
  • 地形>=1.0
  • AWS CLI已配置
  • Node.js>=18(适用于MCP服务器)
  • Python>=3.11

⚡ 快速开始

  1. 克隆和设置

    git clone <repository-url>
    cd advanced-server
    
  2. 部署开发环境

    ./deploy.sh development
    
  3. 访问服务

    • 主要应用:http://localhost:8000
    • API文件:http://localhost:8000/docs
    • Grafana仪表板:http://localhost:3000(管理员/管理员)
    • 普罗米修斯:http://localhost:9090

🔧 配置

环境变量

创建一个 .env 文件:

ENVIRONMENT=development
AWS_REGION=us-east-1
DATABASE_URL=postgresql://admin:password@postgres:5432/serverdb
REDIS_URL=redis://redis:6379
SECRET_KEY=your-secret-key
MAX_AGENTS=100
LOG_LEVEL=INFO

AWS配置

对于生产部署:

aws configure
# Set your AWS credentials and region

🤖 代理系统

代理类型

  1. 开发代理

    • 代码分析和格式化
    • 测试执行和覆盖范围
    • CI/CD管道管理
  2. 基础设施代理

    • 资源供应
    • 自动缩放管理
    • 成本优化
  3. 监控代理

    • 指标收集
    • 警报管理
    • 性能分析
  4. 安全代理

    • 漏洞扫描
    • 合规性检查
    • 访问控制管理
  5. 自动化代理

    • 工作流编排
    • 任务调度
    • 过程自动化

使用代理

# WebSocket connection to agent
ws = websocket.connect("ws://localhost:8000/ws/agent/dev-agent-001")

# Send task to agent
task = {
    "type": "code_analysis",
    "code": "def hello(): return 'world'",
    "language": "python"
}
ws.send(json.dumps(task))

# Receive response
response = json.loads(ws.recv())

🔌 MCP集成

可用的MCP服务器

  1. 文件系统服务器 (端口8001)

    • 文件 操作
    • 目录管理
    • 内容搜索
  2. AWS工具服务器 (端口8002)

    • AWS资源管理
    • 服务部署
    • 成本监控
  3. 代码分析服务器 (端口8003)

    • 静态分析
    • 安全扫描
    • 质量指标
  4. 监控服务器 (端口8004)

    • 指标收集
    • 警报配置
    • 仪表板管理

使用MCP工具

# List available tools
curl http://localhost:8000/api/tools

# Execute a tool
curl -X POST http://localhost:8000/api/tools/code_format/execute \
  -H "Content-Type: application/json" \
  -d '{"code": "def hello():return \"world\"", "language": "python"}'

🚀 部署

发展

./deploy.sh development

生产

./deploy.sh production

可用命令

./deploy.sh deploy     # Full deployment
./deploy.sh stop       # Stop all services
./deploy.sh restart    # Restart services
./deploy.sh logs       # View logs
./deploy.sh clean      # Clean up resources

📊 监控

可用指标

  • 应用程序性能指标
  • 基础设施资源使用情况
  • 代理执行统计
  • 工具使用分析
  • 安全扫描结果

Grafana仪表板

预配置的仪表板用于:

  • 系统概述
  • 代理业绩
  • 工具使用
  • 信息系统安全度量
  • 基础设施健康

🔒 安全

内置安全功能

  • 基于JWT的身份验证
  • 基于角色的访问控制
  • 自动漏洞扫描
  • 安全的秘密管理
  • 网络安全组
  • 静态加密数据

安全最佳实践

  • 定期安全扫描
  • 依赖性漏洞检查
  • 访问日志和监控
  • 安全通信(TLS/SSL)
  • 最小权限原则

🧪 测试

# Run all tests
docker-compose exec app pytest

# Run specific test category
docker-compose exec app pytest tests/agents/
docker-compose exec app pytest tests/tools/
docker-compose exec app pytest tests/mcp/

# Run with coverage
docker-compose exec app pytest --cov=server

📚 API文档

交互式API文档可在以下网址获取:

  • Swagger用户界面:http://localhost:8000/docs
  • ReDoc :http://localhost:8000/redoc

关键终点

  • GET /api/agents -列出所有代理
  • POST /api/agents/{id}/execute -执行代理任务
  • GET /api/tools -列出可用工具
  • POST /api/tools/{name}/execute -执行工具
  • GET /api/mcp/servers -列出MCP服务器
  • GET /api/metrics -获取系统指标

🔧 定制

添加自定义工具

  1. 在中创建工具功能 server/tools/custom_tools.py
  2. 在ToolRegistry注册
  3. 重新启动应用程序

添加MCP服务器

  1. 在中创建服务器 mcp-servers/ 目录
  2. 增添 docker-compose.yml
  3. 更新MCP客户端配置

海关代理

  1. 在中扩展代理类 server/agents/
  2. 向AgentManager注册
  3. 定义功能和工具

🤝 贡献

  1. 分叉存储库
  2. 创建特征分支
  3. 添加新功能的测试
  4. 确保所有测试通过
  5. 提交拉取请求

📄 许可证

MIT许可证-有关详细信息,请参阅许可证文件

🆘 支持

  • 文档: /docs
  • 问题:GitHub问题
  • 讨论:GitHub讨论
  • 电子邮件:support@example.com

内置于❤️ 面向追求卓越的开发人员

高级服务器平台