创意写作AI辅助协议

Willow MCP是一个模型上下文协议服务器,将Claude Desktop转变为持久的创意写作伙伴,提供Google Drive文档访问、跨会话记忆保持和多视角编辑反馈功能。

  • by YourLifewithAI
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 bencorprondds-bot/Willow-MCP

使用说明

Willow MCP

一个模型上下文协议(MCP)服务器,将Claude Desktop转换为持久的创意写作伙伴。Willow允许Claude访问您的Google Drive文档,在会话之间维护内存,并提供多角度的编辑反馈。

特性

  • Google Drive集成:在共享驱动器中读取、写入、搜索和组织文档
  • 持久内存:项目、经验教训和创造性偏好在会话和机器中得以保留
  • 编辑合唱:从多个人工智能角色(严厉的批评者、支持的读者、文案编辑等)那里获得反馈
  • 跨机器同步:在家或办公室工作-您的上下文通过云存储跟踪您

建筑

┌─────────────────────┐         ┌─────────────────────┐
│   Claude Desktop    │  ←───→  │   Willow MCP        │
│   (Opus 4.5)        │  JSON   │   (this server)     │
└─────────────────────┘         └─────────────────────┘
                                         │
                    ┌────────────────────┼────────────────────┐
                    ↓                    ↓                    ↓
           ┌──────────────┐    ┌──────────────┐    ┌──────────────┐
           │ Google Drive │    │   Supabase   │    │ Anthropic API│
           │  (Documents) │    │   (Memory)   │    │   (Chorus)   │
           └──────────────┘    └──────────────┘    └──────────────┘

先决条件

  • 克劳德桌面 Claude Max订阅
  • Node.js 18岁或以上
  • A. 速贝 项目(自由层作品)
  • 具有Drive API访问权限的Google云服务帐户
  • Anthropic API键(用于合唱功能)

安装

1.克隆存储库

git clone https://github.com/bencorprondds-bot/Willow-MCP.git
cd Willow-MCP
npm install

2.设置Supabase

  1. 创建新的Supabase项目(或使用现有项目)
  2. 转到Supabase仪表板中的SQL编辑器
  3. 运行迁移脚本:
cat migrations/001_memory_schema.sql
# Copy and paste into Supabase SQL Editor, then run
  1. 从“设置”>“API”获取项目URL和服务角色密钥

3.配置环境

cp .env.example .env

编辑 .env 使用您的凭据:

# Supabase
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_KEY=your-service-role-key

# Google Drive
GOOGLE_CREDENTIALS_PATH=/path/to/service-account.json
DRIVE_FOLDER_INBOX=folder-id
DRIVE_FOLDER_IN_DEVELOPMENT=folder-id
# ... etc

# Anthropic (for chorus)
ANTHROPIC_API_KEY=sk-ant-...

4.配置克劳德桌面

编辑您的Claude Desktop配置文件:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 视窗: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "willow": {
      "command": "node",
      "args": ["/full/path/to/Willow-MCP/index.js"],
      "env": {
        "SUPABASE_URL": "https://your-project.supabase.co",
        "SUPABASE_KEY": "your-service-role-key",
        "GOOGLE_CREDENTIALS_PATH": "/path/to/credentials.json",
        "DRIVE_FOLDER_INBOX": "folder-id",
        "DRIVE_FOLDER_IN_DEVELOPMENT": "folder-id",
        "DRIVE_FOLDER_READY_FOR_REVIEW": "folder-id",
        "DRIVE_FOLDER_PUBLISHED": "folder-id",
        "DRIVE_FOLDER_CHARACTERS": "folder-id",
        "DRIVE_FOLDER_REFERENCE_DOCS": "folder-id",
        "DRIVE_FOLDER_WORLD": "folder-id",
        "ANTHROPIC_API_KEY": "sk-ant-..."
      }
    }
  }
}

5.重新启动克劳德桌面

退出并重新打开Claude Desktop。您应该在MCP服务器列表中看到“柳树”。

用法

开始会话

在每个创意环节开始时,请Claude进行初始化:

“开始一个新的创意会议”或“让我们来创作阿伦的故事”

克劳德会打电话的 memory_start_session 并检索您的上下文。

使用文档

"List my documents in the in_development folder"
"Read the latest Arun draft"
"Save this as 'Arun Chapter 2' in in_development"
"Move Arun Chapter 1 to published"

获取反馈

"Get feedback from the harsh critic on this scene"
"Run a full review with all personas"
"Give me 3 quick takes on whether this opening works"

记录你所学到的

"Record a lesson: present tense works better for Arun's internal monologue"
"Show me my creative preferences"
"What lessons have I learned about pacing?"

结束会话

"End session - we finished the first draft of chapter 2"

克劳德将为下次保存摘要。

可用工具

驱动工具

工具 说明
drive_list_files 列出文件夹中的文件
drive_read_file 读取文档内容
drive_write_file 创建或更新文档
drive_search 按名称/内容搜索文件
drive_move_file 在文件夹之间移动文件

内存工具

工具 说明
memory_start_session 使用上下文初始化会话
memory_end_session 保存会话摘要
memory_get_project 获取项目详细信息
memory_update_project 更新项目状态
memory_create_project 创建新项目
memory_list_projects 列出所有项目
memory_record_lesson 记录创意洞察力
memory_get_lessons 检索课程/偏好
memory_record_feedback 收到店铺反馈
memory_search 在所有内存中搜索

合唱工具

工具 说明
chorus_get_feedback 来自一个角色的反馈
chorus_full_review 多角色评论
chorus_quick_takes 多种快速反应
chorus_consensus 综合反馈
chorus_list_personas 列出可用人物角色

编辑人物

  • 严厉批评:识别弱点、漏洞、节奏问题
  • 支持阅读器:关注有效的方法,情感共鸣
  • copy_编辑:清晰、冗余、语法、严谨的散文
  • 一般专家:流派惯例、比喻、市场定位
  • 性格分析师:声音的一致性、动机、真实性
  • devil_advocate:挑战假设、替代解释

多机设置

两台机器都需要:

  1. 克隆此仓库
  2. 跑 npm install
  3. 相同的Claude Desktop配置(具有正确的本地路径)
  4. 相同的Supabase凭据(云同步内存)
  5. 相同的Google凭据(或具有共享驱动器访问权限的单独服务帐户)

内存通过Supabase自动同步。文档通过谷歌云端硬盘同步。

成本考虑

  • 克劳德桌面:由您的Max订阅覆盖(每月100美元)
  • 速贝:免费等级足以供个人使用
  • Google 云端硬盘:使用Google帐户免费
  • 无烟煤API:合唱团使用俳句(每条评论约0.001美元)

典型环节:合唱反馈API成本约为0.01-0.05美元。

故障排除

MCP服务器未出现在Claude Desktop中

  1. 检查配置文件路径是否正确
  2. 确保Node.js路径正确(which node)
  3. 检查Claude Desktop日志是否有错误
  4. 完全重新启动克劳德桌面

Google Drive身份验证错误

  1. 验证服务帐户是否已启用驱动器API
  2. 检查配置中的凭据文件路径
  3. 确保服务帐户可以访问共享驱动器

内存不持久

  1. 检查Supabase连接(URL和密钥)
  2. 验证表是否已创建(运行迁移)
  3. 检查辅助数据库日志是否有错误

发展

# Run in development mode with auto-reload
npm run dev

# Test tools manually
node index.js

许可证

麻省理工学院

相关