Back to Directory/Developer Tools

AionMCP

Dynamic API tool generator for OpenAPI, GraphQL, and AsyncAPI specifications

Developer ToolsGov0.1.0

AionMCP - Autonomous Go MCP Server

Build Status Success Rate Avg Latency Go Version License

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

Current Branch: main

Latest Commit: f4f41db

System Health: 99/100 (Excellent)

Active Tools: 3

Commits (7 days): 17

Status updated automatically

✨ 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

Recent Commits

  • f4f41db9 fix: clean up TOON package formatting and remove duplicate package declaration (0h ago)
  • 8b97b173 fix: update go-ci.yml to use Go 1.25 to match go.mod requirement (0h ago)
  • ebeeee28 fix: remove redundant newline in fmt.Println to pass linting (0h ago)
  • a91eb5f4 feat: add TOON (Token-Oriented Object Notation) for LLM context optimization (0h ago)
  • bd39bb10 fix: update Dockerfile Go version to 1.25 (0h ago)

Active Insights

πŸ“Š Total insights: 2

Activity updated automatically

⚑ Performance Statistics

MetricValueStatus
Success Rate97.0%🟒 Excellent
Avg Latency250.0ms🟑 Good
Total Executions42πŸ“Š Tracking
Active Tools3πŸ”§ Running

Statistics updated in real-time

πŸ“¦ 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 tools
  • POST /api/v1/tools/{tool}/execute - Execute a tool
  • GET /api/v1/learning/stats - Learning statistics
  • GET /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

πŸ“„ License

πŸ“„ License


README last updated: 2025-11-27 22:47:18 AEST

This README is automatically updated with current project status and metrics.

Setup from the maintainer

This listing does not have a supported local package template. Use the maintainer’s documentation for its hosted endpoint, authentication, and client-specific setup. No install command has been inferred.

Learn More