This is the main MCP (Model Context Protocol) server powering chat.meetingbaas.com, providing the LLM integration and AI capabilities for the Meeting BaaS chat interface. It's a fork of the Vercel MCP template with Meeting BaaS-specific modifications.
Note: This fork can be deployed on a traditional server. To deploy on Vercel, you must recreate a vercel.json file.
The server implements the Model Context Protocol (MCP) that integrates with Meeting BaaS services, enabling:
- AI-powered chat interactions
- Meeting automation through LLMs
- Intelligent bot management
- Calendar integration with AI assistance
- Integration with Meeting BaaS SDK for video meeting management
- Calendar integration for automated meeting recordings
- Real-time transcription and audio streaming capabilities
- Comprehensive bot management tools
This project uses the official Meeting BaaS SDK (@meeting-baas/sdk) which provides:
- Complete type safety with comprehensive TypeScript definitions
- Automatic updates synced with OpenAPI specification
- Simplified access to all meeting automation capabilities
- Cross-platform consistency for all supported meeting providers (Google Meet, Zoom, Microsoft Teams)
- Pre-generated MPC tools for easy integration with AI systems
- Strongly typed functions for interacting with the complete Meeting BaaS API
The following environment variables are required:
REDIS_URL: URL to your Redis instance (required for session management)
Optional environment variables:
NODE_ENV: Set to"development"to enable development mode.PORT: Port the server listens on (default:3000).BAAS_API_KEY: Meeting BaaS API key (development mode only).
The server supports multiple ways to provide the Meeting BaaS API key:
-
Request headers (in order of precedence):
x-meeting-baas-api-keyx-meetingbaas-apikeyx-api-keyAuthorization(as a Bearer token)
-
Request body (for POST requests):
{ "apiKey": "your-api-key" } -
Environment variable (development mode only):
BAAS_API_KEY=your-api-key
Note: In production, the API key should be provided through request headers or body. The environment variable is only used in development mode for testing purposes.
Update api/server.ts with your tools, prompts, and resources following the MCP TypeScript SDK documentation.
There is also a Next.js version of this template
- Requires a Redis attached to the project under
process.env.REDIS_URL - Make sure you have Fluid compute enabled for efficient execution
- After enabling Fluid compute, create a
vercel.jsonand setmaxDurationto800if you are using a Vercel Pro or Enterprise account. - An example of
vercel.json:
{
"rewrites": [{ "source": "/(.+)", "destination": "/api/server" }],
"functions": {
"api/server.ts": {
"maxDuration": 800
}
}
}This fork includes several Meeting BaaS-specific tools:
- Join meetings with AI bots
- Record meetings with transcription
- Leave meetings and clean up resources
- Create and manage calendar integrations
- Schedule automated recordings
- List and manage calendar events
- Update calendar configurations
- List and monitor active bots
- Get detailed bot metadata
- Manage bot configurations
script/test-client.mjs contains a sample client to try invocations.
node scripts/test-client.mjs https://mcp-on-vercel.vercel.appThis fork adds:
- Meeting BaaS SDK integration
- Enhanced bot management capabilities
- Calendar integration features
- Improved error handling and logging
This is a fork of the Vercel MCP template. For the original template, please visit vercel-labs/mcp-on-vercel.
For more information about the Meeting BaaS SDK, visit:
