跳到正文
plugmcp
目录技能分类博客
EN/中文
登录注册
Directory/com.supabase
MCP serverOfficial registry

Supabase

MCP server for interacting with the Supabase platform

by com.supabasev0.13.0GitHubnpmWebsite
接入你的智能体

添加此服务器

The publisher's own URL. Not a PlugMCP endpoint.

Server URL
https://mcp.supabase.com/mcp
Credentials from the publisher
  • SUPABASE_ACCESS_TOKEN — Personal access token for Supabase API
Provider
Claude Code
claude mcp add --transport http com.supabase-mcp https://mcp.supabase.com/mcp

Run in a terminal.

Claude Desktop
{
  "mcpServers": {
    "com.supabase-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.supabase.com/mcp"
      ]
    }
  }
}

claude_desktop_config.json

Step-by-step: add this in Claude

Remote URL or a command on your machine? How the two installs differ

在 PlugMCP 上运行

用我们的密钥与日志托管一份副本。

这是你新建的服务器,不是此条目的官方端点。若要用发布方的 URL 与凭证,请使用上方安装面板。

启动
Related MCP

More like this

View more
  • Firecrawl

    firecrawl

    🔥 Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.

    7.6k starsRemotebatch-processingclaude
  • N

    Notion

    Official
plugmcp

把任意工具接入任意智能体。面向非开发者的 MCP 服务器目录;网关承载流量,n8n 承载应用。

PlugMCP, 2026

产品
  • 浏览
  • 安装
  • 自行托管
  • 语音模式
  • 浏览器
目录
  • 全部 MCP 服务器
  • 智能体技能
  • 分类
  • 新品
  • 语音
  • 提交服务器
开发者
  • 文档
  • 博客
  • 什么是 MCP
  • 什么是 WebMCP
  • 状态
公司
  • 关于
  • 联系
  • 条款
  • 隐私
  • 数据处理协议
  • [email protected]
io.github.awkoy

Token-auth Notion MCP: pages, databases, blocks, comments, files. Runs headless in CI and agents.

175 starsLocal
  • Context7

    upstash

    Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors

    63k starsRemotevibe-coding
  • MCP server for interacting with the Supabase platform

    推荐
    • Firecrawl🔥 Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.
    • N
      NotionToken-auth Notion MCP: pages, databases, blocks, comments, files. Runs headless in CI and agents.
    • Context7Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors

    Supabase MCP Server

    Connect your Supabase projects to Cursor, Claude, Windsurf, and other AI assistants.

    supabase-mcp-demo

    The Model Context Protocol (MCP) standardizes how Large Language Models (LLMs) talk to external services like Supabase. It connects AI assistants directly with your Supabase project and allows them to perform tasks like managing tables, fetching config, and querying data. See the full list of tools.

    Setup

    1. Follow our security best practices

    Before setting up the MCP server, we recommend you read our security best practices to understand the risks of connecting an LLM to your Supabase projects and how to mitigate them.

    2. Configure your MCP client

    To configure the Supabase MCP server on your client, visit our setup documentation. You can also generate a custom MCP URL for your project by visiting the MCP connection tab in the Supabase dashboard.

    Your MCP client will automatically prompt you to log in to Supabase during setup. Be sure to choose the organization that contains the project you wish to work with.

    Most MCP clients require the following information:

    {
      "mcpServers": {
        "supabase": {
          "type": "http",
          "url": "https://mcp.supabase.com/mcp"
        }
      }
    }
    
    推荐
    • Firecrawl🔥 Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.
    • N
      NotionToken-auth Notion MCP: pages, databases, blocks, comments, files. Runs headless in CI and agents.
    • Context7Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors

    No FAQ yet. Enrichment fills this from the README on the next crawl.

    推荐
    • Firecrawl🔥 Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.
    • N
      NotionToken-auth Notion MCP: pages, databases, blocks, comments, files. Runs headless in CI and agents.
    • Context7Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors

    No tool list yet. Remote servers get one after the first health check.

    推荐
    • Firecrawl🔥 Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.
    • N
      NotionToken-auth Notion MCP: pages, databases, blocks, comments, files. Runs headless in CI and agents.
    • Context7Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors

    If you don't see your MCP client listed in our documentation, check your client's MCP documentation and copy the above MCP information into their expected format (json, yaml, etc).

    CLI

    If you're running Supabase locally with Supabase CLI, you can access the MCP server at http://localhost:54321/mcp. Currently, the MCP Server in CLI environments offers a limited subset of tools and no OAuth 2.1.

    Self-hosted

    For self-hosted Supabase, check the Enabling MCP server page. Currently, the MCP Server in self-hosted environments offers a limited subset of tools and no OAuth 2.1.

    Configuration options and tools

    See the Supabase MCP Server docs for the full list of available tools and configuration options.

    The docs also feature an interactive URL builder to populate configuration options for you.

    Usage with AI SDK's MCP Client

    The @supabase/mcp-server-supabase package exports createToolSchemas() to populate input and output schemas for Vercel AI SDK's MCP client. This allows Supabase MCP tools to be treated as static tools with client-side validation and inferred TypeScript types for their inputs and outputs.

    import { createToolSchemas } from '@supabase/mcp-server-supabase';
    import { createMCPClient } from '@ai-sdk/mcp';
    import { streamText } from 'ai';
    
    const mcpClient = await createMCPClient({
      transport: {
        type: 'http',
        url: 'https://mcp.supabase.com/mcp',
      },
    });
    
    const tools = await mcpClient.tools({
      schemas: createToolSchemas(),
    });
    
    const result = streamText({ model, tools, prompt: '...' });
    
    for (const step of await result.steps) {
      for (const toolResult of step.staticToolResults) {
        if (toolResult.toolName === 'get_project_url') {
          toolResult.input;  // { project_id: string }
          toolResult.output; // { url: string }
        }
      }
    }
    

    createToolSchemas() accepts similar filtering options as the MCP server's URL parameters:

    • features: Restrict to specific feature groups (e.g. ['database', 'docs']). Defaults to all default feature groups.
    • projectScoped: When true, omits project_id from tool input schemas and excludes account-level tools — use when connecting to a server configured with project_ref. Defaults to false.
    • readOnly: When true, excludes mutating tools — use when connecting to a server configured with read_only=true. Defaults to false.
    const mcpClient = await createMCPClient({
      transport: {
        type: 'http',
        url: 'https://mcp.supabase.com/mcp?project_ref=<project-ref>&read_only=true&features=database,docs',
      },
    });
    
    const tools = await mcpClient.tools({
      schemas: createToolSchemas({
        features: ['database', 'docs'],
        projectScoped: true,
        readOnly: true,
      }),
    });
    

    [!NOTE] This server does not send structuredContent in MCP tool results. AI SDK falls back to parsing JSON from content text.

    For more information, see Schema Definition and Typed Tool Outputs in the AI SDK docs.

    Self-hosting the MCP endpoint

    The @supabase/mcp-server-supabase package exports createSupabaseMcpHandler() to serve the tools over HTTP from your own endpoint. It accepts the same SupabaseMcpServerOptions as createSupabaseMcpServer(), most importantly platform.

    The handler speaks the current protocol revision only. It is created with legacy: 'reject', so a client that only speaks the 2025-era protocol receives an HTTP 400 instead of being served.

    When platform carries a per-request credential, create the handler per request and close it when the response finishes. The handler closes over the platform you supply, so a shared one serves every request with that platform.

    A long-lived handler is fine when the platform is meant to be shared, a service-account token for example. Create it once and close() it at shutdown rather than per response, since close() tears down the subscription router and refuses later requests.

    import { createServer } from 'node:http';
    import { toNodeHandler } from '@modelcontextprotocol/node';
    import { createSupabaseMcpHandler } from '@supabase/mcp-server-supabase';
    import { createSupabaseApiPlatform } from '@supabase/mcp-server-supabase/platform/api';
    
    const server = createServer((req, res) => {
      const accessToken = getAccessTokenFromRequest(req); // your own auth
    
      const handler = createSupabaseMcpHandler({
        platform: createSupabaseApiPlatform({ accessToken }),
      });
    
      // `close()` aborts in-flight exchanges, so close on `res` finishing rather
      // than when the handler resolves, which would cut streaming responses short.
      res.on('close', () => {
        handler.close().catch((error) => console.error(error));
      });
    
      toNodeHandler(handler)(req, res).catch((error) => console.error(error));
    });
    

    toNodeHandler comes from @modelcontextprotocol/node, which is not a dependency of this package. Install it alongside.

    Observability

    Pass an observer to createSupabaseMcpServer to collect request lifecycle results and Supabase's built-in facts. Here, platform is your existing platform adapter:

    import { createSupabaseMcpServer } from '@supabase/mcp-server-supabase';
    
    const server = createSupabaseMcpServer({
      platform,
      observer: (context) => ({
        record(fact) {
          console.info(fact);
        },
        end(result) {
          console.info({ ...context, ...result });
        },
      }),
    });
    

    The server does not automatically forward request or response payloads to the observer. Supabase's built-in facts use a closed set of bounded fields and values; custom facts receive no automatic privacy validation. Omitting observer skips all observation work. Observer, classifier and sink failures don't change request behavior, but synchronous observer and classifier work can block requests.

    Other MCP servers

    @supabase/mcp-server-postgrest

    The PostgREST MCP server allows you to connect your own users to your app via REST API. See more details on its project README.

    Resources

    • Model Context Protocol: Learn more about MCP and its capabilities.
    • From development to production: Learn how to safely promote changes to production environments.

    For developers

    See CONTRIBUTING for details on how to contribute to this project.

    License

    This project is licensed under Apache 2.0. See the LICENSE file for details.