← 所有平台

LangChain / LangGraph

通过 langchain-mcp-adapters 代码级接入——两个框架共用同一套。

LangChain 和 LangGraph 是开发者框架,不是图形化应用——这是在自己用 Python 或 JS 写的 agent 代码里,用官方的 langchain-mcp-adapters 包接入,两个框架底层用的是同一套。没有设置界面,这些代码直接写进你自己的 agent 里。已在真实环境里验证过。

本地版(stdio)

在你的 agent 代码里。command 填 uvx,它会按需下载并运行 Spomory,不用自己装:

from langchain_mcp_adapters.client import MultiServerMCPClient

client = MultiServerMCPClient({
    "spomory": {
        "command": "uvx",
        "args": ["--from", "spomory[llm,embedding,mcp]", "spomory-mcp"],
        "env": {
            "LLM_API_KEY": "...",
            "LLM_BASE_URL": "https://api.deepseek.com",
            "LLM_MODEL": "deepseek-v4-flash",
        },
        "transport": "stdio",
    }
})
tools = await client.get_tools()

更想要固定、锁定版本的安装?可以装到 ~/Documents 之外的虚拟环境里(pip install 'spomory[llm,embedding,mcp]'),然后把 command 直接指向那个虚拟环境的 bin/memory-core-mcp(去掉 args)。

这几个环境变量该填什么?

LLM_API_KEY 是你用来做抽取的那个 OpenAI 兼容服务商的 key——OpenAI、DeepSeek、通义千问等都可以。LLM_BASE_URL 和 LLM_MODEL 不填就默认走 OpenAI;换成 DeepSeek、通义千问或其他任意 OpenAI 兼容服务商,或者一个完全本地的 server(Ollama、vLLM、llama.cpp、MLX)都行:

export LLM_API_KEY=...
export LLM_BASE_URL=https://api.deepseek.com   # 可选,默认 OpenAI
export LLM_MODEL=deepseek-v4-flash             # 可选,默认 gpt-4o-mini
export EMBEDDING_MODEL=BAAI/bge-m3             # 可选,默认 bge-m3
完整本地安装指南(含 macOS 的 ~/Documents 那个坑)→

云端版(API Key)

同一个 client,换成带 headers 的 http 条目:

client = MultiServerMCPClient({
    "spomory-cloud": {
        "transport": "http",
        "url": "https://api.yliuai.com/mcp-apikey/",
        "headers": {
            "x-api-key": "<你的key>",
        },
    }
})

已在真实环境里验证过,落到的是跟这页其他客户端同一个账号/同一份记忆图谱。

<你的key> 从哪来?

用 curl 立即拿一个——自己测试够用:

curl -X POST https://api.yliuai.com/users/register \
  -H "Content-Type: application/json" \
  -d '{"email": "you@example.com"}'
# 响应里的 api_key(mck_ 开头)只在这一次返回,记下来

这种方式拿到的 Key 不需要证明邮箱归属——自己测试没问题,但正式使用建议走邮箱确认表单,那个真的会验证邮箱。

去「云端 / 跨 App」页面走邮箱验证拿 Key →

让它真的被用起来

接上工具不代表客户端会主动去用它们——得告诉它在回答之前先调 search_memory,在你说了件值得记住的事之后调 add_memory。SKILL.md 就是干这个的一份简短指令文件。怎么让客户端读到它,每个客户端都不一样:有些会自动扫描 skills 目录(跟 Claude Code 一个路数),有些只有自定义指令/系统提示词这类字段。这个客户端已验证过:

LangChain/LangGraph 核心没有文件自动发现这套机制——系统提示词就是你代码里的一个字符串。(可选的 deepagents 扩展库支持 SKILL.md 文件夹,但要在构造 agent 时手动传路径,不是自动扫描。)

GitHub 上的 SKILL.md →