Overview
What is NotionBae?
NotionBae is a Model Context Protocol (MCP) server built with .NET C# that integrates with Notion.com via the Notion API. It provides a bridge between Large Language Models and Notion workspaces, allowing AI assistants to interact with Notion databases, pages, and content in a structured way.
How to use NotionBae?
Clone the repository, build with dotnet build, set the Notion:AuthToken environment variable with your Notion API key, and run dotnet run --project PATH_TO_NOTIONBAE_PROJECT/src/NotionBae.csproj. For VS Code, add an MCP server configuration in settings.json pointing to http://localhost:5001/mcp.
Key features of NotionBae
- MCP-compliant server for AI assistant integration
- Search, create, read, and update Notion pages
- Converts between Notion blocks and Markdown format
- Uses Notion SDK for .NET with an improved REST client
- Authentication via Notion API integration key
- Custom HttpClientFactory for proper connection pooling
Use cases of NotionBae
- Search Notion pages and retrieve titles and public URLs
- Create new Notion pages with markdown content
- Retrieve full page content in markdown format
- Update existing Notion pages with new markdown content
- Advanced page search with filtering capabilities
FAQ from NotionBae
What technologies does NotionBae use?
It uses the Notion SDK for .NET as a foundation and Markdig for converting between Notion's block structure and Markdown.
Why does NotionBae use Markdown as an intermediary format?
Markdown reduces token usage compared to verbose Notion block structure, improves readability for humans and AI agents, and simplifies content generation.
What tools does NotionBae provide?
nb_search, nb_create_page, nb_get_page_content, nb_get_block, nb_search_page, and nb_update_page for searching, creating, retrieving, and updating Notion pages and blocks.
How do I set up a Notion integration for NotionBae?
Create an integration at notion.so/my-integrations, enable “Read content” and “Update content” capabilities, copy the Internal Integration Secret as your API key, and share target pages with the integration.
What environment variable is required to run NotionBae?
The Notion:AuthToken environment variable must be set to your Notion API key.