这是一个用于处理Jupyter笔记本(.ipynb文件)的Model Context Protocol服务器,特别适用于大型语言模型(LLMs)。它将笔记本转换为简化后的纯文本格式以减少标记使用量和成本,并可以将其转换回原始格式。
load_notebook: 将一个.ipynb文件加载到内存中。
filepath (字符串): 到.ipynb文件的绝对路径。notebook_to_plain_text: 将一个.ipynb文件(已加载或从路径加载)转换为简化后的纯文本表示形式。
input_filepath (字符串, 可选): 对于即时转换的.ipynb文件的绝对路径。plain_text_to_notebook_file: 将纯文本内容转换回.ipynb文件并保存。
plain_text_content (字符串): 要转换的纯文本内容。output_filepath (字符串): 保存.ipynb文件的绝对路径(必须以.ipynb结尾)。add_code_cell_to_loaded_notebook: 向当前加载的笔记本添加一个新的代码单元格。
code_content (字符串): 新单元格的源代码。position (整数, 可选): 插入单元格的位置(如果为空则追加)。add_markdown_cell_to_loaded_notebook: 向当前加载的笔记本添加一个新的Markdown单元格。
markdown_content (字符串): 新单元格的Markdown内容。
* position (整数, 可选): 插入单元格的位置(如果为空则追加)。save_loaded_notebook: 将当前加载的笔记本保存到文件中。
output_filepath (字符串, 可选): 保存.ipynb文件的绝对路径(必须以.ipynb结尾)。如果为空,则保存到原始路径。当使用uv时,不需要特定的安装步骤。我们将使用uvx直接运行notebookllm_mcp。
或者,你可以通过pip安装notebookllm_mcp:
pip install notebookllm-mcp
安装后,你可以使用以下命令作为脚本运行它:
python -m notebookllm_mcp
在你的Claude设置中添加:
使用uvx
{
"mcpServers": {
"notebookllm": {
"command": "uvx",
"args": ["notebookllm_mcp"]
}
}
}
使用pip安装
{
"mcpServers": {
"notebookllm": {
"command": "python",
"args": ["-m", "notebookllm_mcp"]
}
}
}
在你的Zed settings.json中添加:
使用uvx
"context_servers": [
"notebookllm": {
"command": "uvx",
"args": ["notebookllm_mcp"]
}
],
使用pip安装
"context_servers": {
"notebookllm": {
"command": "python",
"args": ["-m", "notebookllm_mcp"]
}
},
为了快速安装,请使用下面的一个一键安装按钮...
对于手动安装,向你的VS Code用户设置(JSON)文件中添加以下JSON块。你可以通过按下Ctrl + Shift + P(或在macOS上按Cmd + Shift + P),然后键入Preferences: 打开用户设置(JSON)来完成此操作。
可选地,你可以将其添加到名为.vscode/mcp.json的工作区文件中。这将允许你与他人共享配置。
注意:当你使用
mcp.json文件时,需要mcp键。
使用uvx
{
"mcp": {
"servers": {
"notebookllm": {
"command": "uvx",
"args": ["notebookllm_mcp"]
}
}
}
}
使用pip安装
{
"mcp": {
"servers": {
"notebookllm": {
"command": "python",
"args": ["-m", "notebookllm_mcp"]
}
}
}
}
加载笔记本:
{
"name": "load_notebook",
"arguments": {
"filepath": "/path/to/your/notebook.ipynb"
}
}
响应:
{
"message": "Notebook /path/to/your/notebook.ipynb loaded successfully. Cell count: 10"
}
将加载的笔记本转换为纯文本:
{
"name": "notebook_to_plain_text",
"arguments": {}
}
响应:
# CELL 1 CODE
print("Hello World")
# CELL 2 MARKDOWN
这是一个Markdown单元格。
...
将纯文本转换回笔记本文件:
{
"name": "plain_text_to_notebook_file",
"arguments": {
"plain_text_content": "# CELL 1 CODE\nprint(\"Hello Again\")\n\n# CELL 2 MARKDOWN\n另一个Markdown单元格。",
"output_filepath": "/path/to/your/new_notebook.ipynb"
}
}
响应:
{
"message": "Notebook saved to /path/to/your/new_notebook.ipynb"
}
你可以使用MCP检查器来调试服务器。对于uvx安装:
npx @modelcontextprotocol/inspector uvx notebookllm_mcp
或者如果你是通过pip安装的包:
npx @modelcontextprotocol/inspector python -m notebookllm_mcp
这个包通常通过pip安装或直接使用uvx。如果你正在开发该包,可以使用标准的Python构建工具进行构建。
python -m build
欢迎贡献!请随时提交修复错误、新功能或改进文档的拉取请求。
该项目根据MIT许可证授权。