apps/www/_blog/2025-10-03-remote-mcp-server.mdx
Today we are launching our remote MCP server, allowing you to connect your Supabase projects with many more AI agents than before, including ChatGPT, Claude, and Builder.io. We also added support for MCP auth (OAuth2), a faster and more secure way to connect agents with your Supabase account (via browser-based authentication). Last but not least, we're adding official MCP support for local Supabase instances created through the CLI.
Now all you need is a single URL to connect your favorite AI agent to Supabase:
https://mcp.supabase.com/mcp
Or if you're running Supabase locally:
http://localhost:54321/mcp
On top of this, we're adding even more tools to Supabase MCP that we hope will make you more productive.
MCP stands for Model Context Protocol. It standardizes how Large Language Models (LLMs) talk to platforms like Supabase. We released the initial version of our Supabase MCP server back in April which allowed folks to connect their favorite AI tools (like Cursor or Claude Code) directly with Supabase. Since launch, we've added many new features:
Today we are adding even more tools to the tool belt, along with a new way to connect: Remote HTTP.
The MCP protocol supports 2 official methods for running servers, known as transports:
npx) and communicates over a standard I/O interface. This was the transport used by most MCP servers originally, including Supabase.When we first launched the Supabase MCP server, the HTTP transport was going through some spec changes which many clients didn't support yet (streamable HTTP). We wanted to support all clients immediately without investing a ton of time into an unstable transport, so we released our server as an stdio MCP server. To run this, you needed to install Node.js and configuring your MCP client with this npx command:
npx -y @supabase/mcp-server-supabase@latest ...
This worked great at the time, because it meant that folks could connect their AI agents with Supabase immediately without a lot of infrastructure work on our end. But it came with some downsides:
stdio.nvm). Every operating system also had slight differences that required modifying the npx command accordingly.On the other hand, Remote MCP only requires a single URL:
https://mcp.supabase.com/mcp
# or http://localhost:54321/mcp for local
We also built an interactive widget to help you connect popular MCP clients to Supabase and customize the URL to your preferences (like project-scoped mode and read-only mode).
Our philosophy on Supabase MCP comes down to two ideas:
With these in mind, we added the following new features to assist AI agents while they help build your app:
Feature groups allow you to pick and choose which tools you want to expose to your agent. This is useful in two ways:
functions feature group so that those tools are never exposed to the LLM.Today we support the following feature groups:
See the MCP docs for instructions on how to enable or disable these groups.
A big challenge with LLMs is knowledge cutoff. Early LLMs had a pretty good understanding of Supabase, but it was still nowhere near complete or up-to-date. Now the latest leading LLMs have a very good understanding of Supabase, but will still lag behind any new features, bug fixes, or other updates that we make.
To help with this, we added a new tool to Supabase MCP: search_docs. This tool exposes the latest up-to-date Supabase docs powered by our Content API - a GraphQL based search API that uses hybrid search (semantic + keyword) to find relevant documentation for a given query (formatted as markdown).
The result ends up looking like similar to self-RAG: whenever your agent needs clarification on a topic, it can use this tool to find the most relevant Supabase documentation.
How do you know if LLMs are really following best coding practices? When a project reaches even a moderate level of complexity, the amount of context and moving parts becomes a real challenge to navigate, even for humans.
Our solution is a feature that already exists on our platform - advisors. Advisors are essentially lints on your database that help you follow security and performance best practices. We added a new get_advisors MCP tool that fetches these same advisors so that your agent can both discover and fix any outstanding issues on your database.
We also added initial support for Supabase Storage on our MCP server. This first version allows your agent to see which buckets exist on your project and update their configuration, but in the future we'll look into more abilities like listing files and their details.
This feature was actually a community contribution (thanks Nico!). If there are ever missing features that you'd like to see, PR's are always welcome!
We have more exciting plans for MCP at Supabase:
Security: Today our OAuth2 implementation requires you to make a binary decision on permissions: either grant all permissions to your MCP client, or none. This isn't ideal if you know that you never want to, say, allow your client to access to your Edge Functions.
To improve this, we're working to support fine-grain permissions that can be toggled during authorization. It's a big task to re-work our permission infrastructure to support this, but we believe it's worth it.
Double down on local: We're very excited to support local Supabase instances in this release, but we also believe there is a lot more that can be done. Supabase MCP is designed to be used for development, so we want the local experience to be first-class.
Build your own MCP: You might have thought about building your own MCP server on top of Supabase. We're using the playbook and lessons learned from our own MCP server to provide the tools you need to do the same - including remote MCP and auth. Stay tuned!
We're keen to continue investing in MCP and excited to see how you use these new features!