P
Paper MCP
by @ripgrim
MCP server by ripgrim
Created 1/23/2026
Updated about 1 month ago
README
Repository documentation and setup instructions
Paper MCP Server
MCP server that connects to Paper's WebSocket API for canvas node operations.
Setup
- Install dependencies:
npm install
- Build the project:
npm run build
Configuration
- Copy
env.exampleto.env:
cp env.example .env
- Edit
.envand fill in your values (or set environment variables directly):
# Required: Full cookie string from Paper website
# Get this from your browser's developer tools -> Application -> Cookies -> paper.design
# Should include all three cookies: paper-preauth-user-info, D7pPzj4phQRAjBC01, and ph_phc_...
PAPER_COOKIES=paper-preauth-user-info=...; D7pPzj4phQRAjBC01=...; ph_phc_dYB3kPJF9dv2vFhHjPmuuU5D7yQVDFtMYJQpVEXu9Ku_posthog=...
# Optional: Document ID to connect to (defaults to example ID)
# You can get document IDs from the list_user_documents tool or from Paper URLs
PAPER_DOCUMENT_ID=01KBWAZRVPXZZ1Y0EZ5FDT7ZYW
# Optional: Enable debug logging for WebSocket messages
DEBUG=false
Getting Your Cookies
- Open Paper in your browser (https://app.paper.design)
- Open Developer Tools (F12)
- Go to Application → Cookies → https://app.paper.design
- Copy the values for these cookies:
paper-preauth-user-infoD7pPzj4phQRAjBC01ph_phc_dYB3kPJF9dv2vFhHjPmuuU5D7yQVDFtMYJQpVEXu9Ku_posthog
- Format them as:
cookie1=value1; cookie2=value2; cookie3=value3
Connecting to Cursor
Option 1: Using Cursor Settings (Recommended)
- Open Cursor Settings (Ctrl+, or Cmd+,)
- Search for "MCP" or navigate to Features → Model Context Protocol
- Click "Add MCP Server" or "Edit Config"
- Add the following configuration:
On Windows:
{
"mcpServers": {
"paper": {
"command": "node",
"args": ["C:\\Users\\grim\\paper-mcp\\dist\\index.js"],
"env": {
"PAPER_COOKIES": "your-cookie-string-here",
"PAPER_DOCUMENT_ID": "01KBWAZRVPXZZ1Y0EZ5FDT7ZYW",
"DEBUG": "false"
}
}
}
}
On macOS/Linux:
{
"mcpServers": {
"paper": {
"command": "node",
"args": ["/path/to/paper-mcp/dist/index.js"],
"env": {
"PAPER_COOKIES": "your-cookie-string-here",
"PAPER_DOCUMENT_ID": "01KBWAZRVPXZZ1Y0EZ5FDT7ZYW",
"DEBUG": "false"
}
}
}
}
- Replace the paths and cookie values with your actual values
- Restart Cursor
Option 2: Using MCP Config File
-
Find your Cursor MCP config file:
- Windows:
%APPDATA%\Cursor\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json - macOS:
~/Library/Application Support/Cursor/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json - Linux:
~/.config/Cursor/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
- Windows:
-
Add the server configuration (same JSON as above)
-
Restart Cursor
Option 3: Using dotenv (Alternative)
If you prefer using a .env file:
- Install
dotenv-cli:npm install -g dotenv-cli - Update the Cursor config to use:
{
"mcpServers": {
"paper": {
"command": "dotenv",
"args": ["-e", ".env", "--", "node", "dist/index.js"],
"cwd": "C:\\Users\\grim\\paper-mcp"
}
}
}
Usage
Once connected to Cursor, you can use the Paper tools in your conversations:
- "List my Paper documents"
- "Show me all nodes on the canvas"
- "Get details of node XYZ"
- "Create a new rectangle node at position (100, 200)"
- "Update node ABC with new properties"
- "Delete node DEF"
The server communicates via stdio using MCP JSON-RPC protocol.
Tools
list_user_documents: Get user's recent Paper documentslist_nodes: List all nodes on the canvasget_node: Get details of a specific nodecreate_node: Create a new nodeupdate_node: Update node propertiesdelete_node: Delete a node
Quick Setup
Installation guide for this server
Install Package (if required)
npx @modelcontextprotocol/server-paper-mcp
Cursor configuration (mcp.json)
{
"mcpServers": {
"ripgrim-paper-mcp": {
"command": "npx",
"args": [
"ripgrim-paper-mcp"
]
}
}
}
Author Servers
Other servers by ripgrim