mcpField
C
causly-server

causly-server

本地服务
github.com/KNIHAL其他11 天前更新

关于 causly-server

causly-server 是面向创始人及 AI Agent 的本地优先 MCP 服务,将软件交付与销售、会议、日历和提醒整合在一起。工具包按需加载,SQLite 保存长期数据,并内置安全控制。

主要功能

  1. 01代码、GitHub、CI 和部署工具
  2. 02线索调研与销售管道
  3. 03会议记录与行动项跟踪
  4. 04日历与本地提醒
  5. 05按需加载工具包和 SQLite 存储
  6. 06操作确认、工作区限制与密钥脱敏

适用场景

  1. 01运行检查、创建 PR 并确认 CI 状态
  2. 02将潜在客户公司加入销售管道
  3. 03保存会议记录并安排跟进
  4. 04查找日历空档并创建活动

MCP 相关

Agent 通过 stdio 使用 MCP 连接 causly-server。服务提供工具路由器,并支持按需加载分组工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"knihal-causly-server": {
"command": "npx",
"args": [
"-y",
"causly-server"
]
}
}
}
启动命令npx -y causly-server

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmcausly-server1.5.3

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Causly Server

这款开源 MCP 服务能让任何 AI Agent 成为你的技术联合创始人。

npm version MIT license CI Node 22.13 or newer PRs welcome

大多数 Agent 都会写文字。Causly Server 则赋予它们行动能力:它们可以交付代码、寻找客户、跟踪交易、记录会议纪要、管理日历,还能通过 Telegram 提醒你。所有这一切都能在一次对话中完成,而且完全运行在你自己的设备上。

npm install -g causly-server
causly-server init

不到十秒即可完成安装、初始化和诊断

目录

为什么选择 Causly Server

创始人的一周不只有写代码,还要寻找客户、跟进事务、记住通话中承诺过的事项,以及在交付时避免出错。Causly Server 将所有这些功能整合到一个 MCP 服务中。

  • 一个服务,助你构建、销售、运营和发展。 支持 Git、GitHub、CI 和部署,也支持潜在客户、销售管道、会议纪要、日历、提醒和 SEO。
  • 记忆不会随聊天结束而消失。 你的销售管道、会议和提醒都保存在本地 SQLite 文件中,因此 Agent 明天可以接着今天的进度继续工作。
  • 本地优先。 密钥和数据都留在你的设备上,不会经过 Causly 云端。
  • 默认安全。 高风险操作需要明确确认,文件访问范围可限制在单个文件夹内,日志中的机密信息也会被隐藏。
  • 占用的 Agent 上下文更少。 工具会按需分包加载,不会用数百条定义淹没 Agent。
  • 一条命令即可完成设置。 init 会查找 Claude Desktop、Cursor 和 Windsurf,并为它们完成配置。

快速开始

需要 Node.js 20 或更高版本。

1. 安装

npm install -g causly-server

2. 连接你的编辑器

causly-server init

init 会将 Causly Server 添加到 Claude Desktop、Cursor 和 Windsurf(你安装了哪些就添加到哪些)。它还会打印供 Claude Code 使用的单行命令。之后请重启编辑器。

3. 检查一切是否正常

causly-server doctor

4. 为你要使用的服务添加密钥(可选)

causly-server setup

文件、Git、Shell、Docker 和 Terraform 均无需密钥即可使用。只需为你需要的服务添加密钥。输入密钥时,系统会实时验证每个密钥。

有用的 init 选项:

causly-server init --client cursor                    # pick editors instead of auto-detecting
causly-server init --workspace D:\my-project          # limit file tools to one folder
causly-server init --toolsets research,pipeline,meetings   # choose which packs load at startup

你可以提出哪些要求

  • “寻找正在招聘 React 开发者的公司,并将最合适的三家加入我的销售管道。”
  • “保存我与 Acme 通话的纪要:他们下周想看演示,周五跟进。”
  • “这周有哪些待办事项?包括会议行动项和提醒。”
  • “帮我为下一场会议做好准备。”(需要 Google Calendar)
  • “转录这段录音,并列出行动项。”(需要 Groq 密钥)
  • “交付这项改动:运行检查、创建拉取请求,并在 CI 通过后告诉我。”
  • “审核此页面的 SEO,并推荐关键词。”
  • “找出周四的空闲时段并创建活动。”

工作原理

架构:你的 AI Agent 通过 MCP 与 Causly Server 通信。Causly Server 包含工具路由器、安全层、工具包和本地存储,并通过 API 调用你的服务。

你的 Agent 通过 MCP(stdio)与 Causly Server 通信。服务内部包含:

  1. 工具路由器。 search_tools、load_toolset 和 use_tool 可让 Agent 查找工具并按名称调用。工具包按需加载;即使编辑器在聊天过程中不刷新工具列表,use_tool 仍可正常工作,因此无需重启。
  2. 安全层。 包含权限级别、针对高风险操作的确认、可选的工作区限制、密钥脱敏和活动日志。
  3. 工具包。 约 230 个工具,按工具包分组(见下文)。
  4. 本地存储。 使用 SQLite 在 ~/.causly 中存储销售管道、会议和提醒,使用加密密钥,并在 ~/.causly/.env 中保存你的 API 密钥。
  5. 你的服务。 通过你自己的密钥连接 GitHub、Vercel、Docker、Terraform、Postgres、Slack、Notion、Linear、Gmail、Google Calendar、Telegram 等服务。

工具包

这些工具包默认在启动时加载:

工具包工具数功能
files9读取、写入、编辑、复制、移动和检查文件
directory5列出、创建和删除目录;搜索文件名
command1在安全检查下运行 shell 命令
project7检测项目类型和健康状况;运行构建、测试、lint 和类型检查
research2搜索网页并以纯文本形式阅读页面
leads3查找正在招聘的公司(Hacker News、远程招聘网站)和上市公司的公开联系方式
pipeline9本地销售管道:潜在客户、交易、联系人、活动日志、报告、CSV 导出
meetings9转录录音、保存摘要、跟踪行动项、关联交易和日历、准备通话
reminders3在本地保存跟进事项;查询到期事项

以下工具包按需加载,也可以通过 causly-server toolsets add <name> 将其添加到启动时加载的工具包中:

工具包工具数功能
calendar8Google Calendar:事件、空闲/忙碌状态、查找会议时段、创建、更新、删除
gmail8搜索、阅读、发送、回复和转发邮件
telegram5向自己发送提醒,读取发送给你的机器人的消息
seo4关键词建议、页面审查、草稿检查、Search Console
git20状态、差异、提交、分支、合并、暂存、标签、远程仓库
github27仓库、议题、拉取请求、评审、Actions
workflow4ship_change、fix_ci、verify_ci_fix、deploy_project
vercel11项目、部署、HTTP 健康检查
docker18构建、运行、日志、镜像、exec、Compose
terraform20初始化、计划、应用、状态、工作区、PR 计划评论
database8Postgres 和 MySQL 查询及架构检查
supabase6项目、组织和 SQL
slack8频道、消息和话题串
notion15页面、数据库、块和评论
linear7列出、读取、创建、更新和评论议题
sentry8项目和议题
secrets6加密的本地密钥存储

管理启动时加载的工具包:

causly-server toolsets                      # show what loads at startup
causly-server toolsets add github,gmail
causly-server toolsets remove seo
causly-server toolsets reset                # back to the defaults

工作流工具

单个工具是构建模块。以下工具将它们组合起来,以实现经过验证的结果:

  • ship_change:检查更改、创建分支、运行项目检查、提交、推送并创建拉取请求。
  • fix_ci:查找失败的 GitHub Actions 运行记录,并获取实际失败输出。
  • verify_ci_fix:提交并推送修复,轮询工作流并确认 CI 通过。
  • deploy_project:检查健康状况,运行测试和构建,部署并轮询,然后通过 HTTP 验证线上 URL。
flowchart TD
    A["You describe a task"] --> B["Agent edits files"]
    B --> C["ship_change runs checks"]
    C --> D["Commit, push, open PR"]
    D --> E{"CI passes?"}
    E -- "No" --> F["fix_ci gets failure logs"]
    F --> G["Agent fixes the code"]
    G --> H["verify_ci_fix pushes and confirms CI"]
    H --> E
    E -- "Yes" --> I["deploy_project deploys"]
    I --> J["HTTP verification"]
    J --> K["Shipped"]

配置

设置存储在 ~/.causly/.env 中(Windows 上为 C:\Users\<you>\.causly\.env)。请使用 CLI 管理设置,而不要手动编辑:

causly-server setup            # step by step, each key checked live
causly-server keys list        # which keys are set (never the full value)
causly-server keys set NAME    # hidden prompt
causly-server keys unset NAME
causly-server doctor --test    # check every configured service live

更改会自动生效,无需重启编辑器。

服务变量备注
GitHubGITHUB_TOKEN细粒度令牌:contents、issues、pull requests
VercelVERCEL_TOKEN部署的项目必须关联 Git
SupabaseSUPABASE_ACCESS_TOKENManagement API
SlackSLACK_BOT_TOKENsearch:read 需要用户令牌
NotionNOTION_API_KEY与集成共享每个页面或数据库
LinearLINEAR_API_KEY个人 API 密钥
SentrySENTRY_AUTH_TOKEN添加 event:write 以解决问题或发表评论
GmailGMAIL_CLIENT_ID、GMAIL_CLIENT_SECRET、GMAIL_REFRESH_TOKEN运行 causly-server login google
Google CalendarCALENDAR_REFRESH_TOKEN与 Gmail 使用相同的 Google 客户端
TelegramTELEGRAM_BOT_TOKEN、TELEGRAM_CHAT_ID使用 @BotFather 创建机器人,向它发送消息,然后通过 telegram_get_updates 查找你的 chat id
Groq(会议转录)GROQ_API_KEY提供免费套餐。只有在你确认转录后,音频才会上传到 Groq
密钥管理器SECRETS_MASTER_KEY由你生成并妥善保管的 32 字节十六进制密钥
时区(可选)CAUSLY_TIMEZONEIANA 名称,例如 Asia/Kolkata;默认使用你设备的时区

Docker 和 Terraform 不需要密钥,只需确保 CLI 位于你的 PATH 中。Postgres 和 MySQL 每次调用时都需要提供连接字符串。转录超过 25 MB 的录音需要在你的 PATH 中安装 ffmpeg。

Google 设置(Gmail、Calendar、Search Console)

Google 需要一个由你拥有的一次性 OAuth 客户端。大约需要五分钟。

  1. 打开 Google Cloud Console,创建或选择一个项目。
  2. 启用所需的 API:Gmail API、Google Calendar API,以及可选的 Google Search Console API。
  3. 打开 Google Auth Platform。在 Branding 下填写应用名称和支持邮箱。在 Audience 下选择 External,并将你自己的 Google 账号添加为测试用户。
  4. 在 Clients 下选择 Create client,然后选择 Desktop app。选择 "Web application" 客户端会导致 redirect_uri_mismatch。复制客户端 ID 和密钥。
  5. 在 Causly 中保存这些信息:运行 causly-server setup,或运行 causly-server keys set GMAIL_CLIENT_ID 和 causly-server keys set GMAIL_CLIENT_SECRET。
  6. 在浏览器中登录一次:
causly-server login google            # Gmail and Calendar
causly-server login google all        # also Search Console

避免 7 天过期。 当你的 Google 应用处于 Testing 状态时,Google 会每 7 天使登录令牌过期。你可以随时运行 causly-server login google 续期,也可以彻底避免过期:在 Google Auth Platform → Audience 中,点击 Publish app(In production)。请先完成第 3 步中的 Branding 页面。个人使用无需通过 Google 验证;登录时会看到“未经验证的应用”警告,这是你自己的客户端的正常提示:选择 Advanced,然后继续。

兼容对象

客户端设置
Claude Desktopcausly-server init
Cursorcausly-server init
Windsurfcausly-server init
Claude Codeinit 会打印命令:claude mcp add causly-server -- node <path>/index.js
任何 MCP 客户端或 Agent 框架通过 stdio 启动 causly-server

已在 Claude Desktop、Cursor 和 Windsurf 中测试(在每个客户端的真实代码仓库上调用相同的 use_tool),也已在纯 JavaScript MCP 客户端以及通过 @langchain/mcp-adapters 使用的 LangChain(JS)中测试。

一个精简的 JavaScript 自定义 Agent:

import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";

const client = new Client({ name: "my-agent", version: "1.0.0" });
// Find the install folder with: npm root -g
await client.connect(new StdioClientTransport({
  command: "node",
  args: ["<npm-root>/causly-server/index.js"],
}));

const { tools } = await client.listTools();           // search_tools, load_toolset, use_tool, ...
const result = await client.callTool({
  name: "use_tool",
  arguments: { tool: "git_status", arguments: { repo_path: "." } },
});
console.log(result.content[0].text);

安全与隐私

Causly 可以访问你的文件、代码库和基础设施,因此控制措施内置于服务本身。如需报告漏洞,请参阅 SECURITY.md。

  • 权限级别。 每个工具的权限级别为 READ、LOW、MEDIUM、HIGH 或 DESTRUCTIVE。HIGH 和 DESTRUCTIVE 操作(部署、合并、Shell 命令、删除、原始 SQL、Terraform apply 和 destroy、Docker 移除)需要显式设置 confirm: true。
  • 工作区限制。 causly-server init --workspace <folder> 会将文件和命令工具限制在一个文件夹内。
  • 命令风险检查。 会阻止清空磁盘、格式化和关机命令。强制推送、DROP TABLE、curl | bash 和 sudo 会被标记。
  • 路径保护。 会阻止在受保护的系统目录中写入和删除文件。
  • 机密信息脱敏。 在写入日志前,会对令牌、密码和 API 密钥进行脱敏。
  • 本地加密机密信息。 内置的机密信息管理器使用由你控制密钥的 AES-256-GCM。无需外部保险库。
  • 活动日志。 每次调用都会以结构化 JSONL 格式记录在 logs/activity.log 中(时间戳、操作 ID、风险级别、状态、已脱敏的输入、耗时)。

隐私。 Causly Server 不使用 Causly 云,也不需要 Causly 账户。你的流水线、会议和提醒存储在本地 SQLite 文件中,密钥保存在 ~/.causly/.env。只有当你使用自己配置的服务(例如 GitHub、Gmail、Telegram 或用于转录的 Groq)时,数据才会离开你的设备,而且只会发送到相应服务。

有关 ship_change、verify_ci_fix 和 deploy_project 的可选 BoundaryAttest 收据,请参阅文档。

命令参考

causly-server                          Start the MCP server (your editor runs this)
causly-server init                     Set up Claude Desktop, Cursor and Windsurf
    --client claude|cursor|windsurf|all
    --workspace <folder>
    --toolsets <list>
    --no-setup
causly-server status                   One screen: editors, keys, pipeline, reminders, backup, updates
causly-server doctor [--test]          Check your setup; --test also checks every key live
causly-server setup [service]          Add API keys step by step
causly-server keys list | set NAME | unset NAME | open
causly-server login google [gmail,calendar,gsc|all]
causly-server toolsets [add|remove|reset]
causly-server backup [file]            Save a copy of your pipeline, meetings and reminders
causly-server restore <file> [--yes]   Put a backup back (current data is kept as a copy)
causly-server remove [--client <name>] Remove it from your editors
causly-server --version

故障排除

请先运行 causly-server doctor。它会告诉你缺少什么。

问题解决方法
安装后无法识别 causly-server打开一个新终端以刷新 PATH。检查 npm 全局目录(npm config get prefix)是否在 PATH 中。
init 后编辑器没有显示工具完全退出编辑器(包括系统托盘),然后重新打开。
Agent 看不到尚未加载的工具让它使用 use_tool 调用该工具,或运行 causly-server toolsets add <pack>。
Gmail 或 Calendar 停止工作你的 Google 令牌已过期(测试模式下为 7 天)。运行 causly-server login google。
Google 登录时出现 redirect_uri_mismatch你的 OAuth 客户端是“Web 应用”。请改为创建 桌面应用 客户端。
提醒始终没有发送到 Telegram设置 TELEGRAM_BOT_TOKEN 和 TELEGRAM_CHAT_ID,然后运行 causly-server doctor --test。
转录大型文件失败安装 ffmpeg,并确保它在 PATH 中。超过 25 MB 的文件会先压缩。
restore 无法替换数据文件退出 Claude Desktop、Cursor 以及任何正在使用 Causly Server 的应用,然后再次运行。
文件或命令被拒绝可能启用了工作区限制。检查 causly-server doctor,或使用你想要的文件夹重新运行 init。

常见问题

免费吗? 是的。它采用 MIT 许可证,包括商业用途。你连接的服务各有自己的定价。

我的数据会发送给 Causly 吗? 不会。整个流程中不涉及 Causly 云服务。请参阅安全与隐私。

我需要配置所有密钥吗? 不需要。只需添加你所用服务的密钥。

哪些 Agent 可以使用它? 任何 MCP 客户端都可以。已使用 Claude Desktop、Cursor、Windsurf、纯 JavaScript 客户端和 LangChain (JS) 进行测试。

为什么我的 Agent 不调用工具? 该工具可能属于未加载的工具包。告诉 Agent 使用 use_tool,或通过 causly-server toolsets add <pack> 添加工具包。

如何更新? npm update -g causly-server。有新版本发布时,status 和 doctor 会告知你。

如何备份数据? causly-server backup 会将你的流水线、会议和提醒保存到文件中。causly-server restore <file> 可以恢复这些数据。

如何移除它? causly-server remove 会将其从编辑器中移除。然后运行 npm uninstall -g causly-server。

有托管版本吗? Causly Hosted 正在开发中。加入候补名单。

兼容性

状态
Node.js20 或更高版本
Windows已测试
macOS 和 Linux预计可用;尚未在真实设备上测试。欢迎反馈。
编辑器Claude Desktop、Cursor、Windsurf(已测试);Claude Code(由 init 输出命令)

已知限制

  • vercel_create_deployment 和 deploy_project 要求 Vercel 项目已关联 Git。
  • supabase_run_sql 使用 Supabase Management API;某些个人访问令牌会因 SQL 操作返回 403。
  • slack_search_messages 需要具有 search:read 权限范围的 Slack 用户令牌。
  • docker_push 要求主机上已配置注册表身份验证。
  • Sentry 的 resolve_issue、ignore_issue 和 add_comment 需要具有 event:write 权限范围的令牌。

贡献、路线图与许可证

想要基于此定制开发?

需要定制 MCP 服务、特定集成,或为你的产品或团队提供相关服务?请联系:[email protected]

Causly Hosted

不想自行运行 Causly Server?Causly Hosted 是托管版本,目前正在开发中。

加入 Causly Hosted 候补名单

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。