Try Convex MCP instantly in the cloud - works out of the box with VibeFlow.
Build a stateless MCP endpoint on top of Convex.
This package provides a simple wrapper to automatically translate your Convex backend functions into a standard MCP server, allowing any AI agent (like Claude, Cursor, etc.) to discover and interact with them.
You can easily test your Convex MCP server inside VibeFlow:
npm install @vibeflowai/convex-mcp- Tools – Expose Convex functions as MCP tools
- Prompts – Define MCP prompts with Zod args
- Resources – Serve static and templated MCP resources
Define your MCP server:
// convex/mcp.ts
import { api, internal } from "./_generated/api";
import { defineMcpServer, tool, prompt, resource, promptResult, assistantText, userText } from "@vibeflowai/convex-mcp";
export const mcp = defineMcpServer({
name: "my-app",
version: "0.1.0",
tools: {
users: {
get: tool(api.users.get, {
kind: "query",
description: "Fetch a user by id",
args: (z) => ({ userId: z.string() }),
}),
},
},
prompts: {
onboarding: prompt(
{ args: (z) => ({ name: z.string() }) },
async ({ name }) => promptResult([assistantText(`Welcome ${name}!`)])
),
},
resources: {
config: resource(api.resources.config, {
kind: "query",
uri: "config://app",
mimeType: "application/json",
}),
},
});Mount it:
// convex/http.ts
import { httpRouter } from "convex/server";
import { mcp } from "./mcp";
const http = httpRouter();
mcp.addHttpRoutes(http);
export default http;import { bearerAuth } from "@vibeflowai/convex-mcp";
mcp.addHttpRoutes(http, {
auth: bearerAuth({ env: "MCP_AUTH_TOKEN" }),
});| Function | Description |
|---|---|
defineMcpServer(...) |
Create an MCP server with tools, prompts, and resources |
tool(ref, opts) |
Register a Convex function as an MCP tool |
prompt(opts, handler) |
Register an MCP prompt |
resource(ref, opts) |
Register a fixed MCP resource |
resourceTemplate(ref, opts) |
Register a templated MCP resource |
bearerAuth(opts) |
Add Bearer token auth |
Built by the VibeFlow team.
For custom work or enterprise needs, reach out to Alessia & Elia directly: 📩 [email protected]
- 🌐 Website: vibeflow.ai
- 🚀 App: app.vibeflow.ai
