Skip to main content
Glama

Logseq MCP 工具

铁匠徽章

模型上下文协议 (MCP) 服务器为 AI 助手提供对您的 Logseq 知识图的结构化访问。

概述

该项目创建了一个 MCP 服务器,允许像 Claude 这样的 AI 助手与您的 Logseq 知识库进行交互。它提供以下工具:

  • 检索所有页面的列表

  • 从特定页面获取内容

  • 生成灵活日期范围的日记帐摘要

  • 提取链接页面并探索连接

Related MCP server: MCP Toolkit

安装

通过 Smithery 安装

要通过Smithery自动为 Claude Desktop 安装 Logseq Tools:

npx -y @smithery/cli install @joelhooks/logseq-mcp-tools --client claude
  1. 克隆此存储库

  2. 使用 npm、yarn 或 pnpm 安装依赖项:

# Using npm npm install # Using yarn yarn install # Using pnpm pnpm install
  1. 复制环境模板并配置您的 Logseq 令牌:

cp .env.template .env # Edit .env with your Logseq authentication token

配置

该项目包含一个.env.template文件,您可以将其复制并重命名为.env

您可以通过以下方式找到您的 Logseq 身份验证令牌:

  1. 打开 Logseq

  2. 在“设置”>“功能”>“启用 HTTP API”中启用 HTTP API

  3. 在“设置”>“功能”>“HTTP API 身份验证令牌”中设置身份验证令牌

用法

运行 MCP 服务器

可以使用以下命令启动服务器:

# Using the npm script npm start # Or directly with tsx npx tsx index.ts

与克劳德联系

克劳德桌面

遵循Claude MCP 快速入门指南

  1. 重要提示:通过 Homebrew(或其他方式)全局安装 Node.js:

brew install node
  1. 安装 Claude 桌面应用程序

  2. 打开 Claude 菜单并选择“设置...”

  3. 点击左侧边栏的“开发者”,然后点击“编辑配置”

  4. 这将打开你的claude_desktop_config.json文件。将其内容替换为:

{ "mcpServers": { "logseq": { "command": "npx", "args": ["tsx", "/path/to/your/index.ts"] } } }

重要提示:绝对路径(例如, /Users/username/Code/logseq-mcp-tools/index.ts

  1. 保存文件并重新启动Claude Desktop

现在您可以与 Claude 聊天并要求它使用您的 Logseq 数据:

  • “显示我最近的日记条目”

  • “总结一下我上周的笔记”

  • “查找与[主题]相关的所有页面”

克劳德在光标处

遵循Cursor MCP 文档

  1. 打开游标

  2. 从设置中添加新的 MCP 服务

  3. 输入以下命令:

npx tsx "/path/to/index.ts"
  1. 给你的服务起一个名字,例如“Logseq Tools”

现在您可以将 Cursor 中的 Claude 与 Logseq 数据一起使用。

人类学 API 中的 Claude(通用)

使用 Claude API 或 CLI 工具时,您可以使用以下命令添加 MCP 服务:

claude mcp add "logseq" npx tsx "/path/to/index.ts"

可用工具

获取所有页面

检索 Logseq 图中所有页面的列表。

获取页面

获取特定页面的内容。

参数:

  • pageName :要检索的页面的名称

获取期刊摘要

生成指定日期范围内的日记帐分录摘要。

参数:

  • dateRange :自然语言日期范围,如“今天”、“本周”、“上个月”、“今年”等。

此工具将:

  • 收集指定范围内的日记帐分录

  • 以可读的方式格式化它们

  • 提取并分析引用的页面/概念

  • 显示最常引用的概念

创建页面

在您的 Logseq 图中创建一个新页面。

参数:

  • pageName :新页面的名称

  • content :(可选)页面的初始内容

搜索页面

按名称搜索页面。

参数:

  • query :搜索查询以按名称过滤页面

获取反向链接

查找引用特定页面的所有页面。

参数:

  • pageName :要查找反向链接的页面名称

分析图

对您的知识图谱进行全面分析。

参数:

  • daysThreshold :(可选)回顾“最近”内容的天数(默认值:30)

特征:

  • 识别经常引用的页面

  • 追踪最近的更新

  • 发现页面集群和连接

  • 列出未完成的任务

  • 建议可能需要的更新

发现知识差距

分析您的知识图谱以识别潜在的差距和需要改进的领域。

参数:

  • minReferenceCount :(可选)需要考虑的最小引用(默认值:3)

  • includeOrphans :(可选)在分析中包含孤立页面(默认值:true)

特征:

  • 识别经常引用的缺失页面

  • 查找需要扩展的未开发页面

  • 列出没有传入链接的孤立页面

  • 提供汇总统计数据

分析期刊模式

分析您的日记条目在一段时间内的模式。

参数:

  • timeframe :(可选)要分析的时间段(例如“过去 30 天”、“今年”)

  • includeMood :(可选)分析情绪模式(如果存在)(默认值:true)

  • includeTopics :(可选)分析主题模式(默认值:true)

特征:

  • 主题趋势和演变

  • 情绪模式分析

  • 习惯追踪统计

  • 项目进度跟踪

智能查询

使用 Logseq 的 DataScript 功能执行自然语言查询。

参数:

  • request :用自然语言描述您想要查找的内容

  • includeQuery :(可选)在结果中包含生成的 Datalog 查询

  • advanced :(可选)使用高级分析功能

特征:

  • 页面连接和关系

  • 内容聚类

  • 任务进度分析

  • 概念演化追踪

建议连接

使用人工智能分析您的图表并提出有趣的联系。

参数:

  • minConfidence :(可选)建议的最低置信度得分(0-1,默认值:0.6)

  • maxSuggestions :(可选)返回的最大建议数(默认值:10)

  • focusArea :(可选)重点建议的主题或领域

特征:

  • 发现页面之间的潜在联系

  • 识别知识综合机会

  • 根据近期兴趣建议探索路径

  • 提供建议的置信度分数

发展

该服务器使用以下方式构建:

  • 模型上下文协议 TypeScript SDK

  • Zod 用于参数验证

  • 用于数据访问的 Logseq HTTP API

要扩展新工具,请在index.ts中添加额外的server.tool()定义。

故障排除

常见问题

Node.js 版本管理器(fnm、nvm 等)

如果您使用 Node.js 版本管理器(如 fnm 或 nvm),Claude Desktop 将无法正确访问 Node.js 二进制文件,因为它在 PATH 被修改的 shell 环境之外运行。

解决方案:使用 Homebrew 安装系统范围的 Node.js:

brew install node

这确保 Node.js 可用于所有应用程序,包括 Claude Desktop。

基本故障排除步骤

  • 确保 Logseq 在启用 HTTP API 的情况下运行

  • 验证.env中的身份验证令牌是否与 Logseq 中设置的令牌匹配

  • 检查 Claude 配置中 index.ts 文件的路径是否正确

  • 尝试直接在终端中运行npx tsx index.ts来验证它是否有效

在 Claude Desktop 中查看日志

实时监控日志:

# macOS tail -n 20 -F ~/Library/Logs/Claude/mcp*.log

有关更详细的调试信息,请参阅官方 MCP 调试文档

-
security - not tested
F
license - not found
-
quality - not tested

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/joelhooks/logseq-mcp-tools'

If you have feedback or need assistance with the MCP directory API, please join our Discord server