Notion
Conecta assistentes de IA ao seu espaço de trabalho do Notion, permitindo pesquisar, criar e gerenciar conteúdo usando linguagem natural.
Documentação
🚀 Servidor MCP do Notion
Um poderoso servidor Model Context Protocol (MCP) que conecta assistentes de IA como o Claude ao seu espaço de trabalho do Notion. Pesquise, crie e gerencie seu conteúdo do Notion perfeitamente por meio de conversas em linguagem natural!
✨ O Que Isso Faz
Transforme seu assistente de IA em uma potência do Notion! Com este servidor MCP, você pode:
- 🔍 Pesquisar em todas as suas páginas e bancos de dados do Notion
- 📝 Criar novas páginas, bancos de dados e conteúdo
- ✏️ Atualizar páginas e propriedades existentes
- 📊 Consultar bancos de dados com filtros complexos
- 🔗 Gerenciar todo o seu espaço de trabalho do Notion por meio de conversas
🎯 Início Rápido
1. Pré-requisitos
- Python 3.8 ou superior
- Um espaço de trabalho do Notion
- Conta Nango (para autenticação OAuth)
- Aplicativo Claude Desktop (para integração com IA)
2. Instalação
# Clone or download the files
git clone <your-repo-url>
cd notion-mcp-server
# Install dependencies
uv sync
3. Configuração do Notion
-
Crie uma Integração do Notion:
- Acesse https://www.notion.so/my-integrations
- Clique em "Nova integração"
- Dê um nome (ex.: "Integração MCP do Claude")
- Selecione seu espaço de trabalho
- Defina as permissões:
- ✅ Ler conteúdo
- ✅ Inserir conteúdo
- ✅ Atualizar conteúdo
- Salve e copie seu token de integração
-
Compartilhe Páginas com a Integração:
- Abra qualquer página do Notion que deseja acessar
- Clique em "Compartilhar" → "Convidar"
- Selecione sua integração
- Repita para todas as páginas/bancos de dados que deseja usar
4. Configuração do Nango (OAuth)
- Crie uma Conta Nango: https://nango.dev
- Adicione a Integração do Notion no painel do Nango
- Configure o OAuth com as credenciais da sua integração do Notion
- Obtenha suas credenciais Nango (URL Base, Chave Secreta, ID da Conexão)
5. Configuração de Ambiente
Crie um arquivo .env com suas credenciais:
# Nango OAuth Configuration
NANGO_BASE_URL=https://api.nango.dev
NANGO_SECRET_KEY=your_nango_secret_key_here
NANGO_CONNECTION_ID=your_connection_id_here
NANGO_INTEGRATION_ID=notion
# Optional: Direct Notion Token (if not using Nango)
# NOTION_TOKEN=your_direct_notion_token_here
6. Configuração do Claude Desktop
Adicione isso ao arquivo de configuração do Claude Desktop:
No macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
No Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"notion": {
"command": "uvx",
"args": ["git+https://github.com/Shameerpc5029/notion-mcp.git"],
"env": {
"NANGO_BASE_URL": "https://api.nango.dev",
"NANGO_SECRET_KEY": "your_nango_secret_key",
"NANGO_CONNECTION_ID": "your_connection_id",
"NANGO_INTEGRATION_ID": "notion"
}
}
}
}
7. Teste a Conexão
# Test the server directly
python notion-mcp-server.py
# Or restart Claude Desktop and try asking:
# "Search my Notion for meeting notes"
# "Create a new task in my project database"
🛠️ Ferramentas Disponíveis
| Ferramenta | Descrição | Exemplo de Uso |
|---|---|---|
notion_search | Pesquisar em todo o conteúdo | "Encontre páginas sobre planejamento de projetos" |
notion_get_database | Obter informações do banco de dados | "Mostre-me a estrutura do meu banco de dados de tarefas" |
notion_query_database | Consultar com filtros | "Mostre tarefas incompletas com prazo para esta semana" |
notion_create_database | Criar novos bancos de dados | "Crie um banco de dados CRM com contatos" |
notion_get_page | Obter detalhes da página | "Mostre-me o conteúdo das minhas notas de reunião" |
notion_create_page | Criar novas páginas | "Adicione uma nova tarefa ao meu banco de dados de projetos" |
notion_update_page | Atualizar páginas existentes | "Marque esta tarefa como concluída" |
notion_get_block_children | Obter conteúdo da página | "Leia o conteúdo desta página" |
notion_append_blocks | Adicionar conteúdo às páginas | "Adicione notas de reunião a esta página" |
notion_get_current_user | Obter informações da integração | "Verifique o status da minha conexão com o Notion" |
💬 Exemplos de Conversas com o Claude
Depois de configurado, você pode ter conversas naturais como:
Gerenciamento de Tarefas
You: "Show me all my incomplete tasks"
Claude: [Queries your tasks database and shows open items]
You: "Create a new task called 'Review MCP integration' due next Friday"
Claude: [Creates the task with proper due date]
You: "Mark the first task as completed"
Claude: [Updates the task status to Done]
Criação de Conteúdo
You: "Create a meeting notes page for today's standup"
Claude: [Creates a new page with meeting template]
You: "Add action items from our discussion to that page"
Claude: [Appends bullet points with the action items]
Pesquisa e Organização
You: "Search for all pages mentioning 'API documentation'"
Claude: [Finds and lists relevant pages]
You: "Create a new database to track our API endpoints"
Claude: [Creates a structured database with relevant properties]
🔧 Solução de Problemas
Problemas Comuns
"Erro de Autenticação"
- Verifique se seu arquivo
.envtem as credenciais Nango corretas - Confirme se sua integração Nango está ativa
- Garanta que sua integração do Notion tenha as permissões adequadas
Erros de "Página não encontrada"
- Certifique-se de ter compartilhado a página/banco de dados com sua integração
- Verifique se o ID da página/banco de dados está correto
- Confirme se a integração tem acesso de leitura
O Claude não consegue encontrar o servidor
- Verifique se o caminho absoluto em
claude_desktop_config.jsonestá correto - Garanta que o Python esteja no PATH do seu sistema
- Tente executar o servidor manualmente primeiro para testar
"Nenhum token de acesso encontrado"
- Verifique se a conexão Nango está funcionando
- Confira se seu
NANGO_CONNECTION_IDcorresponde à sua conexão real - Tente atualizar sua integração Nango
Modo de Depuração
Execute com registro detalhado:
python notion-mcp-server.py --debug
Teste Manual
Teste funções individuais:
from notion_mcp_server import NotionClient
client = NotionClient()
user = client.get_current_user()
print(f"Connected as: {user.get('name')}")
🔒 Notas de Segurança
- Nunca envie seu arquivo
.envpara o controle de versão - Mantenha sua chave secreta Nango segura
- Compartilhe apenas as páginas do Notion que a integração precisa acessar
- Revise regularmente o acesso da sua integração nas configurações do Notion
📁 Estrutura de Arquivos
notion-mcp/
├── main.py # Main MCP server
├── pyproject.toml # Python dependencies
├── .env.example
├── .env # Your credentials (don't commit!)
├── README.md # This file
🆘 Obtendo Ajuda
- Verifique os logs - Procure mensagens de erro no Claude Desktop ou no terminal
- Verifique as permissões - Garanta que sua integração possa acessar as páginas
- Teste manualmente - Execute o servidor diretamente para isolar problemas
- Verifique o status do Notion - Às vezes, a API do Notion pode ter indisponibilidades
🎉 O Que Vem Depois?
Depois de configurado:
- Experimente criar consultas complexas em bancos de dados
- Configure fluxos de trabalho automatizados de criação de conteúdo
- Use o Claude para ajudar a organizar e reestruturar seu espaço de trabalho do Notion
- Explore opções avançadas de filtragem e classificação
📄 Licença
Este projeto é de código aberto. Sinta-se à vontade para modificar e adaptar conforme suas necessidades!
Divirta-se com o Notion e o Claude! 🎊
Feito com ❤️ para os entusiastas de produtividade com IA