什么是 AionMCP?
可根据 OpenAPI、GraphQL 与 AsyncAPI 规范动态生成 API 工具的生成器。
README
AionMCP - Autonomous Go MCP Server
<!-- AUTO-GENERATED BADGES -->
AionMCP is an autonomous Go-based Model Context Protocol (MCP) server that dynamically imports OpenAPI, GraphQL, and AsyncAPI specifications and exposes them as tools to agents. It features self-learning capabilities, context-awareness, and autonomous documentation using Clean/Hexagonal architecture.
🌟 Key Differentiators
- Multi-Protocol Support: OpenAPI, GraphQL, and AsyncAPI specifications
- Autonomous Learning: Self-improving system that learns from execution patterns
- Dynamic Runtime: Hot-reloadable tools without service restart
- Clean Architecture: Maintainable, testable, and extensible design
- Auto-Documentation: Self-updating documentation and insights
📊 Project Status
<!-- AUTO-GENERATED STATUS -->Current Branch: main
Latest Commit: f4f41db
System Health: 99/100 (Excellent)
Active Tools: 3
Commits (7 days): 17
Status updated automatically
<!-- END AUTO-GENERATED STATUS -->✨ Features
📦 What's Included
aionmcp/
├── bin/aionmcp-server # Main executable
├── cmd/server/ # Server entry point
├── internal/
│ ├── core/ # HTTP/gRPC servers & tool registry
│ ├── selflearn/ # Learning engine & BoltDB storage
│ └── autodocs/ # Documentation generation
├── pkg/
│ ├── importer/ # OpenAPI/GraphQL/AsyncAPI parsers
│ ├── agent/ # Agent registration API
│ └── feedback/ # Feedback collection
├── vscode-extension/ # VS Code extension
├── docs/ # Comprehensive documentation
├── examples/specs/ # Example API specifications
│ ├── petstore.yaml # OpenAPI 3.0 example
│ ├── blog.graphql # GraphQL example
│ └── user-events.yaml # AsyncAPI example
└── go.mod # Go dependencies
🚀 Quick Start
# Clone the repository
git clone https://github.com/kiransth77/aionmcp.git
cd aionmcp
# Build the server
go build -o bin/aionmcp cmd/server/main.go
# Run with default configuration
./bin/aionmcp
The server will start on http://localhost:8080 with learning enabled.
🏗️ Architecture
AionMCP follows Clean/Hexagonal Architecture principles:
┌─────────────────────────────────────────────────────────┐
│ Adapters Layer │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ HTTP │ │ gRPC │ │ Plugin │ │
│ │ Interface │ │ Interface │ │ Interface │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────┐
│ Core Layer │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ Tool │ │ Learning │ │ Auto │ │
│ │ Registry │ │ Engine │ │ Docs │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────┐
│ Infrastructure Layer │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ Storage │ │ Metrics │ │ Config │ │
│ │ (BoltDB) │ │(Prometheus) │ │ (Viper) │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────┘
📈 Recent Activity
<!-- AUTO-GENERATED ACTIVITY -->Recent Commits
f4f41db9fix: clean up TOON package formatting and remove duplicate package declaration (0h ago)8b97b173fix: update go-ci.yml to use Go 1.25 to match go.mod requirement (0h ago)ebeeee28fix: remove redundant newline in fmt.Println to pass linting (0h ago)a91eb5f4feat: add TOON (Token-Oriented Object Notation) for LLM context optimization (0h ago)bd39bb10fix: update Dockerfile Go version to 1.25 (0h ago)
Active Insights
📊 Total insights: 2
Activity updated automatically
<!-- END AUTO-GENERATED ACTIVITY -->⚡ Performance Statistics
<!-- AUTO-GENERATED PERFORMANCE -->| Metric | Value | Status |
|---|---|---|
| Success Rate | 97.0% | 🟢 Excellent |
| Avg Latency | 250.0ms | 🟡 Good |
| Total Executions | 42 | 📊 Tracking |
| Active Tools | 3 | 🔧 Running |
Statistics updated in real-time
<!-- END AUTO-GENERATED PERFORMANCE -->📦 Installation
Prerequisites
- Go 1.21 or higher
- Git
From Source
git clone https://github.com/kiransth77/aionmcp.git
cd aionmcp
go mod download
go build -o bin/aionmcp cmd/server/main.go
📚 Usage
Basic Usage
# Start the server
./bin/aionmcp
# With custom configuration
./bin/aionmcp --config config.yaml
# Enable debug logging
AIONMCP_LOG_LEVEL=debug ./bin/aionmcp
API Endpoints
GET /api/v1/tools- List available toolsPOST /api/v1/tools/{tool}/execute- Execute a toolGET /api/v1/learning/stats- Learning statisticsGET /api/v1/learning/insights- System insights
🛠️ Development
Access: http://localhost:8080
### Docker
```bash
docker run -p 8080:8080 aionmcp:latest
Cloud (AWS/GCP/Azure)
Deploy the binary to your cloud provider, access via public URL.
Embedded
import "github.com/aionmcp/aionmcp/internal/core"
server := core.NewServer(logger)
server.Start()
🤝 Contributing
Active Insights
📊 Total insights: 2
Activity updated automatically
<!-- END AUTO-GENERATED ACTIVITY -->📄 License
📄 License
README last updated: 2025-11-27 22:47:18 AEST
This README is automatically updated with current project status and metrics.
常见问题
AionMCP 是什么?
可根据 OpenAPI、GraphQL 与 AsyncAPI 规范动态生成 API 工具的生成器。
相关 Skills
MCP构建
by anthropics
聚焦高质量 MCP Server 开发,覆盖协议研究、工具设计、错误处理与传输选型,适合用 FastMCP 或 MCP SDK 对接外部 API、封装服务能力。
✎ 想让 LLM 稳定调用外部 API,就用 MCP构建:从 Python 到 Node 都有成熟指引,帮你更快做出高质量 MCP 服务器。
Slack动图
by anthropics
面向Slack的动图制作Skill,内置emoji/消息GIF的尺寸、帧率和色彩约束、校验与优化流程,适合把创意或上传图片快速做成可直接发送的Slack动画。
✎ 帮你快速做出适配 Slack 的动图,内置约束规则和校验工具,少踩上传与播放坑,做表情包和演示都更省心。
MCP服务构建器
by alirezarezvani
从 OpenAPI 一键生成 Python/TypeScript MCP server 脚手架,并校验 tool schema、命名规范与版本兼容性,适合把现有 REST API 快速发布成可生产演进的 MCP 服务。
✎ 帮你快速搭建 MCP 服务与后端 API,脚手架完善、扩展顺手,尤其适合想高效验证服务能力的开发者。
相关 MCP Server
Slack 消息
编辑精选by Anthropic
Slack 是让 AI 助手直接读写你的 Slack 频道和消息的 MCP 服务器。
✎ 这个服务器解决了团队协作中需要 AI 实时获取 Slack 信息的痛点,特别适合开发团队让 Claude 帮忙汇总频道讨论或发送通知。不过,它目前只是参考实现,文档有限,不建议在生产环境直接使用——更适合开发者学习 MCP 如何集成第三方服务。
by netdata
io.github.netdata/mcp-server 是让 AI 助手实时监控服务器指标和日志的 MCP 服务器。
✎ 这个工具解决了运维人员需要手动检查系统状态的痛点,最适合 DevOps 团队让 Claude 自动分析性能数据。不过,它依赖 NetData 的现有部署,如果你没用过这个监控平台,得先花时间配置。
by d4vinci
Scrapling MCP Server 是专为现代网页设计的智能爬虫工具,支持绕过 Cloudflare 等反爬机制。
✎ 这个工具解决了爬取动态网页和反爬网站时的头疼问题,特别适合需要批量采集电商价格或新闻数据的开发者。不过,它依赖外部浏览器引擎,资源消耗较大,不适合轻量级任务。