https://github.com/harry-027/jotdown
An MCP Server in Rust for creating Notion pages & mdBooks with LLMs 🦀
https://github.com/harry-027/jotdown
ai anthropic claude claude-ai llm mcp mcp-server mdbook notion rust
Last synced: 11 days ago
JSON representation
An MCP Server in Rust for creating Notion pages & mdBooks with LLMs 🦀
- Host: GitHub
- URL: https://github.com/harry-027/jotdown
- Owner: Harry-027
- License: mit
- Created: 2025-04-10T06:50:56.000Z (24 days ago)
- Default Branch: main
- Last Pushed: 2025-04-21T14:56:59.000Z (13 days ago)
- Last Synced: 2025-04-23T19:20:11.264Z (11 days ago)
- Topics: ai, anthropic, claude, claude-ai, llm, mcp, mcp-server, mdbook, notion, rust
- Language: Rust
- Homepage:
- Size: 73.9 MB
- Stars: 12
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
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](https://www.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:
```bash
git clone https://github.com/Harry-027/JotDown
cd jotdown
```2. Install dependencies:
```bash
cargo build --release
```3. Install mdbook cli (required for the book generation to work):
```bash
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):
```json
"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 -

### MdBook Demo -

### MdBook Screenshots -

---
## 🧑💻 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 [[email protected]](mailto:[email protected]).