Skip to main content
Glama
ergut

MCP server for LogSeq

by ergut

✨ What You Can Do

Transform your LogSeq knowledge base into an AI-powered workspace! This MCP server enables Claude to seamlessly interact with your LogSeq graphs.

🎯 Real-World Examples

πŸ“Š Intelligent Knowledge Management

"Analyze all my project notes from the past month and create a status summary"
"Find pages mentioning 'machine learning' and create a study roadmap"
"Search for incomplete tasks across all my pages"

πŸ“ Automated Content Creation

"Create a new page called 'Today's Standup' with my meeting notes"
"Add today's progress update to my existing project timeline page"  
"Create a weekly review page from my recent notes"

πŸ” Smart Research & Analysis

"Compare my notes on React vs Vue and highlight key differences"
"Find all references to 'customer feedback' and summarize themes"
"Create a knowledge map connecting related topics across pages"

🀝 Meeting & Documentation Workflow

"Read my meeting notes and create individual task pages for each action item"
"Get my journal entries from this week and create a summary page"
"Search for 'Q4 planning' and organize all related content into a new overview page"

πŸ’‘ Key Benefits

  • Zero Context Switching: Claude works directly with your LogSeq data

  • Preserve Your Workflow: No need to export or copy content manually

  • Intelligent Organization: AI-powered page creation, linking, and search

  • Enhanced Productivity: Automate repetitive knowledge work


Related MCP server: SQLite MCP Server

πŸš€ Quick Start

Step 1: Enable LogSeq API

  1. Settings β†’ Features β†’ Check "Enable HTTP APIs server"

  2. Click the API button (πŸ”Œ) in LogSeq β†’ "Start server"

  3. Generate API token: API panel β†’ "Authorization tokens" β†’ Create new

Step 2: Add to Claude (No Installation Required!)

Claude Code

claude mcp add mcp-logseq \
  --env LOGSEQ_API_TOKEN=your_token_here \
  --env LOGSEQ_API_URL=http://localhost:12315 \
  -- uv run --with mcp-logseq mcp-logseq

Claude Desktop

Add to your config file (Settings β†’ Developer β†’ Edit Config):

{
  "mcpServers": {
    "mcp-logseq": {
      "command": "uv",
      "args": ["run", "--with", "mcp-logseq", "mcp-logseq"],
      "env": {
        "LOGSEQ_API_TOKEN": "your_token_here",
        "LOGSEQ_API_URL": "http://localhost:12315"
      }
    }
  }
}

Step 3: Start Using!

"Please help me organize my LogSeq notes. Show me what pages I have."

πŸ› οΈ Available Tools

The server provides 15 tools with intelligent markdown parsing:

Tool

Purpose

Example Use

list_pages

Browse your graph

"Show me all my pages"

get_page_content

Read page content

"Get my project notes"

create_page

Add new pages with structured blocks

"Create a meeting notes page with agenda items"

update_page

Modify pages (append/replace modes)

"Update my task list"

delete_page

Remove pages

"Delete the old draft page"

delete_block

Remove a block by UUID

"Delete this specific block"

update_block

Edit block content by UUID

"Update this specific block text"

search

Find content across graph

"Search for 'productivity tips'"

query

Execute Logseq DSL queries

"Find all TODO tasks tagged #project"

find_pages_by_property

Search pages by property

"Find all pages with status = active"

get_pages_from_namespace

List pages in a namespace

"Show all pages under Customer/"

get_pages_tree_from_namespace

Hierarchical namespace view

"Show Projects/ as a tree"

rename_page

Rename with reference updates

"Rename 'Old Name' to 'New Name'"

get_page_backlinks

Find pages linking to a page

"What links to this page?"

insert_nested_block

Insert child/sibling blocks

"Add a child block under this task"

🎨 Smart Markdown Parsing (v1.1.0+)

The create_page and update_page tools now automatically convert markdown into Logseq's native block structure:

Markdown Input:

---
tags: [project, active]
priority: high
---

# Project Overview
Introduction paragraph here.

## Tasks
- Task 1
  - Subtask A
  - Subtask B
- Task 2

## Code Example
```python
def hello():
    print("Hello Logseq!")

**Result:** Creates properly nested blocks with:
- βœ… Page properties from YAML frontmatter (`tags`, `priority`)
- βœ… Hierarchical sections from headings (`#`, `##`, `###`)
- βœ… Nested bullet lists with proper indentation
- βœ… Code blocks preserved as single blocks
- βœ… Checkbox support (`- [ ]` β†’ TODO, `- [x]` β†’ DONE)

**Update Modes:**
- **`append`** (default): Add new content after existing blocks
- **`replace`**: Clear page and replace with new content

---

## βš™οΈ Prerequisites

### LogSeq Setup
- **LogSeq installed** and running
- **HTTP APIs server enabled** (Settings β†’ Features)
- **API server started** (πŸ”Œ button β†’ "Start server")  
- **API token generated** (API panel β†’ Authorization tokens)

### System Requirements
- **[uv](https://docs.astral.sh/uv/)** Python package manager
- **MCP-compatible client** (Claude Code, Claude Desktop, etc.)

---

## πŸ”§ Configuration

### Environment Variables
- **`LOGSEQ_API_TOKEN`** (required): Your LogSeq API token
- **`LOGSEQ_API_URL`** (optional): Server URL (default: `http://localhost:12315`)

### Alternative Setup Methods

#### Using .env file
```bash
# .env
LOGSEQ_API_TOKEN=your_token_here
LOGSEQ_API_URL=http://localhost:12315

System environment variables

export LOGSEQ_API_TOKEN=your_token_here
export LOGSEQ_API_URL=http://localhost:12315

πŸ” Verification & Testing

Test LogSeq Connection

uv run --with mcp-logseq python -c "
from mcp_logseq.logseq import LogSeq
api = LogSeq(api_key='your_token')
print(f'Connected! Found {len(api.list_pages())} pages')
"

Verify MCP Registration

claude mcp list  # Should show mcp-logseq

Debug with MCP Inspector

npx @modelcontextprotocol/inspector uv run --with mcp-logseq mcp-logseq

πŸ› Troubleshooting

Common Issues

"LOGSEQ_API_TOKEN environment variable required"

  • βœ… Enable HTTP APIs in Settings β†’ Features

  • βœ… Click πŸ”Œ button β†’ "Start server" in LogSeq

  • βœ… Generate token in API panel β†’ Authorization tokens

  • βœ… Verify token in your configuration

"spawn uv ENOENT" (Claude Desktop)

Claude Desktop can't find uv. Use the full path:

which uv  # Find your uv location

Update config with full path:

{
  "mcpServers": {
    "mcp-logseq": {
      "command": "/Users/username/.local/bin/uv",
      "args": ["run", "--with", "mcp-logseq", "mcp-logseq"],
      "env": { "LOGSEQ_API_TOKEN": "your_token_here" }
    }
  }
}

Common uv locations:

  • Curl install: ~/.local/bin/uv

  • Homebrew: /opt/homebrew/bin/uv

  • Pip install: Check with which uv

Connection Issues

  • βœ… Confirm LogSeq is running

  • βœ… Verify API server is started (not just enabled)

  • βœ… Check port 12315 is accessible

  • βœ… Test with verification command above


πŸ‘©β€πŸ’» Development

For local development, testing, and contributing, see DEVELOPMENT.md.


Install Server
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Resources

Looking for Admin?

Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.

Latest Blog Posts

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/ergut/mcp-logseq-server'

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