这是一个用于Notion集成的Model Context Protocol (MCP)服务器实现,提供了一个与Notion API交互的标准接口。兼容Claude Desktop和其他MCP客户端。
要通过Smithery自动安装Claude Desktop的Notion集成服务器:
npx -y @smithery/cli install @ccabanillas/notion-mcp --client claude
git clone https://github.com/ccabanillas/notion-mcp.git
cd notion-mcp
uv venv
source .venv/bin/activate # 在Windows上:.venv\Scripts\activate
uv pip install -e .
或者,使用标准的venv:
python -m venv venv
source venv/bin/activate # 在Windows上:venv\Scripts\activate
pip install -e .
.env文件:NOTION_API_KEY=your_notion_integration_token
python -m notion_mcp
claude_desktop_config.json文件(位于macOS上的~/Library/Application Support/Claude/claude_desktop_config.json):{
"servers": {
"notion-mcp": {
"command": "/Users/username/Projects/notion-mcp/.venv/bin/python",
"args": ["-m", "notion_mcp"],
"cwd": "/Users/username/Projects/notion-mcp"
}
}
}
确保将/Users/username/替换为你实际的主目录路径。
notion-mcp/
├── src/
│ └── notion_mcp/
│ ├── models/
│ │ ├── __init__.py
│ │ └── notion.py # Notion对象的Pydantic模型
│ ├── __init__.py
│ ├── __main__.py # 入口点
│ ├── client.py # Notion API客户端
│ └── server.py # MCP服务器实现
├── .env # 环境变量(在此添加你的Notion API密钥)
├── .gitignore
├── pyproject.toml # 项目依赖项
└── README.md
pytest
服务器需要一个Notion集成令牌。设置步骤如下:
.env文件中:NOTION_API_KEY=your_notion_integration_token
git checkout -b feature/amazing-feature)git commit -m '添加一些惊人的功能')git push origin feature/amazing-feature)MIT许可证 - 自行承担风险