DeepWriter
Interaja com a API do DeepWriter, um assistente de escrita com inteligência artificial.
Documentação
Servidor MCP DeepWriter
Site oficial: DeepWriter.com
Documentação adicional: Documentos de acesso à API DeepWriter
Um servidor Model Context Protocol (MCP) para interagir com a API DeepWriter. Este servidor fornece ferramentas para criar, gerenciar e gerar conteúdo para projetos DeepWriter por meio da interface padronizada do MCP.
Recursos
- Gerenciamento de projetos: criar, listar, atualizar e excluir projetos
- Geração de conteúdo: gerar conteúdo para projetos usando a IA do DeepWriter
- Detalhes do projeto: recuperar informações detalhadas sobre projetos
- Integração MCP: integrar-se perfeitamente ao Claude e a outros assistentes de IA compatíveis com MCP
- Recursos padrão do MCP: implementa a versão 2025-03-26 do protocolo MCP
- Suporte a transporte: transporte stdio para comunicação local entre processos
Pré-requisitos
- Node.js (v17 ou superior)
- npm (v6 ou superior)
- Chave da API DeepWriter
- Um cliente compatível com MCP (ex.: Claude for Desktop)
Instalação
Instalação via Smithery
Para instalar o deepwriter-mcp para Claude Desktop automaticamente via Smithery:
npx -y @smithery/cli install @deepwriter-ai/deepwriter-mcp --client claude
Instalação manual
-
Clone o repositório:
git clone https://github.com/yourusername/deepwriter-mcp.git cd deepwriter-mcp -
Instale as dependências:
npm install -
Crie um arquivo
.envno diretório raiz com sua chave da API DeepWriter:DEEPWRITER_API_KEY=your_api_key_here -
Compile o projeto:
npm run build
Uso
Iniciando o servidor
Inicie o servidor MCP:
node build/index.js
O servidor escutará na entrada padrão (stdin) por requisições MCP e responderá na saída padrão (stdout), seguindo a especificação de transporte stdio do MCP.
Conectando ao Claude for Desktop
Para usar o servidor MCP DeepWriter com o Claude for Desktop:
-
Abra o arquivo de configuração do Claude for Desktop:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
Adicione a configuração do servidor:
{ "mcpServers": { "deepwriter": { "command": "node", "args": ["/ABSOLUTE/PATH/TO/deepwriter-mcp/build/index.js"], "env": { "DEEPWRITER_API_KEY": "your_api_key_here" } } } } -
Reinicie o Claude for Desktop para carregar a nova configuração.
Suporte ao protocolo MCP
Este servidor implementa a versão 2025-03-26 do protocolo MCP com os seguintes recursos:
- Transporte: transporte stdio para comunicação local entre processos
- Ferramentas: suporte completo para todas as operações da API DeepWriter
- Registro de logs: registro estruturado com níveis configuráveis
Ferramentas disponíveis
1. listProjects
Lista todos os projetos associados à sua conta DeepWriter.
{
"api_key": "your_api_key_here"
}
2. getProjectDetails
Recupera informações detalhadas sobre um projeto específico.
{
"api_key": "your_api_key_here",
"project_id": "your_project_id_here"
}
3. createProject
Cria um novo projeto com o título e e-mail especificados.
{
"api_key": "your_api_key_here",
"title": "Your Project Title",
"email": "your_email@example.com"
}
4. updateProject
Atualiza um projeto existente com as alterações especificadas.
{
"api_key": "your_api_key_here",
"project_id": "your_project_id_here",
"updates": {
"title": "Updated Project Title",
"prompt": "Updated project prompt",
"author": "Updated author name",
"email": "updated@email.com",
"model": "Updated model name",
"outline_text": "Updated outline",
"style_text": "Updated style guide",
"supplemental_info": "Updated additional information",
"work_description": "Updated work description",
"work_details": "Updated work details",
"work_vision": "Updated work vision"
}
}
5. generateWork
Gera conteúdo para um projeto usando a IA do DeepWriter.
{
"api_key": "your_api_key_here",
"project_id": "your_project_id_here",
"is_default": true // Optional, defaults to true
}
6. deleteProject
Exclui um projeto.
{
"api_key": "your_api_key_here",
"project_id": "your_project_id_here"
}
Desenvolvimento
Estrutura do projeto
deepwriter-mcp/
├── src/
│ ├── index.ts # Main entry point and MCP server setup
│ ├── api/
│ │ └── deepwriterClient.ts # DeepWriter API client
│ └── tools/ # MCP tool implementations
│ ├── createProject.ts
│ ├── deleteProject.ts
│ ├── generateWork.ts
│ ├── getProjectDetails.ts
│ ├── listProjects.ts
│ └── updateProject.ts
├── build/ # Compiled JavaScript output
├── test-deepwriter-tools.js # Tool testing script
├── test-mcp-client.js # MCP client testing script
└── tsconfig.json # TypeScript configuration
Compilação
npm run build
Isso compilará o código TypeScript em JavaScript no diretório build.
Testes
Você pode testar o servidor MCP localmente usando os scripts de teste fornecidos:
node test-mcp-client.js
ou
node test-deepwriter-tools.js
Configuração do TypeScript
O projeto usa TypeScript com módulos ES e resolução de módulos Node16. Principais configurações do TypeScript:
{
"compilerOptions": {
"target": "ES2022",
"module": "Node16",
"moduleResolution": "Node16",
"outDir": "./build",
"strict": true
}
}
Solução de problemas
Problemas comuns
-
Problemas com a chave da API:
- Certifique-se de que sua chave da API DeepWriter esteja configurada corretamente no arquivo
.env - Verifique se a chave da API está sendo passada corretamente nos argumentos das ferramentas
- Verifique se a chave da API tem as permissões necessárias
- Certifique-se de que sua chave da API DeepWriter esteja configurada corretamente no arquivo
-
Problemas de conexão:
- Certifique-se de que a API DeepWriter esteja acessível a partir da sua rede
- Verifique se há configurações de firewall ou proxy que possam bloquear conexões
- Verifique se sua conexão de rede está estável
-
Problemas com o protocolo MCP:
- Certifique-se de estar usando um cliente MCP compatível
- Verifique se o transporte stdio está configurado corretamente
- Verifique se o cliente suporta a versão 2025-03-26 do protocolo
-
Nomenclatura de parâmetros:
- O servidor suporta nomes de parâmetros em snake_case (
project_id) e camelCase (projectId) - Todos os parâmetros diferenciam maiúsculas de minúsculas
- Parâmetros obrigatórios não podem ser nulos ou indefinidos
- O servidor suporta nomes de parâmetros em snake_case (
Depuração
Para logs detalhados, execute o servidor com a variável de ambiente DEBUG:
DEBUG=deepwriter-mcp:* node build/index.js
Você também pode verificar os logs do Claude for Desktop em:
- macOS:
~/Library/Logs/Claude/mcp*.log - Windows:
%APPDATA%\Claude\logs\mcp*.log
Contribuindo
Aceitamos contribuições da comunidade! Veja como você pode ajudar:
Enviando problemas (issues)
-
Relatórios de bugs
- Use o rastreador de issues do GitHub
- Inclua etapas detalhadas para reproduzir o bug
- Forneça os detalhes do seu ambiente (versão do Node.js, SO, etc.)
- Inclua logs e mensagens de erro relevantes
- Use o modelo de relatório de bug fornecido
-
Solicitações de recursos
- Use o rastreador de issues do GitHub com o rótulo "enhancement"
- Descreva claramente o recurso e seu caso de uso
- Explique como ele beneficia o projeto
- Use o modelo de solicitação de recurso fornecido
-
Problemas de segurança
- Para vulnerabilidades de segurança, NÃO crie uma issue pública
- Envie um e-mail para security@deepwriter.com
- Trabalharemos com você para resolver a vulnerabilidade
- Seguimos práticas de divulgação responsável
Pull Requests
-
Antes de começar
- Verifique issues e PRs existentes para evitar trabalho duplicado
- Para mudanças significativas, abra uma issue primeiro para discutir
- Leia nossos padrões de codificação e diretrizes de implementação do MCP
-
Processo de desenvolvimento
- Faça um fork do repositório
- Crie um novo branch a partir de
main - Siga nosso estilo e convenções de codificação
- Adicione testes para novos recursos
- Atualize a documentação conforme necessário
-
Requisitos do PR
- Inclua uma descrição clara das alterações
- Vincule issues relacionadas
- Adicione ou atualize testes
- Atualize a documentação
- Siga as convenções de mensagens de commit
- Assine o Contrato de Licença de Contribuidor (CLA)
-
Revisão de código
- Todos os PRs exigem pelo menos uma revisão
- Atenda ao feedback da revisão
- Mantenha os PRs focados e com tamanho razoável
- Seja responsivo a perguntas e comentários
Diretrizes de desenvolvimento
-
Estilo de código
- Siga as melhores práticas do TypeScript
- Use ESLint com nossa configuração
- Formate o código com Prettier
- Siga as especificações do protocolo MCP
-
Testes
- Escreva testes unitários para novos recursos
- Mantenha ou melhore a cobertura de testes
- Teste a conformidade com o protocolo MCP
- Teste com várias versões do Node.js
-
Documentação
- Atualize o README.md para alterações visíveis ao usuário
- Adicione comentários JSDoc para código novo
- Atualize a documentação da API
- Inclua exemplos para novos recursos
-
Mensagens de commit
- Siga o formato de commits convencionais
- Referencie issues quando apropriado
- Mantenha os commits focados e atômicos
- Use mensagens claras e descritivas
Obtendo ajuda
- Junte-se à nossa comunidade no Discord
- Consulte a documentação
- Faça perguntas nas discussões do GitHub
- Participe das nossas reuniões mensais de contribuidores
Segurança
- O servidor valida todas as entradas antes do processamento
- As chaves da API nunca são registradas em logs ou expostas em mensagens de erro
- O transporte stdio fornece isolamento de processos
- Todas as chamadas externas à API usam HTTPS
- A validação de entrada previne ataques de injeção
