MCP-Agg: Multi-Channel Platform Aggregator
LocalAbout MCP-Agg: Multi-Channel Platform Aggregator
MCP-Agg is an API service for accessing tools across platforms such as GitHub and Slack through one interface. It is aimed at teams connecting accounts and using those tools from an MCP client.
Key features
- 01Unified interface for platform tools
- 02GitHub repository and issue operations
- 03Slack channel and message operations
- 04Authentication for connected services
- 05Generate MCP client URLs
Use cases
- 01Use GitHub tools through one API
- 02Post messages and reply in Slack
- 03Connect platform accounts for MCP access
MCP support
MCP-Agg generates unique URLs for MCP client access. Users connect platform accounts and configure the generated URL in their client.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEMCP-Agg: Multi-Channel Platform Aggregator
MCP-Agg is a powerful API service that provides unified access to multiple tools and platforms through a single, consistent interface. It enables seamless integration with various services like GitHub, Slack, and more, simplifying workflow automation and enhancing productivity.
🚀 Features
- Unified Tool Interface: Access tools from multiple platforms through a standardized API
- Authentication & Authorization: Secure access to each integrated service
- Extensible Architecture: Easily add new tools and platforms
- MCP Client Support: Generate unique URLs for MCP client access
- Comprehensive Documentation: Well-documented API with Swagger UI
🛠️ Supported Platforms
GitHub
- List repositories
- Get repository details
- Manage issues and pull requests
- Access user profiles
Slack
- List channels
- Post messages
- Reply to threads
- Add reactions
- Access channel history
- Retrieve user profiles
📋 Requirements
- Python 3.12+
- PostgreSQL database
- uv package manager
🔧 Installation
- Clone the repository:
git clone https://github.com/moosh3/mcp-agg.git
cd mcp-agg
- Set up a virtual environment and install dependencies using uv:
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
uv pip install -r requirements.txt
- Create a
.envfile based on the.env.exampletemplate:
cp .env.example .env
# Edit .env with your configuration settings
- Run database migrations:
alembic upgrade head
🚀 Running the Application
Development Mode
uvicorn api.main:app --reload --port 8000
Production Mode
uvicorn api.main:app --host 0.0.0.0 --port 8000
Using Docker
docker-compose up -d
📖 API Documentation
Once the application is running, access the interactive API documentation at:
- Swagger UI: http://localhost:8000/docs
- ReDoc: http://localhost:8000/redoc
🔌 Using the MCP Client
To access all your tools through an MCP client:
- Register and log in to the MCP-Agg service
- Connect your accounts for each supported platform (GitHub, Slack, etc.)
- Navigate to the MCP URL generator endpoint
- Use the generated URL in your MCP client configuration
🧪 Testing
Run tests using pytest:
python -m pytest
For coverage information:
python -m pytest --cov=api
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
📝 License
This project is licensed under the MIT License - see the LICENSE file for details.
📞 Contact
Project maintainer: moosh3
Built with ❤️ using FastAPI and Python
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.