mcp-logseq
Python stdio MCP server that interfaces with the Logseq local HTTP API, enabling tools to manage pages, blocks, queries, and graph configurations in Logseq.
README
mcp-logseq
Python stdio MCP server for the Logseq local HTTP API.
Requirements
- Python 3.11+
- Logseq desktop with the HTTP API enabled
- A Logseq API token
In Logseq, enable the HTTP API from settings and copy the token. The server calls Logseq at http://127.0.0.1:12315/api by default.
Install
python -m venv .venv
.venv/bin/pip install -e ".[dev]"
Configure in Codex
From this project directory, install the package and add the stdio MCP server to Codex:
python -m venv .venv
.venv/bin/pip install -e .
codex mcp add logseq \
--env LOGSEQ_API_TOKEN=your-token \
--env LOGSEQ_API_URL=http://127.0.0.1:12315/api \
-- "$(pwd)/.venv/bin/mcp-logseq"
On Windows PowerShell, use the virtualenv executable under .venv\Scripts:
py -3.11 -m venv .venv
.\.venv\Scripts\python.exe -m pip install -e .
codex mcp add logseq `
--env LOGSEQ_API_TOKEN=your-token `
--env LOGSEQ_API_URL=http://127.0.0.1:12315/api `
-- "$((Get-Location).Path)\.venv\Scripts\mcp-logseq.exe"
Replace your-token with the token from Logseq. After adding it, restart Codex so the new MCP server is loaded.
If you prefer to edit the config manually, generate the JSON form from this checkout:
.venv/bin/mcp-logseq --print-config
On Windows:
.\.venv\Scripts\mcp-logseq.exe --print-config
The server is stdio-only for MCP clients. The LOGSEQ_API_URL value is the local Logseq HTTP API that this stdio server calls behind the scenes.
Logseq Setup
- Open Logseq desktop.
- Enable the HTTP API in Logseq settings.
- Copy the API token.
- Use that token as
LOGSEQ_API_TOKENin thecodex mcp addcommand. - Keep Logseq running while using the MCP server.
Run
LOGSEQ_API_TOKEN=your-token mcp-logseq
On Windows PowerShell:
$env:LOGSEQ_API_TOKEN = "your-token"
.\.venv\Scripts\mcp-logseq.exe
The server uses stdio transport by default. Do not run it behind an HTTP server for MCP clients that expect stdio.
Optional environment variables:
LOGSEQ_API_URL: full API URL, defaulthttp://127.0.0.1:12315/apiLOGSEQ_TIMEOUT: request timeout in seconds, default15
Test
Run the full local test suite:
.venv/bin/python -m pytest
On Windows:
.\.venv\Scripts\python.exe -m pytest
The suite covers the Logseq HTTP client, environment loading, MCP config generation, stdio startup, and every exported server tool's Logseq API method/argument mapping.
MCP Client Config
Generate a ready-to-copy config from this checkout:
.venv/bin/mcp-logseq --print-config
On Windows:
.\.venv\Scripts\mcp-logseq.exe --print-config
Then paste the JSON into your MCP client's config. A static example is also available in mcp.example.json.
{
"mcpServers": {
"logseq": {
"command": "/absolute/path/to/mcp-logseq/.venv/bin/mcp-logseq",
"args": [],
"env": {
"LOGSEQ_API_TOKEN": "your-token",
"LOGSEQ_API_URL": "http://127.0.0.1:12315/api"
}
}
}
}
Windows manual config example:
{
"mcpServers": {
"logseq": {
"command": "C:\\Users\\you\\path\\to\\mcp-logseq\\.venv\\Scripts\\mcp-logseq.exe",
"args": [],
"env": {
"LOGSEQ_API_TOKEN": "your-token",
"LOGSEQ_API_URL": "http://127.0.0.1:12315/api"
}
}
}
}
Tools
Generic:
logseq_call: call any Logseq API method by name.
App and graph:
get_current_graphget_current_graph_configsget_current_graph_favoritesget_current_graph_recentget_current_graph_templatesget_user_configsget_app_infocheck_current_is_db_graph
Pages and blocks:
get_current_pageget_current_blockget_current_page_blocks_treeget_all_pagesget_pageget_page_blocks_treeget_page_linked_referencesget_page_propertiesget_pages_from_namespaceget_pages_tree_from_namespaceget_blockget_block_propertiesget_block_propertyget_previous_sibling_blockget_next_sibling_blocksearch
Queries:
querydatascript_query
Page editing:
create_pagecreate_journal_pagerename_pagedelete_page
Block editing:
append_block_in_pageprepend_block_in_pageinsert_blockinsert_batch_blockmove_blockupdate_blockremove_blocknew_block_uuidset_block_collapsedset_block_iconremove_block_icon
Properties and tags:
get_all_tagsget_all_propertiesupsert_block_propertyremove_block_propertyupsert_propertyremove_propertycreate_tagget_tagget_tags_by_nameget_tag_objectsadd_block_tagremove_block_tagadd_tag_extendsremove_tag_extendsadd_tag_propertyremove_tag_property
Assets and Git:
list_asset_filesmake_asset_urlopen_assetgit_execgit_load_ignore_filegit_save_ignore_file
Tools that modify the graph are intentionally direct wrappers around Logseq's API. Use them with explicit page names, UUIDs, and content. Plugin callback/hook APIs are not exposed as first-class tools because a stdio MCP server cannot host interactive Logseq plugin callbacks; use logseq_call only for one-shot methods.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.