Content
# Universal MCP
Universal MCP acts as a middle ware for your API applications. It can store your credentials, authorize, enable disable apps on the fly and much more.
## 🌟 Features
- **MCP (Model Context Protocol) Integration**: Seamlessly works with MCP server architecture
- **Simplified API Integration**: Connect to services like GitHub, Google Calendar, Gmail, Reddit, Tavily, and more with minimal code
- **Managed Authentication**: Built-in support for API keys and OAuth-based authentication flows
- **Extensible Architecture**: Easily build and add new app integrations with minimal boilerplate
- **Credential Management**: Flexible storage options for API credentials with memory and environment-based implementations
## 🔧 Installation
Install AgentR using pip:
```bash
pip install universal-mcp
```
## 🚀 Quick Start
### 1. Get an API Key
Before using AgentR with services that require authorization (like GitHub, Gmail, etc.), you'll need an AgentR API key:
Visit https://agentr.dev to create an account
Generate an API key from your dashboard
Set it as an environment variable or include it directly in your code:
```bash
export AGENTR_API_KEY="your_api_key_here"
```
### 2. Create a basic server
```bash
from agentr.server import TestServer
# Define your applications list
apps_list = [
{
"name": "tavily",
"integration": {
"name": "tavily_api_key",
"type": "api_key",
"store": {
"type": "environment",
}
},
},
{
"name": "zenquotes",
"integration": None
},
{
"name": "github",
"integration": {
"name": "github",
"type": "agentr",
}
}
]
# Create a server with these applications
server = TestServer(name="My Agent Server", description="A server for my agent apps", apps_list=apps_list)
# Run the server
if __name__ == "__main__":
server.run()
```
## Using Playground
Start MCP Server
```bash
universal_mcp run -t sse
```
Start FastAPI app
```bash
fastapi run src/playground
```
Start Frontend
```bash
streamlit run src/playground/streamlit.py
```
## 🧩 Available Applications
AgentR comes with several pre-built applications:
| Application | Description | Authentication Type |
|-------------|-------------|---------------------|
| GitHub | Star repositories and more | OAuth (AgentR) |
| Google Calendar | Retrieve calendar events | OAuth (AgentR) |
| Gmail | Send emails | OAuth (AgentR) |
| Reddit | Access Reddit data | OAuth (AgentR) |
| Resend | Send emails via Resend API | API Key |
| Tavily | Web search capabilities | API Key |
| ZenQuotes | Get inspirational quotes | None |
> **Note**: More applications are coming soon! Stay tuned for updates to our application catalog.
## 🔐 Integration Types
AgentR supports two primary integration types:
### 1. API Key Integration
For services that authenticate via API keys:
```python
{
"name": "service_name",
"integration": {
"name": "service_api_key",
"type": "api_key",
"store": {
"type": "environment", # or "memory"
}
}
}
```
### 2. OAuth Integration (via AgentR)
For services requiring OAuth flow:
```python
{
"name": "service_name",
"integration": {
"name": "service_name",
"type": "agentr"
}
}
```
When using OAuth integrations, users will be directed to authenticate with the service provider through a secure flow managed by AgentR.
## 🤖 CLI Usage
AgentR includes a command-line interface for common operations:
```bash
# Get version information
agentr version
# Generate API client from OpenAPI schema
agentr generate --schema path/to/openapi.yaml
# Run the test server
agentr run
# Install AgentR for specific applications
agentr install claude
```
## 📋 Requirements
- Python 3.11+
- Dependencies (automatically installed):
- loguru >= 0.7.3
- mcp >= 1.5.0
- pyyaml >= 6.0.2
- typer >= 0.15.2
## 📝 License
This project is licensed under the MIT License.
Connection Info
You Might Also Like
MarkItDown MCP
Converting files and office documents to Markdown.
Time
Obtaining current time information and converting time between different...
Filesystem
Model Context Protocol Servers
Sequential Thinking
Offers a structured approach to dynamic and reflective problem-solving,...
Git
Model Context Protocol Servers
Context 7
Context7 MCP Server -- Up-to-date code documentation for LLMs and AI code editors