Skip to main content
Glama
README.md
# NanoBanana MCP - Gerador de Imagens com IA 🍌

MCP Server para gerar imagens usando Google Imagen diretamente no Claude Desktop.

## 🚀 Recursos

- ✅ Geração automática de imagens com Google Imagen
- ✅ Salvamento automático em pasta padrão do usuário
- ✅ Suporte a múltiplas imagens (1-4)
- ✅ Escolha de aspect ratio (1:1, 16:9, 9:16, etc)
- ✅ Configuração via variáveis de ambiente

## 📦 Instalação

### Pré-requisitos

- Node.js (versão 14 ou superior)
- NPM ou Yarn
- Claude Desktop instalado
- API Key do Google Cloud (Generative AI)

### 1. Clone o Repositório

```bash
git clone https://github.com/seu-usuario/nanobanana-mcp.git
cd nanobanana-mcp
```

### 2. Instale as Dependências

```bash
npm install
```

### 3. Configure as Credenciais

Copie o arquivo `.env.example` para `.env`:

```bash
cp .env.example .env
```

Edite o arquivo `.env` e adicione sua API Key do Google:

```env
GOOGLE_API_KEY=sua_api_key_aqui
GOOGLE_PROJECT_NUMBER=seu_project_number_aqui
```

**Como obter sua API Key:**
1. Acesse [Google AI Studio](https://makersuite.google.com/app/apikey)
2. Crie uma nova API Key
3. Copie e cole no arquivo `.env`

### 4. Compile o Projeto

```bash
npm run build
```

### 5. Configure no Claude Desktop

#### Instalação Automática (Recomendado)

**Windows:**
```bash
install.bat
```

**macOS/Linux:**
```bash
chmod +x install.sh
./install.sh
```

#### Instalação Manual

Localize o arquivo de configuração do Claude Desktop:

- **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
- **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
- **Linux**: `~/.config/Claude/claude_desktop_config.json`

Adicione a seguinte configuração (ajuste o caminho para o local onde você clonou o projeto):

```json
{
  "mcpServers": {
    "nanobanana": {
      "command": "node",
      "args": [
        "/caminho/completo/para/nanobanana-mcp/dist/index.js"
      ]
    }
  }
}
```

**Exemplo de caminho completo:**
- Windows: `"C:\\Users\\SeuUsuario\\projetos\\nanobanana-mcp\\dist\\index.js"`
- macOS/Linux: `"/home/seuusuario/projetos/nanobanana-mcp/dist/index.js"`

### 6. Reinicie o Claude Desktop

Feche completamente o Claude Desktop e abra novamente.

## 🎨 Como Usar

Após a instalação, você pode usar comandos naturais no Claude Desktop:

### Uso Simples
```
Gere uma imagem de uma banana dançando
```

O Claude vai automaticamente usar o MCP para gerar e salvar a imagem!

### Uso com Opções Personalizadas
```
Gere 3 imagens de um gato astronauta com aspect ratio 16:9
```

### Parâmetros Disponíveis:

- **prompt** (obrigatório): Descrição da imagem que você quer gerar
- **aspectRatio** (opcional): Proporção da imagem
  - Exemplos: "1:1", "16:9", "4:3", "9:16"
  - Padrão: "1:1"
- **numberOfImages** (opcional): Quantas imagens gerar (1-4)
  - Padrão: 1
- **outputDir** (opcional): Pasta onde salvar as imagens
  - Se não especificado, usa `./nanobanana-images` no projeto atual

## 📁 Onde as Imagens São Salvas?

**IMPORTANTE**: As imagens são salvas **no projeto que você tem aberto** na sua IDE/editor!

Por padrão, cria uma pasta `nanobanana-images` dentro do seu projeto atual:

- Se você está trabalhando em `C:\meus-projetos\app-web\`, as imagens vão para:
  - `C:\meus-projetos\app-web\nanobanana-images\`

- Se você está trabalhando em `~/projetos/mobile-app/`, as imagens vão para:
  - `~/projetos/mobile-app/nanobanana-images/`

**Como funciona**: O MCP detecta automaticamente onde você está trabalhando (diretório atual) e salva as imagens lá.

Você pode personalizar o diretório padrão adicionando ao `.env`:
```env
OUTPUT_DIR=/caminho/customizado/para/imagens
```

As imagens são nomeadas automaticamente com timestamp:
```
nanobanana_2025-12-20T00-41-23-456Z_1.png
```

## 🔧 Comandos NPM

```bash
# Compilar o projeto
npm run build

# Executar em modo desenvolvimento
npm run dev

# Executar após compilar
npm start
```

## ❓ Solução de Problemas

### O MCP não aparece no Claude Desktop

1. Verifique se o caminho no `claude_desktop_config.json` está correto e completo
2. Certifique-se de que o projeto foi compilado (`npm run build`)
3. Verifique se a pasta `dist` foi criada
4. Reinicie completamente o Claude Desktop

### Erro ao gerar imagens

1. Verifique sua conexão com internet
2. Confirme que a API key no `.env` está válida
3. Verifique se você tem créditos na sua conta Google Cloud
4. Verifique os logs no terminal do Claude Desktop

### Imagens não estão sendo salvas

1. Verifique as permissões da pasta de destino
2. Certifique-se de que há espaço em disco
3. Tente especificar um `outputDir` diferente
4. Verifique os logs para mensagens de erro

### API Key não está sendo lida

1. Certifique-se de que o arquivo `.env` está na raiz do projeto
2. Verifique se não há espaços antes ou depois da API key
3. Recompile o projeto após editar o `.env` (`npm run build`)

## 🎯 Exemplos de Prompts

- "Uma banana surfando em ondas gigantes"
- "Gato astronauta explorando Marte com estilo cyberpunk"
- "Paisagem montanhosa ao pôr do sol em estilo aquarela"
- "Robô futurista tocando violino em uma floresta mágica"
- "Foto realista de iPhone de uma mulher na Avenida Paulista em São Paulo"

## 🔄 Atualização

Para atualizar o MCP para uma nova versão:

```bash
git pull
npm install
npm run build
```

Depois reinicie o Claude Desktop.

## 🔓 Desinstalar

Para remover o MCP do Claude Desktop:

1. Abra `claude_desktop_config.json`
2. Remova a seção `"nanobanana"` de `mcpServers`
3. Reinicie o Claude Desktop

## 📝 Desenvolvimento

### Estrutura do Projeto

```
nanobanana-mcp/
├── src/
│   └── index.ts          # Código principal do MCP
├── dist/                 # Código compilado (gerado)
├── .env                  # Suas credenciais (não commitar!)
├── .env.example          # Template de credenciais
├── .gitignore           # Arquivos ignorados pelo git
├── package.json         # Dependências do projeto
├── tsconfig.json        # Configuração TypeScript
├── install.sh           # Instalador automático (Unix)
├── install.bat          # Instalador automático (Windows)
└── README.md            # Este arquivo
```

### Contribuindo

Contribuições são bem-vindas! Por favor:

1. Faça um fork do projeto
2. Crie uma branch para sua feature (`git checkout -b feature/MinhaFeature`)
3. Commit suas mudanças (`git commit -m 'Adiciona MinhaFeature'`)
4. Push para a branch (`git push origin feature/MinhaFeature`)
5. Abra um Pull Request

## 📄 Licença

Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

## 🤝 Suporte

Se você encontrar problemas ou tiver dúvidas:

1. Verifique a seção de [Solução de Problemas](#-solução-de-problemas)
2. Abra uma [Issue](https://github.com/seu-usuario/nanobanana-mcp/issues)
3. Consulte a [documentação do MCP](https://modelcontextprotocol.io/)

---

**Criado com Claude Code** 🤖

Powered by Google Imagen AI