Skynet-MCP is an advanced architecture that implements the Model Context Protocol (MCP) to create a hierarchical network of AI agents. Each Skynet-MCP instance acts as both an MCP server and MCP client, allowing it to provide tools to parent agents while also spawning and managing child agents. This architecture enables recursive agent networks capable of decomposing complex tasks, parallelizing work, and integrating specialized capabilities across multiple models and services.
Skynet-MCP provides the following MCP tools through its FastMCP implementation:
mcpConfig
: MCP server configuration (available tools for the agent)llmConfig
: LLM configuration (provider and model to use)prompt
: Instructions for the agent taskdelayedExecution
: Boolean indicating if the task should be run asynchronouslytaskId
: The ID of the task to checkskynet-mcp/
├── src/
│ ├── server/ # MCP server implementation
│ ├── client/ # MCP client implementation
│ ├── orchestrator/ # Agent orchestration
│ ├── tools/ # Agent tools
│ ├── persistence/ # State management
│ └── utils/ # Shared utilities
├── test/
│ ├── unit/ # Unit tests
│ └── integration/ # Integration tests
├── examples/ # Example implementations
└── config/ # Configuration files
shell
npm install
npm run build
- Build the projectnpm run test
- Run testsnpm run test:watch
- Run tests in watch modenpm run test:coverage
- Run tests with coveragenpm run lint
- Lint the codenpm run lint:fix
- Lint and fix the codenpm run format
- Format the codenpm run dev
- Run TypeScript in watch modenpm start
- Start the applicationnpm run docker:build
- Build the Docker imagenpm run docker:up
- Start the application with Docker Composenpm run docker:down
- Stop Docker Compose servicesnpm run docker:test
- Run tests inside the Docker containernpm run test:docker
- Run Docker-specific tests (requires Docker running)Skynet-MCP includes Docker support for containerized development and deployment.
The project includes a Dockerfile that:
The docker-compose.yml file provides a complete development environment with:
To start the full environment:
npm run docker:up
Skynet-MCP uses a flexible configuration system that can load settings from:
Configuration files are stored in the config/
directory and loaded based on the NODE_ENV
environment variable.
Key environment variables include:
SERVER_PORT
- Port the server listens onSERVER_HOST
- Host the server binds toLOG_LEVEL
- Logging level (debug, info, warn, error)PERSISTENCE_TYPE
- Storage type (memory or redis)REDIS_URL
- Redis connection URL (when using Redis)OPENAI_API_KEY
- OpenAI API key (for LLM-powered agents)ANTHROPIC_API_KEY
- Anthropic API key (for LLM-powered agents)Skynet-MCP uses GitHub Actions for continuous integration and delivery.
The workflow:
The CI/CD pipeline helps ensure code quality and stability by automatically testing changes before they're merged.
ISC