Skip to main content
Glama

Convex MCP

Try Convex MCP instantly in the cloud - works out of the box with VibeFlow.

npm package Stars License: MIT Join Discord

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.

Testing inside VibeFlow

You can easily test your Convex MCP server inside VibeFlow:

Testing Convex MCP in VibeFlow

Install

npm install @vibeflowai/convex-mcp

Features

  • Tools – Expose Convex functions as MCP tools

  • Prompts – Define MCP prompts with Zod args

  • Resources – Serve static and templated MCP resources

Quick Start

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;

Auth

import { bearerAuth } from "@vibeflowai/convex-mcp";

mcp.addHttpRoutes(http, {
  auth: bearerAuth({ env: "MCP_AUTH_TOKEN" }),
});

API Reference

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

License

MIT

Contacts

For custom work or enterprise needs, reach out to Alessia & Elia directly: 📩 founders@vibeflow.ai

Follow Alessia Follow Elia

A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/vibeflowing-inc/convex-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server