Skip to content

Conversation

Ngineer101
Copy link
Contributor

This PR adds 3 new storage tools:

  • list_storage_buckets: Lists all storage buckets in a Supabase project.
  • get_storage_config: Gets the storage config for a Supabase project.
  • update_storage_config: Updates the storage config for a Supabase project (requires a paid plan).

LLMs can use this to get all the buckets in a project and access the storage config (max file upload size, image transformation enabled, etc.)

@gregnr
Copy link
Collaborator

gregnr commented Jun 9, 2025

Hey @Ngineer101 thanks for the PR! Just want to acknowledge that I've seen this and your implementation looks good.

One tradeoff we've been trying to balance with Supabase MCP is number of tools vs most needed tools. In an ideal world we have as many tools as needed to interact with Supabase in a modular way, but unfortunately we need to deal with tool limits - Cursor for example maxes at 40 tools across all MCP servers. The more tools we introduce the more we creep into this limit.

All that to say I would love to get storage tools in here, but will need to weight this against other tools (like security advisors which we are also working on). Open to ideas - something like this might help: #52 (comment)

@Ngineer101
Copy link
Contributor Author

Hey @gregnr, thanks for confirming. I understand the constraints of the tool limits. What you propose in the linked comment to group tools in feature groups is a great idea. It will allow users to just enable the tools they actually need.

Is someone already working on this idea, or can I give it a try to implement?

@gregnr
Copy link
Collaborator

gregnr commented Jun 12, 2025

Hey @Ngineer101, if you'd like to take a stab at it that would be great 👍

Let's plan for a comma-delimited format like:

npx -y @supabase/mcp-server-supabase@latest --features=account,database,docs,debug,functions,branching

Where:

  • account: project-management-tools.ts (maybe we rename this to account-tools.ts)
  • database: database-operation-tools.ts
  • docs: docs-tools.ts
  • debug: debugging-tools.ts
  • functions: edge-function-tools.ts
  • branching: branching-tools.ts

Defaults can be:

  • Account scoped mode (default): account,database,docs,debug,functions
  • Project scoped mode (--project-ref): database,docs,debug,functions

@Ngineer101
Copy link
Contributor Author

@gregnr, sounds good. I'll give it a shot and make a PR soon.

@Ngineer101
Copy link
Contributor Author

Hey @gregnr, I created a new PR with the above changes: #98

Looking forward to hearing your thoughts :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants