{"_id":"@bbengamin/paperclip-mcp-server","_rev":"2-d977cfcf95e0b4e822bcc3ffd7d82df6","name":"@bbengamin/paperclip-mcp-server","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@bbengamin/paperclip-mcp-server","version":"0.1.0","license":"MIT","_id":"@bbengamin/paperclip-mcp-server@0.1.0","maintainers":[{"name":"bbengamin","email":"bbengamin@gmail.com"}],"homepage":"https://github.com/bbengamin/paperclip","bugs":{"url":"https://github.com/bbengamin/paperclip/issues"},"bin":{"paperclip-mcp-server":"dist/stdio.js"},"dist":{"shasum":"02bc3a3caf39f0dc388e474d36a3ed0e9a2c2157","tarball":"https://registry.npmjs.org/@bbengamin/paperclip-mcp-server/-/paperclip-mcp-server-0.1.0.tgz","fileCount":27,"integrity":"sha512-jhVfR+q9cekC2XIVOrljfWY+ZM064VBwLdueNnnzto0WTnXq6qBgbmp10moXBDQ7I958Gj442zewcVSIlwGwDQ==","signatures":[{"sig":"MEYCIQDPrPZ4EqPzYmuVED2lhYNN8OJap9jzxw6pYUKOc1uNzgIhANtWEectOMw0/sF6iR64dYsc6m3Yg5/gBgc3CRW0iUTg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79163},"main":"./dist/index.js","type":"module","_from":"file:bbengamin-paperclip-mcp-server-0.1.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run","build":"tsc","clean":"rm -rf dist","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bbengamin","email":"bbengamin@gmail.com"},"_resolved":"/private/var/folders/p2/d7b77shd5w1g5qnb32v3vgpw0000gn/T/eec9e3a7796e6fbb511225ad03088cff/bbengamin-paperclip-mcp-server-0.1.0.tgz","_integrity":"sha512-jhVfR+q9cekC2XIVOrljfWY+ZM064VBwLdueNnnzto0WTnXq6qBgbmp10moXBDQ7I958Gj442zewcVSIlwGwDQ==","repository":{"url":"git+https://github.com/bbengamin/paperclip.git","type":"git","directory":"packages/mcp-server"},"_npmVersion":"10.9.2","description":"Model Context Protocol server for Paperclip.","directories":{},"_nodeVersion":"22.16.0","dependencies":{"zod":"^3.24.2","@paperclipai/shared":"0.3.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.8","typescript":"^5.7.3","@types/node":"^24.6.0"},"_npmOperationalInternal":{"tmp":"tmp/paperclip-mcp-server_0.1.0_1781002291027_0.09291617251307493","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@bbengamin/paperclip-mcp-server","version":"0.1.1","license":"MIT","homepage":"https://github.com/bbengamin/paperclip","bugs":{"url":"https://github.com/bbengamin/paperclip/issues"},"repository":{"type":"git","url":"git+https://github.com/bbengamin/paperclip.git","directory":"packages/mcp-server"},"type":"module","bin":{"paperclip-mcp-server":"dist/stdio.js"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"publishConfig":{"access":"public"},"dependencies":{"@modelcontextprotocol/sdk":"^1.29.0","@paperclipai/shared":"2026.608.0-canary.1","zod":"^3.24.2"},"devDependencies":{"@types/node":"^24.6.0","typescript":"^5.7.3","vitest":"^4.1.8"},"scripts":{"build":"tsc","clean":"rm -rf dist","typecheck":"tsc --noEmit","test":"vitest run"},"main":"./dist/index.js","types":"./dist/index.d.ts","_id":"@bbengamin/paperclip-mcp-server@0.1.1","description":"Model Context Protocol server for Paperclip.","_integrity":"sha512-h9y7Or22nLKcdDWkgTWj0c1daR7TPckhRs2TQ98yxmc4A1WG0AGLY/T4ZsLHnlrv5BxVnGYxct/pP7ncgjpSxQ==","_resolved":"/private/var/folders/p2/d7b77shd5w1g5qnb32v3vgpw0000gn/T/091c084a45ec490aea8455ed6a06e593/bbengamin-paperclip-mcp-server-0.1.1.tgz","_from":"file:bbengamin-paperclip-mcp-server-0.1.1.tgz","_nodeVersion":"22.16.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-h9y7Or22nLKcdDWkgTWj0c1daR7TPckhRs2TQ98yxmc4A1WG0AGLY/T4ZsLHnlrv5BxVnGYxct/pP7ncgjpSxQ==","shasum":"11a208f6eef292f51a85dfe6eac36a377b11cc6b","tarball":"https://registry.npmjs.org/@bbengamin/paperclip-mcp-server/-/paperclip-mcp-server-0.1.1.tgz","fileCount":27,"unpackedSize":79177,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHx0H+00bpYsWNzEmEBXzyUZ5KFOuIiX2TfKoYlDN/7OAiBwhwCHzBuQerrwoEsHau79ldH+ZweFtXZp9SLWmXRd1A=="}]},"_npmUser":{"name":"bbengamin","email":"bbengamin@gmail.com"},"directories":{},"maintainers":[{"name":"bbengamin","email":"bbengamin@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/paperclip-mcp-server_0.1.1_1781009482533_0.02092371980487817"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-09T10:51:30.812Z","modified":"2026-06-09T12:51:22.795Z","0.1.0":"2026-06-09T10:51:31.200Z","0.1.1":"2026-06-09T12:51:22.672Z"},"bugs":{"url":"https://github.com/bbengamin/paperclip/issues"},"license":"MIT","homepage":"https://github.com/bbengamin/paperclip","repository":{"type":"git","url":"git+https://github.com/bbengamin/paperclip.git","directory":"packages/mcp-server"},"description":"Model Context Protocol server for Paperclip.","maintainers":[{"name":"bbengamin","email":"bbengamin@gmail.com"}],"readme":"# Paperclip MCP Server\n\nModel Context Protocol server for Paperclip.\n\nThis package is a thin MCP wrapper over the existing Paperclip REST API. It does\nnot talk to the database directly and it does not reimplement business logic.\n\n## Authentication\n\nThe server reads explicit environment variables first:\n\n- `PAPERCLIP_API_URL` - Paperclip base URL, for example `http://localhost:3100`\n- `PAPERCLIP_API_KEY` - bearer token used for `/api` requests\n- `PAPERCLIP_COMPANY_ID` - default company for company-scoped tools\n- `PAPERCLIP_AGENT_ID` - optional default agent for checkout helpers\n- `PAPERCLIP_RUN_ID` - optional run id forwarded on mutating requests\n\nIf `PAPERCLIP_API_URL`, `PAPERCLIP_API_KEY`, or `PAPERCLIP_COMPANY_ID` is not set,\nthe server falls back to the active Paperclip CLI profile:\n\n- context from `~/.paperclip/context.json` or `PAPERCLIP_CONTEXT`\n- board credential from `~/.paperclip/auth.json` or `PAPERCLIP_AUTH_STORE`\n\nThe board credential is read in memory and sent only as the REST Authorization\nheader. The server does not print or copy token values.\n\nStartup fails with setup instructions when CLI context or board auth is missing.\nRun these before using a token-free MCP config:\n\n```sh\npaperclipai context set --api-base https://paperclip.right.link --company-id <company-id> --use\npaperclipai auth login --api-base https://paperclip.right.link\n```\n\n## Usage\n\n```sh\nnpx -y @bbengamin/paperclip-mcp-server\n```\n\nOr locally in this repo:\n\n```sh\npnpm --filter @bbengamin/paperclip-mcp-server build\nnode packages/mcp-server/dist/stdio.js\n```\n\nToken-free MCP host config:\n\n```json\n{\n  \"mcpServers\": {\n    \"paperclip\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@bbengamin/paperclip-mcp-server\"]\n    }\n  }\n}\n```\n\nUse explicit env vars when you want a host-local override:\n\n```json\n{\n  \"mcpServers\": {\n    \"paperclip\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@bbengamin/paperclip-mcp-server\"],\n      \"env\": {\n        \"PAPERCLIP_API_URL\": \"https://paperclip.right.link\",\n        \"PAPERCLIP_COMPANY_ID\": \"<company-id>\"\n      }\n    }\n  }\n}\n```\n\n## Tool Surface\n\nRead tools:\n\n- `paperclipMe`\n- `paperclipInboxLite`\n- `paperclipListAgents`\n- `paperclipGetAgent`\n- `paperclipListIssues`\n- `paperclipGetIssue`\n- `paperclipGetHeartbeatContext`\n- `paperclipListComments`\n- `paperclipGetComment`\n- `paperclipListIssueApprovals`\n- `paperclipListDocuments`\n- `paperclipGetDocument`\n- `paperclipListDocumentRevisions`\n- `paperclipListProjects`\n- `paperclipGetProject`\n- `paperclipGetIssueWorkspaceRuntime`\n- `paperclipWaitForIssueWorkspaceService`\n- `paperclipListGoals`\n- `paperclipGetGoal`\n- `paperclipListApprovals`\n- `paperclipGetApproval`\n- `paperclipGetApprovalIssues`\n- `paperclipListApprovalComments`\n\nWrite tools:\n\n- `paperclipCreateIssue`\n- `paperclipUpdateIssue`\n- `paperclipCheckoutIssue`\n- `paperclipReleaseIssue`\n- `paperclipAddComment`\n- `paperclipSuggestTasks`\n- `paperclipAskUserQuestions`\n- `paperclipRequestConfirmation`\n- `paperclipUpsertIssueDocument`\n- `paperclipRestoreIssueDocumentRevision`\n- `paperclipControlIssueWorkspaceServices`\n- `paperclipCreateApproval`\n- `paperclipLinkIssueApproval`\n- `paperclipUnlinkIssueApproval`\n- `paperclipApprovalDecision`\n- `paperclipAddApprovalComment`\n\nEscape hatch:\n\n- `paperclipApiRequest`\n\n`paperclipApiRequest` is limited to paths under `/api` and JSON bodies. It is\nmeant for endpoints that do not yet have a dedicated MCP tool.\n","readmeFilename":"README.md"}