Interact with the DeepWriter API, an AI-powered writing assistant.
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": "your_email@example.com"
}
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": "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"
}
}
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
Access data from the Bakaláři school system, including schedules, absences, and grades, through a standardized API.
Add smart Backup ability to coding agents like Windsurf, Cursor, Cluade Coder, etc
Integrates with Notion's API to manage personal todo list
A laundry planning assistant that uses preferences and real-time weather forecasts.
Tools for PostHog analytics, annotations, and project management.
Connect AI agents with the Feishu/Lark platform for automation, including document processing, conversation management, and calendar scheduling.
MCP server to interact with Routine: calendars, tasks, notes, etc.
A CLI tool to synchronize MCP (Model Context Protocol) settings across multiple AI coding tools.
Integrate with Smartsheet for project management and data analytics, requiring an API access token.
An MCP server to execute Coze workflows locally via a Python script.