Marimo文档MCP服务器
一种模型上下文协议(MCP)服务器,提供对 Marimo文件.
这种基于TypeScripts的MCP服务器允许您获取和搜索Marimo的API文档,提供对所有文档部分的组件、接口和示例的结构化访问。
特性
工具
get_element_api
获取任何Marimo UI元素或组件的详细API文档。
- 输入:
element(string)-要获取文档的元素的名称(例如,“滑块”、“按钮”) - 输出:结构化API文档,包括:
- 标题和说明 - 具有类型和默认值的参数 - 代码示例 - 使用模式
搜索api
搜索所有Marimo API文档。
- 输入:
query(string)-在文档中查找的搜索词 - 输出:来自任何部分的匹配文档条目数组
文件部分
服务器提供对所有Marimo组件文档的访问:
输入
- 表单元素(按钮、复选框、下拉列表等)
- 数据输入(数组、数据帧、字典)
- 文件处理(文件、文件浏览器)
- 交互元素(滑块、范围滑块、标签)
布局
- 结构组件(手风琴、侧边栏、树)
- 组织工具(标注、转盘)
- 内容管理(懒惰、路由)
媒体
- 媒体元素(音频、视频、图像)
- 文件处理(下载,pdf)
- 文本显示(plain_Text)
核心功能
- 降价
- 控制流程
- 绘图
- 超文本标记语言
- 状态管理
- 还有更多。..
发展
安装依赖项:
npm install构建服务器:
npm run build对于自动重建的开发:
npm run watch安装
使用克劳德桌面
添加到:
- MacOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 窗户:
%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"marimo-docs": {
"command": "/path/to/marimo-docs/build/index.js"
}
}
}使用VSCode Cline扩展
添加到:
- MacOS:
~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json - 窗户:
%APPDATA%/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json
{
"mcpServers": {
"marimo-docs": {
"command": "node",
"args": ["/path/to/marimo-docs/build/index.js"]
}
}
}调试
由于MCP服务器通过stdio进行通信,调试可能具有挑战性。对于开发,服务器将详细的日志输出到stderr。
您还可以使用 MCP检查员:
npm run inspector检查器将提供一个URL,用于访问浏览器中的调试工具。
错误处理
服务器提供有组织的错误消息,这些消息:
- 按部分列出所有可用元素
- 对无效请求提供明确反馈
- 包含正确的HTTP错误代码
实现细节
- 使用Cheerio对文档页面进行HTML解析
- 实施缓存以减少文档获取请求
- 处理所有文档部分的正确URL构造
- 支持对所有文档内容进行递归搜索

