mcp-supabase
README.md
# MCP Supabase Server
Este é um servidor MCP (Model Context Protocol) para interagir com o Supabase.
Ele permite listar tabelas, consultar dados, inserir, atualizar e deletar registros diretamente através de um cliente MCP como o Trae ou Claude Desktop.
## Ferramentas Disponíveis
* `list_tables`: Lista todas as tabelas no esquema `public`.
* `get_schema`: Retorna o esquema (colunas) de uma tabela específica.
* `select_data`: Seleciona dados de uma tabela com filtros opcionais.
* `tableName` (obrigatório): Nome da tabela.
* `columns` (opcional): Colunas a selecionar (padrão: `*`).
* `filter` (opcional): Objeto chave-valor para filtrar (ex: `{"status": "active"}`).
* `limit` (opcional): Limite de registros (padrão: `10`).
* `insert_data`: Insere dados em uma tabela.
* `tableName` (obrigatório): Nome da tabela.
* `data` (obrigatório): Objeto com os dados a inserir.
* `update_data`: Atualiza dados em uma tabela pelo ID.
* `tableName` (obrigatório): Nome da tabela.
* `id` (obrigatório): ID do registro.
* `data` (obrigatório): Dados a atualizar.
* `idColumn` (opcional): Nome da coluna de ID (padrão: `id`).
* `delete_data`: Deleta dados de uma tabela pelo ID.
* `tableName` (obrigatório): Nome da tabela.
* `id` (obrigatório): ID do registro.
* `idColumn` (opcional): Nome da coluna de ID (padrão: `id`).
* `run_rpc`: Executa uma função RPC (Stored Procedure).
* `functionName` (obrigatório): Nome da função.
* `params` (opcional): Parâmetros da função.
## Instalação
1. Clone este repositório.
2. Instale as dependências:
```bash
npm install
```
3. Compile o projeto:
```bash
npm run build
```
## Configuração
O servidor utiliza variáveis de ambiente para conectar ao Supabase.
* `SUPABASE_URL`: URL do seu projeto Supabase.
* `SUPABASE_KEY`: Chave de API (anon ou service_role).
## Integração com Trae / Claude Desktop
Adicione a seguinte configuração ao seu arquivo de configuração de servidores MCP:
```json
{
"mcpServers": {
"supabase": {
"command": "node",
"args": ["/caminho/para/mcp-supabase/dist/index.js"],
"env": {
"SUPABASE_URL": "sua_url_do_supabase",
"SUPABASE_KEY": "sua_chave_do_supabase"
}
}
}
}
```
Para usar via npx (se publicado):
```json
{
"mcpServers": {
"supabase": {
"command": "npx",
"args": ["-y", "mcp-supabase"],
"env": {
"SUPABASE_URL": "sua_url_do_supabase",
"SUPABASE_KEY": "sua_chave_do_supabase"
}
}
}
}
```
## Desenvolvimento
Para rodar em modo de desenvolvimento:
```bash
npm run dev
```
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues