Supabase logo

Supabase

This is an MCP server for PostgREST. It allows LLMs perform database queries and operations on Postgres databases via PostgREST.

How to Use Model Context Protocol (MCP) in Cursor

What is MCP?

Model Context Protocol (MCP) is an open protocol that allows you to provide custom tools to agentic LLMs (Large Language Models) in Cursor's Composer feature.

Installation Steps

  1. Open Cursor Settings
    • Navigate to Cursor Settings > Features > MCP
    • Click the "+ Add New MCP Server" button
  2. Configure the Server
    • Name: Give your server a nickname
    • Type: Select the transport type (stdio or sse)
    • Command/URL: Enter either:
      • For SSE servers: The URL of the SSE endpoint
      • For stdio servers: A valid shell command to run the server

Example Configurations

For stdio Server (Supabase Example):

Command: node ~/mcp-quickstart/supabase-server/build/index.js --url $SUPABASE_URL --key $SUPABASE_KEY

For SSE Server:

URL: https://your-project.supabase.co/rest/v1/sse

Using MCP Tools

Tool Availability

  • • After adding a server, it will appear in your MCP servers list
  • • You may need to click the refresh button to populate the tool list

Using Tools in Composer

  • • The Composer Agent automatically uses MCP tools when relevant
  • • You can explicitly prompt tool usage by:
    • Referring to the tool by name
    • Describing the tool's function

Tool Execution Process

  • • Displays a message in chat requesting approval
  • • Shows tool call arguments (expandable)
  • • Executes the tool upon user approval
  • • Displays the tool's response in the chat

Important Notes

  • • MCP tools may not work with all models
  • • MCP tools are only available to the Agent in Composer
  • • For Supabase integration, you need to set up SUPABASE_URL and SUPABASE_KEY environment variables
  • • Get your project URL and API key from the Supabase dashboard
  • • For security, use a wrapper script that sets the environment variables before running the server
  • • Make sure your database policies are properly configured for the operations you want to allow