DeepWriter Content Generator
STDIOMCP server for creating, managing, and generating content through DeepWriter API.
MCP server for creating, managing, and generating content through DeepWriter API.
A Model Context Protocol (MCP) server for interacting with the DeepWriter API. This server provides tools for creating, managing, and generating content for DeepWriter projects through the standardized MCP interface.
To install deepwriter-mcp for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @deepwriter-ai/deepwriter-mcp --client claude
Clone the repository:
git clone https://github.com/yourusername/deepwriter-mcp.git cd deepwriter-mcp
Install dependencies:
npm install
Create a .env
file in the root directory with your DeepWriter API key:
DEEPWRITER_API_KEY=your_api_key_here
Build the project:
npm run build
Start the MCP server:
node build/index.js
The server will listen on stdin for MCP requests and respond on stdout, following the MCP stdio transport specification.
To use the DeepWriter MCP server with Claude for Desktop:
Open your Claude for Desktop configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%\Claude\claude_desktop_config.json
Add the server configuration:
{ "mcpServers": { "deepwriter": { "command": "node", "args": ["/ABSOLUTE/PATH/TO/deepwriter-mcp/build/index.js"], "env": { "DEEPWRITER_API_KEY": "your_api_key_here" } } } }
Restart Claude for Desktop to load the new configuration.
This server implements MCP protocol version 2025-03-26 with the following capabilities:
Lists all projects associated with your DeepWriter account.
{ "api_key": "your_api_key_here" }
Retrieves detailed information about a specific project.
{ "api_key": "your_api_key_here", "project_id": "your_project_id_here" }
Creates a new project with the specified title and email.
{ "api_key": "your_api_key_here", "title": "Your Project Title", "email": "[email protected]" }
Updates an existing project with the specified changes.
{ "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": "[email protected]", "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" } }
Generates content for a project using DeepWriter's AI.
{ "api_key": "your_api_key_here", "project_id": "your_project_id_here", "is_default": true // Optional, defaults to true }
Deletes a project.
{ "api_key": "your_api_key_here", "project_id": "your_project_id_here" }
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
npm run build
This will compile the TypeScript code into JavaScript in the build
directory.
You can test the MCP server locally using the provided test scripts:
node test-mcp-client.js
or
node test-deepwriter-tools.js
The project uses TypeScript with ES modules and Node16 module resolution. Key TypeScript settings:
{ "compilerOptions": { "target": "ES2022", "module": "Node16", "moduleResolution": "Node16", "outDir": "./build", "strict": true } }
API Key Issues:
.env
fileConnection Problems:
MCP Protocol Issues:
Parameter Naming:
project_id
) and camelCase (projectId
) parameter namesFor detailed logs, run the server with the DEBUG environment variable:
DEBUG=deepwriter-mcp:* node build/index.js
You can also check Claude for Desktop logs at:
~/Library/Logs/Claude/mcp*.log
%APPDATA%\Claude\logs\mcp*.log
We welcome contributions from the community! Here's how you can help:
Bug Reports
Feature Requests
Security Issues
Before Starting
Development Process
main
PR Requirements
Code Review
Code Style
Testing
Documentation
Commit Messages