非官方模型上下文协议(MCP)服务器,用于与您的Bee可穿戴设备生活记录数据进行交互。更多背景信息在我的博客上。
此服务器充当桥梁,允许大型语言模型(LLMs)如Claude或自定义AI代理访问并与其存储在Bee中的个人数据进行交互,包括对话、事实、待办事项和位置历史。
**免责声明:**这是一个非官方项目,并未得到Bee的支持。请自行承担风险使用。确保您了解通过API密钥授予AI访问您个人数据的安全影响。
Bee.computer帮助您捕捉生活中的瞬间(对话、访问地点、笔记)。beemcp使这些数据可以通过模型上下文协议提供给您的AI助手。这意味着您可以向您的AI提出如下问题:
AI可以使用beemcp安全地从您的Bee.computer账户获取或修改这些信息。
您可以使用uv(推荐)或pip安装并运行beemcp。
uv是一个快速的Python包安装器和解析器。如果您已安装uv,则无需单独安装beemcp。您可以直接使用uvx运行它:
# 示例直接运行(需要配置API密钥,请参见下文)
uvx beemcp
或者,您可以使用pip安装beemcp:
pip install beemcp
安装后,您可以作为Python模块运行它:
python -m beemcp.beemcp
或者,如果安装时正确添加了入口点到系统PATH中,您可能可以直接运行它:
beemcp
beemcp需要您的Bee API密钥才能运行。切勿公开分享此密钥或将它提交到版本控制系统中。
从Bee开发者网站获取您的API密钥。
如果在Claude或其他MCP客户端中运行,您可能需要在客户端配置中提供BEE_API_TOKEN环境变量。
如果从命令行直接运行,可以在运行beemcp服务器的目录中使用.env文件提供密钥:
在您打算运行beemcp的同一目录中创建一个名为.env的文件。
向.env文件添加以下行,将your_actual_bee_api_key_here替换为您实际的密钥:
BEE_API_TOKEN="your_actual_bee_api_key_here"
或者,您可以在系统或shell中直接设置BEE_API_TOKEN环境变量:
export BEE_API_TOKEN="your_actual_bee_api_key_here"
# 现在在同一shell会话中运行服务器
uvx beemcp
如果找不到BEE_API_TOKEN,服务器将退出并显示错误。
您需要告诉您的LLM客户端(如Claude.app或Zed)如何启动并与beemcp服务器通信。
在Claude设置(settings.json)中添加以下内容:
使用uvx(推荐):
"mcpServers": {
"beemcp": {
"command": "uvx",
"args": ["beemcp"],
"env": {"BEE_API_TOKEN": "<YOUR API KEY HERE>"}
}
}
<details>
<summary>使用pip安装</summary>
"mcpServers": {
"bee": {
"command": "python",
"args": ["-m", "beemcp.beemcp"],
"env": {"BEE_API_TOKEN": "<YOUR API KEY HERE>"}
}
}
</details>
如果您打开Claude Desktop的Settings窗口并进入Developer标签页,应该能看到类似这样的内容:

在Zed的settings.json中添加以下内容:
"context_servers": [
{
"name": "beemcp",
"command": "uvx",
"args": ["beemcp"],
"env": {"BEE_API_TOKEN": "<YOUR API KEY HERE>"}
}
],
</details>
<details>
<summary>使用pip安装</summary>
"context_servers": [
{
"name": "beemcp",
"command": "python",
"args": ["-m", "beemcp.beemcp"],
"env": {"BEE_API_TOKEN": "<YOUR API KEY HERE>"}
}
],
</details>
这些是LLM可以从beemcp请求的操作。
list-all-conversations
get-conversation
id (整数): 对话的ID。list-all-user-facts
get-user-fact
id (整数): 事实的ID。record-user-fact
text (字符串): 事实的内容。update-user-fact
id (整数): 要更新的事实的ID。text (字符串): 事实的新内容。confirmed (布尔值): 用户是否确认了这个事实。confirm-user-fact
id (整数): 要确认/取消确认的事实的ID。confirmed (布尔值): 新的确认状态。delete-user-fact
id (整数): 要删除的事实的ID。list-all-todos
list-incomplete-todos
create-todo
alarm_at设置为ISO 8601格式的日期时间字符串。text (字符串): 待办事项的内容。alarm_at (字符串,可选): ISO 8601日期时间字符串(例如,“2024-12-31T23:59:00Z”)。update-todo
id (整数): 要更新的待办事项的ID。text (字符串,可选): 待办事项的新文本。completed (布尔值,可选): 新的完成状态。alarm_at (字符串,可选): 新的ISO 8601提醒时间。delete-todo
id (整数): 要删除的待办事项的ID。mark-todo-completed
id (整数): 要标记为完成的待办事项的ID。其中一些便利函数可能是多余的,但为了便于当前大型语言模型的使用而添加。
list-all-locations
get-locations-today
get-locations-week
get-locations-month
get-locations-by-time
start_time和end_time应为ISO 8601格式的日期时间字符串,格式为:2025-12-31T00:00:00Zstart_time (字符串,可选): 开始时间,ISO 8601格式。end_time (字符串,可选): 结束时间,ISO 8601格式。MCP资源提供了直接访问数据的方式,通常由LLM客户端用于上下文或缓存。许多LLM客户端并不很好地支持资源,因此即使它们可能是多余的,上面列出的“工具”仍然被提供。
bee://conversations: 列出所有对话的摘要。bee://conversations/{id}: 获取特定对话的详细信息。bee://facts: 列出所有已确认事实的摘要。bee://facts/{id}: 获取特定事实的详细信息。bee://todos: 列出所有待办事项的摘要。bee://todos/incomplete: 列出所有未完成待办事项的摘要。bee://todos/{id}: 获取特定待办事项的详细信息。bee://locations: 列出所有记录地点的摘要(按顺序组合)。bee://locations/today: 列出过去24小时的地点。bee://locations/week: 列出过去7天的地点。bee://locations/month: 列出过去30天的地点。
之后,您的手机上的Bee应用程序将建议该事实:

您可以使用MCP检查器工具(@modelcontextprotocol/inspector)直接与beemcp服务器进行交互和调试。
如果您使用uv安装并使用uvx运行:
npx @modelcontextprotocol/inspector uvx beemcp
如果您使用pip安装:
npx @modelcontextprotocol/inspector python -m beemcp.beemcp
如果您在项目目录中本地开发:
# 假设您位于beemcp项目的根目录
npx @modelcontextprotocol/inspector python -m beemcp.beemcp
# 或者如果使用uv进行开发
npx @modelcontextprotocol/inspector uv run beemcp.beemcp
尝试向您的AI助手提出如下问题以利用beemcp:
record-user-fact)update-user-fact)beemcp采用MIT许可证。您可以在许可条款下自由使用、修改和分发此软件。详情请参阅LICENSE文件(或标准MIT许可证文本)。