mcp-vercel
A Model Context Protocol (MCP) integration for Vercel's REST API, providing programmatic access to Vercel deployment management.
Added on 3/28/2025
Vercel MCP Integration
A Model Context Protocol (MCP) integration for Vercel's REST API, providing programmatic access to Vercel deployment management.
๐ Overview Last updated: July 2024
This MCP server implements Vercel's core API endpoints as tools, enabling:
- Deployment monitoring & management
- Environment variable retrieval
- Project deployment status tracking
- CI/CD pipeline integration
โจ Features
Current Tools
vercel-list-all-deployments- List deployments with filteringvercel-get-deployment- Retrieve specific deployment detailsvercel-get-environments- Access project environment variablesvercel-create-deployment- Create new deploymentsvercel-create-project- Create new Vercel projectsvercel-list-all-teams- List all accessible teams
๐ฃ๏ธ Roadmap
- [x] Deployment creation workflow
- [x] Project management tools
- [x] Team management integration
- [ ] Real-time deployment monitoring
- [ ] Advanced error handling
- [ ] Deployment metrics dashboard
- [ ] Team member management operations
Tools
vercel-list-all-deployments
List deployments under the authenticated user or team
- Inputs:
app(string): Filter by deployment nameprojectId(string): Filter by project ID/namestate(string): Filter by state (BUILDING, ERROR, INITIALIZING, QUEUED, READY, CANCELED)target(string): Filter by environment (production/preview)limit(number): Number of deployments to return
- Returns: Array of deployment objects with status, URLs, and metadata
vercel-get-deployment
Get detailed information about a specific deployment
- Inputs:
idOrUrl(string): Deployment ID or URL (required)teamId(string): Team ID for request scoping
- Returns: Full deployment details including build logs, domains, and environment variables
vercel-create-deployment
Create a new Vercel deployment
- Inputs:
name(string): Deployment/project name (required)project(string): Project ID/name (required)target(string): Environment (production/preview)regions(string[]): Deployment regionsteamId(string): Team ID for scopingforceNew(boolean): Force new deployment
- Returns: Created deployment details with status URLs
vercel-create-project
Create a new Vercel project
- Inputs:
name(string): Project name (required)framework(string): Framework presetbuildCommand(string): Custom build commanddevCommand(string): Custom dev commandoutputDirectory(string): Build output directoryteamId(string): Team ID for scoping
- Returns: Project configuration with deployment settings
vercel-list-all-teams
List all teams accessible to authenticated user
- Inputs:
limit(number): Maximum results to returnsince(number): Timestamp for teams created afteruntil(number): Timestamp for teams created beforeteamId(string): Team ID for request scoping
- Returns: Paginated list of team objects with metadata
๐ Getting Started
Prerequisites
- Node.js 18+
- Vercel API Token
- MCP Client
Installation
git clone [your-repo-url]
cd vercel-mcp
npm install
Configuration
- Create
.envfile:
VERCEL_API_TOKEN=your_api_token_here
- Start MCP server:
npm start
๐ ๏ธ Usage Examples
List Deployments
const response = await mcpClient.callTool({
name: 'vercel-list-all-deployments',
args: {
limit: 5,
target: 'production'
}
});
Get Specific Deployment
const deployment = await mcpClient.callTool({
name: 'vercel-get-deployment',
args: {
idOrUrl: 'dpl_5WJWYSyB7BpgTj3EuwF37WMRBXBtPQ2iTMJHJBJyRfd'
}
});
๐ณ Docker Deployment
Build the Image
docker build -t vercel-mcp .
Run Container
docker run -it --rm \
-e VERCEL_API_TOKEN=your_token_here \
-p 3399:3399 \
vercel-mcp
Production Deployment
docker run -d \
--name vercel-mcp \
--restart unless-stopped \
-e VERCEL_API_TOKEN=your_token_here \
-p 3399:3399 \
vercel-mcp
Development with Live Reload
docker build --target builder -t vercel-mcp-dev .
docker run -it --rm \
-e VERCEL_API_TOKEN=your_token_here \
-p 3399:3399 \
-v $(pwd)/src:/app/src \
vercel-mcp-dev
๐๏ธ Project Structure
src/
โโโ constants/ # Tool definitions
โโโ tools/
โ โโโ deployments/ # Deployment handlers
โ โ โโโ handlers.ts
โ โ โโโ schema.ts
โ โ โโโ types.ts
โ โโโ environments/# Environment management
โโโ utils/ # API helpers
โโโ index.ts # Server entrypoint
๐ง Configuration
Environment Variables
| Variable | Description | Required |
|----------|-------------|----------|
| VERCEL_API_TOKEN | Vercel access token | Yes |
๐ฃ๏ธ Roadmap
- [ ] Add deployment creation support
- [ ] Implement deployment metrics
- [ ] Add project management tools
- [ ] Support team-based operations
๐ค Contributing
- Fork the repository
- Create feature branch (
git checkout -b feature/amazing-feature) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Open Pull Request
๐ License
MIT License - see LICENSE for details
Similar Resources
Developer Tools