A community-driven registry for the Claude Code ecosystem. Not affiliated with Anthropic.
Are you the author? Sign in to claim
Unified deployment management MCP server for Vercel, Render, Railway, and Fly.io
Unified deployment management for AI agents — manage Vercel, Render, Railway, and Fly.io services from a single MCP + REST API.
🚀 Multi-Platform Support — Manage Vercel, Render, Railway, and Fly.io from one interface
📊 Deployment Status — Check deploy status and health across all platforms
📝 Unified Logging — Tail logs and view build logs
⚙️ Environment Management — List, update, and manage env vars
🔄 Redeploy Operations — Trigger redeployments and rollbacks
💰 x402 Micropayments — Built-in payment middleware for API monetization
🔒 Rate Limiting — 50 free requests/IP/day with paid tier support
Add to your MCP settings file (cline_mcp_settings.json or similar):
{
"mcpServers": {
"agent-deploy-dashboard": {
"url": "https://agent-deploy-dashboard-mcp.onrender.com/mcp"
}
}
}
Base URL: https://agent-deploy-dashboard-mcp.onrender.com
curl -X GET https://agent-deploy-dashboard-mcp.onrender.com/api/v1/list_all_services
Response:
{
"success": true,
"services": [
{
"id": "prj_abc123",
"name": "my-app",
"platform": "vercel",
"url": "https://my-app.vercel.app",
"framework": "nextjs"
},
{
"id": "srv_xyz789",
"name": "api-service",
"platform": "render",
"type": "web_service",
"region": "oregon"
}
],
"count": 2
}
curl -X POST https://agent-deploy-dashboard-mcp.onrender.com/api/v1/get_deploy_status \
-H "Content-Type: application/json" \
-d '{
"platform": "vercel",
"service_id": "prj_abc123"
}'
Response:
{
"success": true,
"platform": "vercel",
"service_id": "prj_abc123",
"deployment_id": "dpl_xyz",
"status": "READY",
"url": "https://my-app.vercel.app",
"created_at": 1709823600000
}
curl -X POST https://agent-deploy-dashboard-mcp.onrender.com/api/v1/tail_logs \
-H "Content-Type: application/json" \
-d '{
"platform": "render",
"service_id": "srv_xyz789",
"lines": 50
}'
curl -X POST https://agent-deploy-dashboard-mcp.onrender.com/api/v1/get_env_vars \
-H "Content-Type: application/json" \
-d '{
"platform": "vercel",
"service_id": "prj_abc123"
}'
Response:
{
"success": true,
"platform": "vercel",
"service_id": "prj_abc123",
"env_vars": {
"DATABASE_URL": {
"value": "[ENCRYPTED]",
"target": ["production"],
"type": "encrypted"
},
"API_KEY": {
"value": "abc123",
"target": ["production", "preview"],
"type": "plain"
}
},
"count": 2
}
curl -X POST https://agent-deploy-dashboard-mcp.onrender.com/api/v1/set_env_var \
-H "Content-Type: application/json" \
-d '{
"platform": "render",
"service_id": "srv_xyz789",
"key": "NEW_FEATURE_FLAG",
"value": "true"
}'
curl -X POST https://agent-deploy-dashboard-mcp.onrender.com/api/v1/trigger_redeploy \
-H "Content-Type: application/json" \
-d '{
"platform": "vercel",
"service_id": "prj_abc123"
}'
curl -X POST https://agent-deploy-dashboard-mcp.onrender.com/api/v1/get_build_logs \
-H "Content-Type: application/json" \
-d '{
"platform": "vercel",
"deploy_id": "dpl_xyz"
}'
curl -X POST https://agent-deploy-dashboard-mcp.onrender.com/api/v1/check_health \
-H "Content-Type: application/json" \
-d '{
"url": "https://my-app.vercel.app/health"
}'
Response:
{
"success": true,
"url": "https://my-app.vercel.app/health",
"status_code": 200,
"healthy": true,
"response_time_ms": 142,
"headers": {
"content-type": "application/json",
"x-vercel-id": "sfo1::abc123"
}
}
After free tier exhausted:
0x8E844a7De89d7CfBFe9B4453E65935A22F146aBBX-Payment header with payment proof| Platform | List Services | Deploy Status | Logs | Env Vars | Redeploy | Build Logs |
|---|---|---|---|---|---|---|
| Vercel | ✅ Full | ✅ Full | ⚠️ Build only | ✅ Full | ✅ Full | ✅ Full |
| Render | ✅ Full | ✅ Full | ✅ Full | ✅ Full | ✅ Full | ✅ Full |
| Railway | ✅ Basic | ⏳ Planned | ⏳ Planned | ⏳ Planned | ⏳ Planned | ⏳ Planned |
| Fly.io | ✅ Basic | ⏳ Planned | ⏳ Planned | ⏳ Planned | ⏳ Planned | ⏳ Planned |
✅ = Fully implemented
⚠️ = Partial implementation
⏳ = Planned/stub implementation
list_all_services()List all services across all platforms.
Parameters: None
Returns:
{
"success": true,
"services": [...],
"count": 10,
"errors": null
}
get_deploy_status(platform, service_id)Check deployment status for a specific service.
Parameters:
platform (string): Platform name — vercel, render, railway, or flyservice_id (string): Service/project IDReturns:
{
"success": true,
"platform": "vercel",
"service_id": "prj_abc",
"deployment_id": "dpl_xyz",
"status": "READY",
"url": "https://...",
"created_at": 1709823600000
}
tail_logs(platform, service_id, lines=100)Stream recent logs from a service.
Parameters:
platform (string): Platform nameservice_id (string): Service/project IDlines (integer, optional): Number of log lines (default: 100)Returns:
{
"success": true,
"platform": "render",
"service_id": "srv_xyz",
"logs": [...],
"count": 100
}
get_env_vars(platform, service_id)List environment variables for a service.
Parameters:
platform (string): Platform nameservice_id (string): Service/project IDReturns:
{
"success": true,
"platform": "vercel",
"env_vars": {"KEY": "value"},
"count": 5
}
set_env_var(platform, service_id, key, value)Update an environment variable.
Parameters:
platform (string): Platform nameservice_id (string): Service/project IDkey (string): Environment variable namevalue (string): Environment variable valueReturns:
{
"success": true,
"message": "Environment variable set successfully"
}
trigger_redeploy(platform, service_id)Force redeploy a service.
Parameters:
platform (string): Platform nameservice_id (string): Service/project IDReturns:
{
"success": true,
"deployment_id": "dpl_new",
"message": "Redeploy triggered successfully"
}
get_build_logs(platform, deploy_id)Fetch build logs for a deployment.
Parameters:
platform (string): Platform namedeploy_id (string): Deployment IDReturns:
{
"success": true,
"logs": [...],
"count": 50
}
check_health(url)Ping a health endpoint.
Parameters:
url (string): URL to checkReturns:
{
"success": true,
"status_code": 200,
"healthy": true,
"response_time_ms": 142
}
rollback_deploy(platform, service_id, version)Rollback to a previous deployment version.
Parameters:
platform (string): Platform nameservice_id (string): Service/project IDversion (string): Version/deployment ID to rollback toReturns:
{
"success": false,
"error": "Rollback not yet implemented for this platform"
}
Configure platform API access via environment variables:
# Vercel
VERCEL_TOKEN=your_vercel_token
# Render
RENDER_API_KEY=your_render_api_key
# Railway
RAILWAY_TOKEN=your_railway_token
# Fly.io
FLY_API_TOKEN=your_fly_api_token
# Payment (optional)
X402_WALLET_ADDRESS=0x8E844a7De89d7CfBFe9B4453E65935A22F146aBB
Get your API tokens:
flyctl auth token# Clone repo
git clone https://github.com/aparajithn/agent-deploy-dashboard-mcp.git
cd agent-deploy-dashboard-mcp
# Create virtual environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -e ".[dev]"
# Set environment variables
export VERCEL_TOKEN=your_token
export RENDER_API_KEY=your_key
# Run server
uvicorn src.main:app --reload --port 8080
# Health check
curl http://localhost:8080/health
# List services (requires platform tokens)
curl http://localhost:8080/api/v1/list_all_services
# Test MCP protocol
curl -X POST http://localhost:8080/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0.0"}}}'
# List MCP tools
curl -X POST http://localhost:8080/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'
# Build
docker build -t agent-deploy-dashboard-mcp .
# Run
docker run -p 8080:8080 \
-e VERCEL_TOKEN=your_token \
-e RENDER_API_KEY=your_key \
-e PUBLIC_HOST=localhost \
agent-deploy-dashboard-mcp
aparajithn/agent-deploy-dashboard-mcpagent-deploy-dashboard-mcpVERCEL_TOKENRENDER_API_KEYRAILWAY_TOKEN (optional)FLY_API_TOKEN (optional)X402_WALLET_ADDRESS (optional)PUBLIC_HOST = agent-deploy-dashboard-mcp.onrender.comcurl -X POST https://api.render.com/v1/services \
-H "Authorization: Bearer $RENDER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "web_service",
"name": "agent-deploy-dashboard-mcp",
"repo": "https://github.com/aparajithn/agent-deploy-dashboard-mcp",
"branch": "main",
"runtime": "docker",
"plan": "free",
"region": "oregon",
"envVars": [
{"key": "VERCEL_TOKEN", "value": "your_token"},
{"key": "RENDER_API_KEY", "value": "your_key"},
{"key": "PUBLIC_HOST", "value": "agent-deploy-dashboard-mcp.onrender.com"}
]
}'
agent-deploy-dashboard-mcp/
├── src/
│ ├── main.py # FastMCP server + REST API
│ ├── tools/
│ │ ├── platforms.py # Platform API clients (Vercel, Render, etc)
│ │ └── deploy_tools.py # Tool implementations
│ └── middleware/
│ ├── rate_limit.py # Rate limiting
│ └── x402.py # Payment middleware
├── Dockerfile
├── pyproject.toml
└── README.md
Once deployed, view interactive API docs at:
https://agent-deploy-dashboard-mcp.onrender.com/docshttps://agent-deploy-dashboard-mcp.onrender.com/openapi.jsonMIT License — see LICENSE for details.
Built for AI agents by Forge (Aparajith's coding agent) 🤖
Run Claude Code as an MCP server so any agent can delegate coding tasks to it
Browser automation using accessibility snapshots instead of screenshots
Secure MCP server for MySQL database interaction, queries, and schema management
English-first Korean equity intelligence MCP — DART filings, foreign-holder 5%-rule flows, activist filings, KRX news. F