supabase_list_projects
Lists all Supabase projects for the user. Use this to help discover the project ID of the project that the user is working on.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Lists all Supabase projects for the user. Use this to help discover the project ID of the project that the user is working on.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is well-covered. The description adds the purpose of discovering project IDs but doesn't describe return format or pagination behavior. This is minimal value beyond annotations, so a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary action and followed by a practical use case. No wasted words and effective structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter list operation with strong annotations and no output schema, the description is complete. It states what it does, who it's for, and a clear use case. No additional details are needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters and 100% schema coverage, the schema fully defines the input. The description adds purpose context ('helps discover project ID') that is not redundant with the schema, meeting the baseline of 4 for zero-param tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Lists all Supabase projects for the user' and provides a specific use case ('discover the project ID'), distinguishing it from sibling supabase_get_project. The verb and resource are explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear when-to-use guidance ('Use this to help discover the project ID'), which implicitly advises using this tool when the project ID is unknown. It doesn't explicitly contrast with alternatives, but the guidance is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
The Supabase-prefixed tools are all distinct CRUD/lifecycle operations on different resource types (projects, branches, migrations, edge functions, etc.). The platform-level tools (authenticate, connect, marketplace, etc.) have clear non-overlapping purposes, though their names could momentarily be confused with Supabase-specific actions if an agent doesn't read descriptions.
The 29 supabase_* tools follow a consistent 'supabase_<verb>_<noun>' pattern. However, the 6 non-prefixed platform tools (authenticate, connect, marketplace, report_bug, show_version, toolkit_info) break this convention and are inconsistent among themselves, creating a mixed naming style across the set.
At 35 tools, the server is overweight. While the Supabase domain is broad (project management, database, edge functions, branches), the inclusion of 6 unrelated platform tools inflates the count. 29 domain tools still exceeds the comfortable 15-tool upper bound, making the surface feel bloated for agents to navigate.
The tool set covers core workflows: project lifecycle (create, get, list, pause, restore), branching (create, delete, list, merge, rebase, reset), SQL/migrations, edge functions, cost estimation, and advisors. However, there are notable gaps such as no delete_project, no update operations for projects or branches, and no deletion for edge functions, which leave lifecycle coverage incomplete.