使用说明
@gdpa/openviking内存mcp
用于OpenViking长期内存和文件系统操作的MCP服务器,具有回调、存储、遗忘、fs/ls、fs/read和fs/grep操作。
安装
npm install @gdpa/openviking-memory-mcp
用法
通过stdio传输作为MCP服务器运行:
npx @gdpa/openviking-memory-mcp --base-url <OPENVIKING_URL> --api-key <API_KEY> --agent-id <AGENT_ID>
光标MCP配置
添加到您的 mcp.json:
{
"mcpServers": {
"openviking-memory": {
"command": "npx",
"args": [
"--registry",
"https://bnpm.byted.org",
"@gdpa/openviking-memory-mcp",
"--base-url", "https://gdpa.bytedance.net/openviking-public",
"--api-key", "<YOUR_API_KEY>",
"--agent-id", "<YOUR_AGENT_ID>"
]
}
}
}
CLI参数
| 参数 | 必填 | 描述 |
|---|---|---|
--base-url |
是 | OpenViking API基础URL |
--api-key |
是 | 用于身份验证的API密钥 |
--agent-id |
是 | 代理标识符 |
可选参数
支持这些参数,但它们不是默认示例配置的一部分:
| 参数 | 描述 |
|---|---|
--resource-uri, --resource_uri |
默认资源搜索范围。设置后,recall仅搜索此URI前缀下的资源,同时仍正常搜索内存。如果工具调用显式传递资源 targetUri,它必须保持在此配置范围内。 |
--tools |
逗号分隔的动作满列表。支持的值: recall, store, forget, fs/ls, fs/read, fs/grep默认值为所有操作。例子: --tools recall 或 --tools recall,store,fs/read. |
MCP工具: memory
recall --对存储的记忆和资源进行语义搜索
query(字符串,必填):搜索查询limit(数字,可选):最大结果(默认值10)scoreThreshold(数字,可选):最低相关性得分targetUri(字符串,可选):将搜索范围缩小到特定的内存或资源URI。如果resource_uri已配置,任何资源targetUri必须在该前缀内。- 结果格式:每行召回都包括
context_type和is_leaf标记。
store --将新信息存储为内存
text(string,可选):要附加到会话中的内容。追加模式需要。role(字符串,可选):消息角色session_id(字符串,有条件要求):用于附加到现有会话的会话标识符(别名:sessionId)create_session(布尔值,有条件要求):当session_id如果不存在,则必须显式传递并设置为true创建新会话(别名:createSession)commit_session(boolean,可选):添加此消息后提交会话(默认值:false).Commit异步运行提取并返回task_id(别名:commitSession)- 会话选择器规则(必填):每个
store调用必须通过以下任一方式明确标识会话源session_id或create_session=true(当否session_id). - 仅提交模式:设置
commit_session=true不要通过text。它可以与现有的session_id,或create_session=true如果你有意创建,那么在一次调用中提交。 - 生命周期规则:如果
commit_session=false,数据仅被附加,内存提取尚未开始。你最终必须打一个决赛store和commit_session=true. - 之后
commit_session=true,这个session_id被视为关闭;不要向它推送更多消息。启动一个新会话以进行后续写入。 - 如果提交失败,需要重试,请仅重试提交(
session_id+commit_session=true,没有text)以避免重复写入。
forget --删除存储的记忆
uri(字符串,可选):要删除的特定URIquery(字符串,可选):基于查询的删除targetUri(字符串,可选):可选搜索范围URI。省略时,基于查询的删除会搜索用户和代理内存。scoreThreshold(数字,可选):基于查询删除的分数阈值
fs/ls --列出目录内容
uri(字符串,必填):目标维京URI(用于定位可读is_leaf=true节点)recursive(boolean,可选):递归列出子体simple(boolean,可选):返回更简单的相对路径输出
fs/read --阅读完整内容
uri(字符串,必填):目标维京URIis_leaf=true仅限节点
fs/grep --内容中的模式搜索
uri(字符串,必填):目标Viking URI范围pattern(字符串,必填):正则表达式搜索模式caseInsensitive(布尔值,可选):忽略大小写(别名:case_insensitive)
需求
- Node.js>=18.0.0