Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

JotDown

MCP.Pizza Chef: Harry-027

Jotdown is a Rust-based MCP server that enables large language models to create and update Notion pages and generate Markdown Books (mdBooks). It integrates LLMs with Notion for content management and automates mdBook generation, including managing book structure and files. Jotdown leverages the Model Context Protocol to maintain context and streamline content publishing workflows.

Use This MCP server To

Automatically create or update Notion pages with LLM-generated content Generate and manage mdBooks from structured markdown content Automate documentation publishing workflows using Notion and mdBooks Maintain context-aware content creation across Notion and mdBook platforms Integrate LLMs into content management systems for seamless updates Create structured book summaries and chapters for mdBook projects

README

Jotdown - MCP Server for Notion Page Creation and mdBook Generation

Jotdown is a Model Context Protocol (MCP) server that allows large language models (LLMs) to interact with Notion and also generate Markdown Books. It provides two primary tools for LLMs:

  • 👉 Notion Integration: Create or update pages in Notion with content generated by the LLM.
  • 👉 Mdbook Generation: Generate a mdbook from content and manage the structure.

Jotdown enables LLMs to seamlessly integrate with these systems for various content management and publishing workflows.


Features

  • 🌿 Notion Integration: Automatically create or update Notion pages with content generated by the LLM.
  • 🌿 Mdbook Generation: Create and manage mdbooks directly from content, including generating necessary files like SUMMARY.md, README.md, and individual chapter markdown files.
  • 🌿 MCP Support: Leverages the Model Context Protocol to maintain context over interactions, enabling more intelligent and consistent content creation and updates.

Tools Provided by Jotdown

1. Notion Page Tool

LLMs can use the Notion tool to create or update pages within Notion, allowing them to store structured content like articles or any other type of document directly in Notion.

Example:
  • Create a new page in Notion with content that the LLM has generated.
  • Update an existing Notion page with new information.

2. mdbook Tool

With the mdbook tool, LLMs can automatically generate markdown books, handling the creation of multiple chapters, managing the structure, and adding a SUMMARY.md file for navigation.

Example:
  • Generate a new book based on LLM-generated content.
  • Automatically generate chapters with proper links in SUMMARY.md.

Installation

Prerequisites

  • Rust: Make sure you have Rust installed. You can install it from rust-lang.org.
  • Notion API Token: You will need a Notion API token (internal integration secret) to integrate with Notion.
  • Claude Desktop: Make sure you have Claude desktop or any other MCP client (Cline, Continue etc) installed and configured with a Notion integration token.

Steps to Install

  1. Clone the repository:

    git clone https://github.com/Harry-027/JotDown
    cd jotdown
  2. Install dependencies:

    cargo build --release
  3. Install mdbook cli (required for the book generation to work):

    cargo install mdbook
  4. Notion setup:

    • Setup Notion connection (internal intergation with access to Notion workspace) & copy the internal intergration secret for later use.
    • Setup a page with title Jot It Down in your workspace and share it with your connection. This is required for the integration to work.
  5. Set up Claude desktop (or any other MCP client) configuration file (for Notion integration):

      "mcpServers": {
            "Jotdown": {
                "command": "/path_to_repo/Jotdown/target/release/Jotdown",
                "args": [],
                "env": {
                    "NOTION_TOKEN": "your_notion_intergration_token"
                }
            }
      }
  6. Restart Claude desktop and try it out!


Notion Integration Example:

  • To create or update a Notion page, the LLM sends a request to the server specifying the content and page details. The server then interacts with the Notion API to either create a new page or update an existing one.

Mdbook Integration Example:

  • LLMs can send structured content to the server to create an entire mdbook, including chapter creation, README.md, and SUMMARY.md management. The server compiles the content into a complete book.

🧑‍💻 Demo

Notion Demo -

Demo Notion

MdBook Demo -

Demo mdbook

MdBook Screenshots -

Demo mdbook screenshot 1 Demo mdbook screenshot 2


🧑‍💻 Contributing

Feel free to open issues or submit pull requests.


📜 License

Jotdown is licensed under the MIT License. See the LICENSE file for details.


📧 Contact

For support or inquiries, reach out at harishmmp@gmail.com.

JotDown FAQ

How does Jotdown integrate with Notion?
Jotdown uses the MCP protocol to allow LLMs to create or update Notion pages programmatically with generated content.
Can Jotdown generate complete mdBooks?
Yes, it manages the entire mdBook structure including SUMMARY.md, README.md, and chapter markdown files.
What programming language is Jotdown built with?
Jotdown is implemented in Rust, providing performance and safety benefits.
Does Jotdown support maintaining context during interactions?
Yes, it leverages MCP to maintain context over multiple interactions for coherent content generation.
Which LLM providers can work with Jotdown?
Jotdown is provider-agnostic and can work with OpenAI, Anthropic Claude, and Google Gemini models.
Is Jotdown suitable for automating documentation workflows?
Absolutely, it streamlines content creation and publishing in Notion and mdBook formats.
How do I get started with Jotdown?
You can find setup instructions and usage examples in the GitHub repository README.
Can Jotdown update existing Notion pages or only create new ones?
It can both create new pages and update existing ones with new content.