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
Provides secure access to Atlassian Confluence content and spaces using its REST API.
Allows AI assistants to read notes from the Bear note-taking app by connecting directly to its SQLite database.
Full implementation of Todoist Rest API for MCP server
Interact with VisiData, a terminal spreadsheet multitool for discovering and arranging tabular data in various formats like CSV, JSON, and Excel.
Provides workflow validation and best practices tools for the n8n automation platform.
Integrates with Jira's REST API to manage issues programmatically.
A text enhancement tool that transforms story content into rich, detailed narratives using advanced literary techniques and heuristic analysis.
Automate desktop actions like mouse control, keyboard input, and taking screenshots.
Dynamically search and call tools using UnifAI Network
Interact with the Taiga project management platform through an MCP bridge, allowing AI tools to manage project resources.