MCP Agent API
A Model Context Protocol (MCP) server that bridges MCP clients with AI agents through the Agent API by Coder.
┌─────────────────┐ ┌──────────────┐ ┌─────────────┐
│ MCP Client │ │ MCP Server │ │ Agent API │
│ (Windsurf, │◄───►│ (This tool) │◄───►│ (AI Agent) │
│ Augment, etc.) │ │ │ │ │
└─────────────────┘ └──────────────┘ └─────────────┘
This package enables you to use AI agents like Goose, Aider, and Claude through any MCP-compatible client. It implements the Model Context Protocol specification to provide a standardized interface for controlling multiple AI agents.
🚀 Key Features
- Multi-Agent Support: Control Goose, Aider, Claude, and other agents through a unified interface
- Agent Lifecycle Management: Detect, install, start, stop, and restart agents
- Message Handling: Seamlessly send and receive messages between clients and agents
- Health Monitoring: Monitor agent and API health status
- Flexible Transport: Support for both stdio and SSE transport protocols
- Command-Line Interface: Comprehensive CLI for all operations
📦 Installation
# Using uv (Recommended)
pip install uv
uv pip install mcp-agentapi
# Using pip
pip install mcp-agentapi
# From source
git clone https://github.com/lord-dubious/mcp-agentapi.git
cd mcp-agentapi
./build.sh
uv pip install dist/*.whl
For development installation:
uv pip install -e ".[dev]"
🔌 Client Configuration
Quick Setup
Add to your MCP client configuration (Claude Desktop, Windsurf, Augment, etc.):
{
"mcpServers": {
"agent-controller": {
"command": "python",
"args": ["-m", "mcp_agentapi", "--transport", "stdio"],
"env": {
"TRANSPORT": "stdio"
}
}
}
}
Agent-Specific Configuration
For Goose:
{
"mcpServers": {
"goose-agent": {
"command": "python",
"args": ["-m", "mcp_agentapi", "--agent", "goose", "--auto-start"],
"env": {
"GOOGLE_API_KEY": "YOUR-GOOGLE-API-KEY"
}
}
}
}
For Aider:
{
"mcpServers": {
"aider-agent": {
"command": "python",
"args": ["-m", "mcp_agentapi", "--agent", "aider", "--auto-start"],
"env": {
"OPENAI_API_KEY": "YOUR-OPENAI-API-KEY",
"AIDER_MODEL": "deepseek"
}
}
}
}
For Claude:
{
"mcpServers": {
"claude-agent": {
"command": "python",
"args": ["-m", "mcp_agentapi", "--agent", "claude", "--auto-start"],
"env": {
"ANTHROPIC_API_KEY": "YOUR-ANTHROPIC-API-KEY"
}
}
}
}
SSE Transport
-
Start the server:
mcp-agentapi server start --transport sse --port 8080 --agent goose --auto-start
-
Configure your client:
{ "mcpServers": { "agent-api-server": { "transport": "sse", "serverUrl": "http://localhost:8080/sse" } } }
🔍 Troubleshooting
Command Not Found
# Verify installation
pip list | grep mcp-agentapi
# Reinstall if needed
pip install mcp-agentapi
Manual Agent Installation
# Goose
curl -fsSL https://github.com/block/goose/releases/download/stable/download_cli.sh | bash
# Aider
pip install aider-chat
# Claude
npm install -g @anthropic-ai/claude-code
API Keys
- Goose:
GOOGLE_API_KEY - Aider:
OPENAI_API_KEY,ANTHROPIC_API_KEY, orDEEPSEEK_API_KEY(depending on model) - Claude:
ANTHROPIC_API_KEY
📁 Project Structure
mcp-agentapi/
├── bin/
│ └── mcp-agentapi # CLI executable
├── mcp_agentapi/ # Main package
│ ├── server.py # Server implementation
│ └── src/ # Core modules
│ ├── agent_manager.py # Agent lifecycle management
│ ├── api_client.py # Agent API client
│ ├── config.py # Configuration management
│ └── utils/ # Utility functions
See FILE_STRUCTURE.md for more details.
🔄 Command-Line Interface
mcp-agentapi <command-group> <command> [options]
Server Commands
# Start the server
mcp-agentapi server start --transport stdio --agent goose --auto-start
# Check server status
mcp-agentapi server status
Agent Commands
# List available agents
mcp-agentapi agent list
# Start an agent
mcp-agentapi agent start goose --auto-install
# Switch agents
mcp-agentapi agent switch claude --restart
# Send a message
mcp-agentapi agent send --content "Hello, agent!" --type user
Configuration Commands
# Show configuration
mcp-agentapi config show
# Set configuration
mcp-agentapi config set transport=stdio agent_type=goose
Shortcuts
The CLI provides shortcuts for common commands:
mcp-agentapi list # Same as agent list
mcp-agentapi start goose # Same as agent start goose
🤖 Multi-Agent Support
Supported Agents
- Goose: Google's AI agent
- Aider: AI pair programming assistant
- Claude: Anthropic's AI assistant
- Codex: OpenAI's code-focused model
- Custom: Support for custom agents
MCP Tools for Agent Control
When using an MCP client (Claude Desktop, Windsurf, etc.), you can use these tools:
Tool: list_available_agents
Arguments: {}
Tool: switch_agent
Arguments: {"agent_type": "goose"}
Tool: start_agent
Arguments: {"agent_type": "aider", "auto_install": true}
📚 Documentation
For more detailed documentation, see the docs/ directory:
🤝 Contributing
Contributions are welcome! See CONTRIBUTING.md for guidelines.
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
Metadata
Release files for mcp-agentapi 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| mcp_agentapi-1.0.0.tar.gz | 68.1 kB | Without provenance | Details for mcp_agentapi-1.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| mcp_agentapi-1.0.0-py3-none-any.whl | Python 3 | none | any | Details for mcp_agentapi-1.0.0-py3-none-any.whl |
Total release size: 139.5 kB
Release files / mcp_agentapi-1.0.0.tar.gz
| Download URL | mcp_agentapi-1.0.0.tar.gz |
|---|---|
| Size | 68.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
59b66971317842f520e5f6f8cf83309c07150ecacef53f634eaa68586668c1aa
|
|
BLAKE2b-256 checksum How to use checksums |
63e51d191cb98c4f98c39f560bfcde21ebbdcb37d63a9a1751a2b8c2787471d3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.11
|
Release files / mcp_agentapi-1.0.0-py3-none-any.whl
| Download URL | mcp_agentapi-1.0.0-py3-none-any.whl |
|---|---|
| Size | 71.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8496b35c04e64e9e2ac56082a7521da0e480bbd2a0e1960a4a3ffe2fb4e68e37
|
|
BLAKE2b-256 checksum How to use checksums |
d02e6003fa164469e338265758b2748944dd011b657f0ebed4647873388ce3f7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.11
|
Security for mcp-agentapi 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.