Skip to main content

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

  1. Start the server:

    mcp-agentapi server start --transport sse --port 8080 --agent goose --auto-start
    
  2. 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, or DEEPSEEK_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)

Source distribution for mcp-agentapi 1.0.0
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)

Table of built distributions (wheels) for mcp-agentapi 1.0.0
File Interpreter ABI Platform Actions
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.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page