Planhat MCP

io.github.da-troll由 GitHub 账号 da-troll 发布v2.1.0更新于 Oct 24, 2026

Connect Planhat CRM to Claude and other MCP clients with 60 local tools across 12 resource types.

已验证STDIO仅桌面效率与工作流商业与电商

概览

AI 生成的概览

一个本地 MCP 服务器,让 AI 助手读取和更新 Planhat CRM 记录,包括公司、联系人、商机、工单、任务和发票。

可以做什么
它提供 60 个本地工具,覆盖 12 种 Planhat 资源类型:公司、联系人、商机、笔记、会话、用户、资产、问题、工单、任务、许可和发票。每种资源都支持同样的五个操作:list、get、create、update 和 delete。因此助手可以在对话中查询客户信息、创建跟进任务或直接修改记录。工具带有标准的 MCP 注解,例如 readOnlyHint 和 destructiveHint。
适用场景
当你希望 AI 客户端直接处理 Planhat 客户数据时使用,例如列出本季度续约的客户,或记录跟进任务。它面向希望用标准 API 令牌建立直接本地连接、而不使用托管连接器的用户。如果你不使用 Planhat,它没有用处。
运行要求
通过 stdio 在本地运行。一键安装包安装到 Claude Desktop(仅限桌面端);手动安装需要 Node.js 18 或更高版本。需要 Planhat API 令牌,在 Planhat 的 Settings > Service Accounts (Private Apps) > API Access Token 中创建,且需要管理员权限。安装包中令牌保存在系统钥匙串;手动安装则写入 .env 文件中的 PLANHAT_TOKEN。需要访问 Planhat API 的网络连接。
安装前请注意
该令牌可访问你的 Planhat 客户数据,请像对待密码一样保管。工具可以创建、更新和删除记录;可选开关 PLANHAT_READ_ONLY=1 和 PLANHAT_DISABLE_DELETE=1,或使用只读令牌,可限制助手能做的更改。客户端是否在破坏性操作前提示由客户端决定,因此开关和令牌权限才是硬性限制。同时安装安装包和旧的手动配置项会导致每个工具出现两次。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Planhat MCP,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

[Planhat MCP Logo]

Planhat MCP

[CI status] [Latest release] [Node 18 or newer] [MCP compatible] [MIT license]

Talk to your Planhat customer data in plain English.

A local Model Context Protocol server with 60 tools for reading and updating Planhat from your AI client.

[!NOTE] When hosted connector OAuth or custom connector setup gets in the way, Planhat MCP gives you a direct local connection using a standard API token. Nothing to host and no third-party service between your AI and customer data.

See it in action

You: "Which companies have licenses renewing this quarter?"

Claude: Queries Planhat through the local MCP server and returns the matching companies with their renewal details.

Ask Claude to list records, inspect customer context, create follow-up tasks, or update Planhat directly from the conversation.

Install in Claude Desktop

Download one file, double-click it, paste your token. No terminal, no config files, no code, and nothing to install first.

  1. Download the .mcpb file.
  2. Double-click the downloaded file. Claude Desktop opens an install pop-up.
  3. Review the pop-up and click Install.
  4. Create a Planhat API token if you don't have one: in Planhat, go to Settings > Service Accounts (Private Apps) > API Access Token. Admin access is required.
  5. Paste the token into the token field. It is stored in your system keychain, never in a file on disk.
  6. Optional: tick Read-only mode or Disable delete tools to limit what the AI can do.
  7. Ask Claude: "List my top 3 Planhat companies." An answer means you are done.

If double-clicking does not open Claude Desktop, use Settings > Extensions > Advanced settings > Install Extension and select the downloaded file.

Each release also includes planhat-mcp.mcpb.sha256. To verify a download on macOS or Linux, place both files in the same directory and run:

bash
shasum -a 256 -c planhat-mcp.mcpb.sha256

Switching from a manual install? Remove the old planhat entry from claude_desktop_config.json first, or you'll see two copies of every tool.

Manual install

For MCP clients other than Claude Desktop, or if you prefer running from a checkout. Requires Node.js 18 or newer.

1. Get the code and build the server:

bash
git clone https://github.com/da-troll/Planhat-MCP.git ~/planhat-mcpcd ~/planhat-mcpnpm installnpm run build

2. Add your Planhat token:

bash
cp .env.example .envopen .env        # paste your token after PLANHAT_TOKEN= and save

The token stays in that one file on your machine. Treat it like a password.

3. Register the server in your client's MCP config (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json), replacing YOUR-USERNAME:

json
{  "mcpServers": {    "planhat": {      "command": "node",      "args": ["/Users/YOUR-USERNAME/planhat-mcp/dist/server.js"]    }  }}

Restart the client and test with the same question as above.

What Claude can do with it

60 tools across 12 Planhat resource types. Every resource supports the same five verbs: list, get, create, update, delete.

ResourceWhat it is
CompaniesYour customer accounts
Contacts (end users)People at those customers
OpportunitiesSales/expansion deals
NotesLogged notes on an account
ConversationsAll logged touchpoints: emails, calls, notes, tickets
UsersYour own team members in Planhat
AssetsProducts/objects tied to a customer
IssuesBugs and feature requests
TicketsSupport tickets
TasksTo-dos and scheduled activities
LicensesRecurring revenue records
InvoicesBilling records

Claude only ever does what you ask, and the token you create controls what it can touch. A read-only token makes the whole connector read-only.

Optional hardening

Two switches cap what any connected AI can ever do, no matter what it's asked. Bundle installs get them as checkboxes in the install pop-up; manual installs add either to the .env file:

SettingEffect
PLANHAT_READ_ONLY=1Only the list/get tools exist; nothing in Planhat can be changed.
PLANHAT_DISABLE_DELETE=1Everything works except deleting records.

Every tool also carries the standard MCP annotations (readOnlyHint, destructiveHint), so clients that calibrate their permission prompts per tool (asking before destructive calls, auto-approving reads) get the right signals. Whether and when to prompt is always the client's decision; the switches above and the permissions on the Planhat token itself (see SECURITY.md) are the hard limits.

Repository layout

planhat-mcp/├── README.md                  ← you are here├── manifest.json              ← .mcpb bundle definition (one-click install)├── package.json               ← dependencies, scripts, version├── package-lock.json          ← pinned dependency versions├── tsconfig.json              ← TypeScript config├── .env.example               ← token template for manual installs├── .mcpbignore                ← what stays out of the bundle├── src/│   ├── index.ts               ← entry point: load config, serve over stdio│   ├── server.ts              ← registers tools, applies gates + annotations│   ├── tools.ts               ← all 60 tool definitions│   ├── http.ts                ← Planhat REST client│   └── env.ts                 ← .env loader for manual installs├── tests/│   ├── tools.test.ts          ← offline tests for all 60 tools│   └── http.test.ts           ← HTTP layer: timeout, errors, delete cases├── AGENTS.md                  ← handbook for AI coding agents├── CLAUDE.md → AGENTS.md      ← same file, Claude's preferred name├── LICENSE                    ← MIT├── CHANGELOG.md               ← release history├── SECURITY.md                ← token handling & reporting issues├── CONTRIBUTING.md            ← how to add tools or fix bugs└── .github/workflows/    ├── ci.yml                 ← typecheck + tests + bundle gate on every push    └── release.yml            ← GitHub release with .mcpb asset on version tags

The shipped bundle contains just five files: manifest.json, dist/server.js (one dependency-free build), assets/icon.png, LICENSE and README.md.

Troubleshooting

SymptomLikely cause & fix
Double-clicking the .mcpb does nothing, or Install is greyed outUpdate to a recent Claude Desktop; older builds predate one-click .mcpb extensions. You can also install from Settings > Extensions > Advanced > Install Extension.
Every Planhat tool appears twiceThe bundle and an old manual config entry are both installed. Remove mcpServers.planhat from claude_desktop_config.json.
Claude says it has no Planhat toolsClaude Desktop only reads its config on launch. Quit it fully, reopen, and check the JSON has no trailing commas.
HTTP 401 Unauthorized in a tool resultThe token is wrong, expired, or was rotated. Paste a fresh one.
PLANHAT_TOKEN is not setBundle installs: re-open the extension's settings and fill in the token. Manual installs: there is no .env beside the server, so repeat manual step 2.
command not found: node (manual install)Install Node.js 18 or newer, or point command at the full path to your node binary.
Tool works but returns []Usually not an error: that Planhat resource is genuinely empty for your filters.

For engineers

bash
npm install          # install dependenciesnpm test             # offline test suite (never touches the live API)npm run typecheck    # TypeScript type checkingnpm run build        # produce dist/server.jsnpm start            # run the built server over stdio

Build the one-click bundle locally with npm run build && npx -y @anthropic-ai/[email protected] pack . planhat.mcpb.

Architecture notes, API quirks, and contribution rules live in AGENTS.md and CONTRIBUTING.md. Endpoint paths were verified against the live Planhat API in July 2026. Notably, Planhat has no /notes or /activities REST endpoints; notes and tickets are /conversations under the hood (see AGENTS.md for the full story).

License

MIT. Do what you like, no warranty.

来源:README.md,提交 2011de5

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v2.1.0最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分