simple logseq mcp server
25 stars
Python
Updated Oct 4, 2025
Documentation
Logseq MCP Server
A Model Context Protocol server that provides direct integration with Logseq's knowledge base. This server enables LLMs to interact with Logseq graphs, create pages, manage blocks, and organize information programmatically.
Usage with Claude Desktop
json
{
"mcpServers": {
"logseq": {
"command": "uvx",
"args": ["mcp-server-logseq"],
"env": {
"LOGSEQ_API_TOKEN": "",
"LOGSEQ_API_URL": "http://127.0.0.1:12315"
}
}
}
}If you have errors, use 0.0.1 version:
json
{
"mcpServers": {
"logseq": {
"command": "uvx",
"args": ["mcp-server-logseq==0.0.1"],
"env": {
"LOGSEQ_API_TOKEN": "",
"LOGSEQ_API_URL": "http://127.0.0.1:12315"
}
}
}
}Available Tools
Block Operations
- logseq_insert_block - Create new blocks in Logseq
Parameters:
parent_block(string): Parent block UUID or page namecontent(string, required): Block contentis_page_block(boolean): Create as page-level blockbefore(boolean): Insert before parent blockcustom_uuid(string): Custom UUIDv4 for block
- logseq_edit_block - Enter block editing mode
Parameters:
src_block(string, required): Block UUIDpos(number): Cursor position
- logseq_exit_editing_mode - Exit editing mode
Parameters:
select_block(boolean): Keep block selected
Page Operations
- logseq_create_page - Create new pages
Parameters:
page_name(string, required): Page nameproperties(object): Page propertiesjournal(boolean): Create as journal pageformat(string): Page format (markdown/org)
- logseq_get_page - Get page details
Parameters:
src_page(string, required): Page identifierinclude_children(boolean): Include child blocks
- logseq_get_all_pages - List all pages
Parameters:
repo(string): Repository name
Content Retrieval
- logseq_get_current_page - Get active page/block
Parameters: None
- logseq_get_current_blocks_tree - Current page's block hierarchy
Parameters: None
- logseq_get_editing_block_content - Get content of active block
Parameters: None
- logseq_get_page_blocks_tree - Get page's block structure
Parameters:
src_page(string, required): Page identifier
Prompts
logseq_insert_block
Create a new block in Logseq
Arguments:
parent_block: Parent block reference (page name or UUID)content: Block contentis_page_block: Set true for page-level blocks
logseq_create_page
Create a new Logseq page
Arguments:
page_name: Name of the pageproperties: Page properties as JSONjournal: Set true for journal pages
Installation
Using pip
bash
pip install mcp-server-logseqFrom source
bash
git clone https://github.com/dailydaniel/logseq-mcp.git
cd logseq-mcp
cp .env.example .env
uv syncRun the server:
bash
python -m mcp_server_logseqConfiguration
API Key
1. Generate API token in Logseq: API → Authorization tokens
2. Set environment variable:
bash
export LOGSEQ_API_TOKEN=your_token_hereOr pass via command line:
bash
python -m mcp_server_logseq --api-key=your_token_hereGraph Configuration
Default URL: http://localhost:12315
To customize:
bash
python -m mcp_server_logseq --url=http://your-logseq-instance:portExamples
Create meeting notes page
plaintext
Create new page "Team Meeting 2024-03-15" with properties:
- Tags: #meeting #engineering
- Participants: Alice, Bob, Charlie
- Status: pendingAdd task block to existing page
plaintext
Add task to [[Project Roadmap]]:
- [ ] Finalize API documentation
- Due: 2024-03-20
- Priority: highCreate journal entry with first block
plaintext
Create journal entry for today with initial content:
- Morning standup completed
- Started work on new authentication systemDebugging
bash
npx @modelcontextprotocol/inspector uv --directory . run mcp-server-logseqContributing
We welcome contributions to enhance Logseq integration:
- Add new API endpoints (page linking, query support)
- Improve block manipulation capabilities
- Add template support
- Enhance error handling
Similar MCP
Based on tags & features
Trending MCP
Most active this week