Skip to main content
Glama

create_block

Add bullet-point content to Logseq pages. Specify page name and content, optionally include properties. Automatically formats as bullet points and supports page links with [[Page Name]] syntax.

Instructions

Creates a new block on a page in the Logseq graph. IMPORTANT NOTES: 1. All blocks are automatically formatted as bullet points in Logseq UI 2. To create links to other pages, use double brackets: [[Page Name]] When creating blocks on journal pages: - The block will inherit the "journal?" and "journalDay" attributes from the page - "journalDay" will be in YYYYMMDD format (e.g., 20250404 for April 4, 2025) Args: page_name (str): The name of the page to create the block on. content (str): The content of the new block. properties (dict, optional): Properties to set on the new block. Returns: dict: Information about the created block.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
page_nameYes
contentYes
propertiesNo

Implementation Reference

  • The MCP tool handler for 'create_block', decorated with @mcp.tool(). Defines input schema via type hints and docstring. Delegates to LogseqAPIClient.create_block.
    @mcp.tool() def create_block(page_name: str, content: str, properties: Optional[Dict] = None) -> Dict: """ Creates a new block on a page in the Logseq graph. IMPORTANT NOTES: 1. All blocks are automatically formatted as bullet points in Logseq UI 2. To create links to other pages, use double brackets: [[Page Name]] When creating blocks on journal pages: - The block will inherit the "journal?" and "journalDay" attributes from the page - "journalDay" will be in YYYYMMDD format (e.g., 20250404 for April 4, 2025) Args: page_name (str): The name of the page to create the block on. content (str): The content of the new block. properties (dict, optional): Properties to set on the new block. Returns: dict: Information about the created block. """ """Create a new block on the specified page.""" return logseq_client.create_block(page_name, content, properties)
  • Supporting utility in LogseqAPIClient that makes the actual API call to Logseq to append a new block to a page.
    def create_block(self, page_name: str, content: str, properties: Dict = None) -> Dict: """Create a new block on a page""" params = [page_name, content] if properties: params.append(properties) response = self.call_api("logseq.Editor.appendBlockInPage", params) if isinstance(response, dict) and "result" in response: return response.get("result") return response
  • Re-exports the create_block tool from blocks.py for convenient import in other modules.
    from .blocks import get_page_blocks, get_block, create_block, update_block, remove_block, insert_block, move_block, search_blocks
  • Includes create_block in the public __all__ exports of the package.
    create_block,

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

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