mcpField
O
Open Brain

Open Brain

远程服务
github.com/Bobby-cell-commits记忆与知识828 周前更新
代码仓库

关于 Open Brain

Open Brain 是面向希望通过 AI 客户端记录和检索想法用户的可自托管 MCP 记忆服务。它以 PostgreSQL 和 pgvector 支持的图结构存储记忆,并提供语义搜索、自动去重和后台综合整理。

主要功能

  1. 01语义化记录与搜索想法
  2. 02按元数据筛选浏览想法
  3. 03在图中关联想法和命名实体
  4. 04识别重复项并检查过时记忆
  5. 05生成每周回顾并重现相关想法
  6. 06从 RSS 和论文来源摄取内容

适用场景

  1. 01保存会议记录并按含义检索
  2. 02每周回顾反复出现的主题和待办事项
  3. 03关联不同记忆中的想法与人物
  4. 04将研究内容导入个人记忆库

MCP 相关

提供 MCP 工具,用于记录、搜索、浏览和分析想法。MCP 客户端通过个人访问密钥连接已部署的端点。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://{supabase_project_ref}.supabase.co/functions/v1/open-brain-mcp/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

全部服务地址
Streamable HTTPhttps://{supabase_project_ref}.supabase.co/functions/v1/open-brain-mcp/mcp需要授权

工具

详细介绍

Open Brain

基于图结构的 MCP 记忆。LongMemEval 基准测试得分为 37.2%——大多数记忆系统不会公布这项基准测试的成绩。

面向 MCP 客户端(Claude、ChatGPT,以及任何支持 MCP 的助手)的可自托管记忆服务。想法从 Telegram、流水线或直接采集入口流入,并存入采用 Newman-IDF 加权的实体图,而非扁平文档存储。后台会自动运行 Dream 周期:消除近似重复项、追踪主题漂移、综合不同集群中的见解,并归档过时内容。17 个 MCP 工具。PostgreSQL + pgvector。你的数据由你掌控。

工作原理

flowchart LR
    TG[Telegram Message] --> TGBot[telegram-bot\nEdge Function]
    MCP[AI Client\nClaude/ChatGPT] --> MCPServer[open-brain-mcp\nEdge Function]
    Pipeline[RSS/HF Papers/\nEmergent Mind] --> RunPipeline[run-pipeline\nEdge Function]
    TGBot --> OR1[OpenRouter\nEmbedding + Metadata]
    MCPServer --> OR2[OpenRouter\nEmbedding + Search]
    RunPipeline --> OR3[OpenRouter\nTriage + Embed]
    OR1 --> DB[(Postgres\n+ pgvector)]
    OR2 --> DB
    OR3 --> DB
    MCPServer --> DB
    TGBot --> TGReply[Telegram Reply\nwith Metadata]
采集路径

你向 Telegram 机器人发送消息时,telegram-bot Edge Function 会通过 webhook 接收消息。它会并行将消息发送到 OpenRouter,完成两项任务:生成向量嵌入(对含义的数值表示),并提取主题、提及的人物、行动项、主题、质量评分和命名实体等元数据。系统会检查想法是否存在语义重复项,将其存入数据库并自动关联相关想法,随后机器人会回复已采集内容的摘要。

流水线路径

run-pipeline Edge Function 会自动采集 RSS 源(AI 新闻简报)、Hugging Face 每日论文和 Emergent Mind(热门 arXiv 论文)中的想法。每个条目都会经过相关性筛选、嵌入、去重,然后存储。通过 GitHub Actions(Supabase 部署)或内置的 cron 容器(Docker 部署)按计划运行。

检索路径

任何通过 MCP(Model Context Protocol)连接的 AI 客户端,都可以使用语义搜索按含义查找想法,按筛选条件(类型、主题、人物、时间)浏览,获取汇总统计数据,或请求主题周报。open-brain-mcp Edge Function 会处理这些请求,并使用你的个人访问密钥进行身份验证。

知识图谱

每个想法都会根据向量相似度自动关联到相关想法。相似度高于 0.80 的关联会由大模型归类为不同类型的关系(扩展、矛盾、作为证据支持、取代)。系统会提取命名实体(人物、工具、项目、组织),并将其解析到共享实体图中。共现边会追踪一段时间内哪些想法被同时检索,并根据实际使用模式强化关联。

存储

所有数据都存储在 Postgres 中,并通过 pgvector 实现快速相似度搜索。想法连同其嵌入(1536 维向量)、元数据、类型化关联和实体引用一并存储。你可以部署在 Supabase(托管服务)上,也可以通过 Docker Compose 自托管。

部署选项

选择运行 Open Brain 的方式:

Supabase(托管)Docker Compose(自托管)
设置关联项目 + 运行脚本cp .env.example .env + ./start.sh
基础设施由 Supabase 管理在你的计算机/服务端上运行
定时调度GitHub Actions内置 cron 容器
费用Supabase 免费套餐 + OpenRouter仅需 OpenRouter
指南继续阅读Docker 指南

Supabase 部署

前置条件
  1. Supabase 账户——Supabase 是托管式 Postgres 数据库,内置 API、身份验证和 Edge Functions(无服务器代码)。在 supabase.com 创建免费账户。创建新项目——你需要项目 URL(格式如 https://abcdef.supabase.co)和服务角色密钥(可在 Settings > API 下找到的一长串字符)。

  2. Supabase CLI——用于管理 Supabase 项目的命令行工具(应用数据库迁移、部署函数、设置密钥)。

    npm install -g supabase
    
  3. OpenRouter 账户——OpenRouter 可将请求路由到 AI 模型。此处用于生成嵌入(思想的向量表示)和提取元数据。在 openrouter.ai 创建账户,并从控制面板生成 API 密钥。

  4. Telegram 机器人(推荐)——随时记录想法的主要方式。在 Telegram 上通过 @BotFather 创建机器人,然后运行设置脚本(见下文)。如果你只需要 MCP 访问权限,可以跳过此步骤。

快速开始
1. 克隆代码仓库
git clone https://github.com/YOUR_USERNAME/open_brain.git
cd open_brain
2. 关联 Supabase 项目
cd supabase
supabase link --project-ref YOUR_PROJECT_REF
cd ..

**提示:**项目引用是 Supabase URL 中的子域名。如果你的 URL 是 https://abcdef.supabase.co,那么项目引用就是 abcdef。

3. 运行引导设置
./scripts/bootstrap.sh

引导设置会指导你配置环境。它会逐一提示输入每个密钥(Supabase URL、服务角色密钥、OpenRouter API 密钥、Telegram 令牌等),自动生成加密的 MCP 访问密钥,并将所有内容写入 .env.local。如果你已经有 .env.local,它会显示现有值,并允许你更新指定值。

4. 运行部署
./scripts/deploy.sh

部署会应用数据库架构(创建带有向量搜索索引的 thoughts 表)、将密钥上传到 Supabase,并部署所有 Edge Functions。每项操作完成时,都会显示分步检查清单。最后,它会输出 MCP 连接 URL 和可直接粘贴的 Claude Code 命令。

5. 运行验证
./scripts/validate.sh

验证会针对已运行的部署执行 8 项检查,以确认一切正常:数据库访问、RPC 函数、Edge Function 可访问性、身份验证、想法记录、语义搜索和想法列表。它会为每项检查显示通过/失败状态,并给出最终摘要。

设置 Telegram 机器人(可选)

在 Telegram 上通过 @BotFather 创建机器人,然后运行设置脚本:

./scripts/setup-telegram.sh YOUR_BOT_TOKEN

脚本会验证令牌、注册 webhook、设置命令自动补全,并输出需要配置的环境变量和密钥。按照输出的说明完成设置。

连接你的 AI 客户端

部署完成后,连接 AI 客户端即可开始使用 Open Brain。你需要两个值:

  • MCP 端点 URL:https://YOUR_REF.supabase.co/functions/v1/open-brain-mcp/mcp(Supabase)或 http://localhost:80/functions/v1/open-brain-mcp(Docker)
  • **MCP 访问密钥:**设置期间生成的密钥(存储在 .env.local 或 Docker .env 中)

**提示:**部署脚本(Supabase)或启动脚本(Docker)会输出填入了你实际值的准确连接命令。

Claude Code(CLI——推荐)
claude mcp add --transport http --header "x-brain-key: YOUR_MCP_KEY" open-brain https://YOUR_REF.supabase.co/functions/v1/open-brain-mcp/mcp

这会将 Open Brain 注册为 MCP 服务,供 Claude Code 在任何对话中使用。将 YOUR_MCP_KEY 和 YOUR_REF 替换为你的实际值。

Claude Code(项目 .mcp.json)

将以下内容添加到项目根目录的 .mcp.json 文件中,与团队共享连接配置:

{
  "mcpServers": {
    "open-brain": {
      "type": "http",
      "url": "https://YOUR_REF.supabase.co/functions/v1/open-brain-mcp/mcp",
      "headers": {
        "x-brain-key": "${MCP_ACCESS_KEY}"
      }
    }
  }
}

注意:${MCP_ACCESS_KEY} 语法使用环境变量展开,因此密钥不会进入版本控制。请在使用此配置的每台机器上设置 MCP_ACCESS_KEY 环境变量。

Claude Desktop

Claude Desktop 不支持通过配置文件连接远程 MCP 服务。请改用以下方式:

  1. 打开 Claude Desktop > Settings > Connectors
  2. 点击 Add a new connector
  3. 输入 MCP 端点 URL:https://YOUR_REF.supabase.co/functions/v1/open-brain-mcp/mcp
  4. 使用你的 MCP 访问密钥配置 x-brain-key 身份验证标头
ChatGPT(Pro/Team/Enterprise/Edu)
  1. 前往 Settings > Connectors > Advanced > Developer Mode
  2. 添加 MCP 服务 URL:https://YOUR_REF.supabase.co/functions/v1/open-brain-mcp/mcp
  3. 使用你的 MCP 访问密钥配置 x-brain-key 身份验证标头

使用示例

Telegram 捕获

向你的机器人发送任意消息,Open Brain 都会自动处理:

You: Just had a great meeting with Sarah about the Q3 product roadmap.
     She wants to prioritize the mobile app redesign.

Bot: Captured!
  Type: meeting_note
  Theme: personal
  Topics: q3-roadmap, mobile-app-redesign
  Quality: 0.7
  People: Sarah
  Action items: Prioritize mobile app redesign
  Why: Records a product strategy decision with clear ownership
  Related: "Product planning session notes..." (82% similar)

每条消息都会转换为向量,补充提取出的元数据,检查重复项,自动关联相关想法,并将实体解析到知识图谱中。

语义搜索

让任何已连接的 AI 客户端搜索你的大脑:

You: Search my brain for anything about product roadmap discussions

Claude: I found 3 relevant thoughts:
  1. (0.89 similarity) Meeting with Sarah about Q3 product roadmap...
  2. (0.82 similarity) Product planning session notes...
  3. (0.76 similarity) Quarterly goals discussion...

语义搜索会按含义查找想法——即使你使用了不同的词语。询问“产品规划”时,也会找到有关“路线图讨论”的想法,因为它们的含义相近。

每周回顾

获取 AI 生成的近期思考摘要:

You: Give me a weekly review of my recent thoughts

Claude: Here's your weekly review:
  Themes: Product planning, team meetings, technical architecture
  Open loops: Mobile redesign decision pending, API migration timeline
  Connections: Sarah mentioned in 3 meetings this week, all about mobile

每周回顾会分析过去 7 天的想法,并总结主题、未完成事项、想法之间的联系,以及思考中的盲点。

可用工具

工具描述
search_thoughts语义搜索,可选扩展图谱(1 跳遍历)
list_thoughts按类型、主题、人物、主题类别、质量和时间筛选并浏览想法
thought_stats汇总统计:数量、类型/主题类别细分、热门主题/人物
capture_thought从任意 AI 客户端保存新想法(自动生成嵌入向量)
get_connections从某个想法开始遍历图谱(有类型的链接:扩展、矛盾等)
list_entities按出现频率浏览提取出的实体(人物、工具、项目、组织)
weekly_reviewAI 生成的主题、未完成事项和后续步骤摘要
analyze图谱分析:枢纽、密度、来源、共现、主题类别
dedup_review重复项候选列表及相似度区间直方图
refresh_salience重新计算所有显著性分数
update_thought重写内容(重新生成嵌入向量并重新提取元数据)
delete_thought永久删除(级联删除关联)
serendipity_digest重新呈现被遗忘的高质量想法
pipeline流水线监控:运行状况、运行历史、合并审计
review_stale审查并处理陈旧想法候选项
migration_guide从其他平台导入记忆的说明

详细的用法模式、工具组合及不易察觉的行为,请参阅 docs/cookbook.md。

技能(Claude Code 工作流)

Open Brain 包含 Claude Code 技能——由多个阶段组成的结构化工作流,可将上述 MCP 工具组合起来,进行更高级的分析。技能会从 .claude/skills/ 自动发现,并以斜杠命令的形式调用。

技能功能
/discover对近期想法进行增量式模式发现。基于之前的报告构建(EVOLVED/NEW/STALE 分类),并行调度研究 Agent,并结合项目优先级进行关联分析。
/pulse流水线与数据健康报告。并行调用 9 次 MCP,按量规评分(GREEN/YELLOW/RED),通过跨运行记忆跟踪一段时间内的发现,并检测 6 种跨指标模式。
/brain-health知识图谱健康报告。并行调用 12 次 MCP,涵盖主题关注度、图谱密度、枢纽健康状况、共现一致性、去重压力、综合输出和实体概况。

详细介绍和用法请参阅 docs/skills/README.md。

自动维护

Open Brain 会在后台运行维护任务,以保持知识图谱健康。这些任务会自动运行——通过 GitHub Actions(Supabase 部署)或内置的 cron 容器(Docker 部署)。

任务频率用途
RSS/HF Papers/Emergent Mind 摄取每日 2 次从配置的来源摄取创意
管道监控每日 2 次执行健康检查,并在失败时通过 Telegram 发出警报
Dream 去重每日 2 次合并近似重复的想法(相似度 >0.92 时自动合并,0.85-0.92 时由 LLM 确认)
图分析缓存每日预计算枢纽、密度和共现分析
Dream 主题每周跟踪主题变化速度、生命周期转换(新兴/活跃/衰退)和质心漂移
Dream 衰减每周通过分级评分和 LLM 确认归档过时的想法
Dream 综合每周从想法集群中生成跨领域洞见
共现衰减每周衰减未使用的共现边

GitHub Actions 工作流文件包含在 docs/workflows/ 中,可作为自定义计划的参考。

项目结构

open-brain-server/
  supabase/
    migrations/                   # Database migrations (applied with supabase db push)
    functions/
      _shared/                    # Shared modules (supabase-client, openrouter, types, errors, auto-link, entities, dream-*)
      telegram-bot/               # Telegram capture (primary capture path)
      open-brain-mcp/             # MCP server (17 tools)
        tools/                    # Individual tool implementations
      run-pipeline/               # Automated RSS/HF Papers/Emergent Mind ingestion
      monitor-pipeline/           # Pipeline health monitoring with Telegram alerts
      refresh-graph-analysis/     # Graph analysis cache computation
  docker/                         # Docker Compose self-hosting (6 services)
  pipeline/                       # Python-based local pipeline (Reddit, RSS, briefing)
  scripts/                        # Setup and deployment automation
  tests/                          # Integration tests
  docs/
    cookbook.md                    # MCP tool usage patterns and compositions
    skills/                       # Skill documentation
    workflows/                    # GitHub Actions reference (scheduling)
    writing-a-source.md           # Guide for adding pipeline sources
  .claude/
    skills/                       # Claude Code skills (auto-discovered)
      discover/                   # Incremental pattern discovery
      pulse/                      # Pipeline health report
      brain-health/               # Knowledge graph health report

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

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

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