使用说明
熊mcp
用于的只读模型上下文协议(MCP)服务器 熊 笔记,建立在 熊查询。此服务器允许像Claude这样的人工智能助手搜索、检索和探索您的Bear笔记库。
特性
- 搜索笔记 -使用Bear的数据库索引进行高效的全文搜索
- 获取笔记详细信息 -按ID直接查找钞票,无需提取所有钞票
- 列表标记 -浏览Bear数据库中的所有标签
- 只读访问 -仅限安全、非破坏性的查询
- 快速SQLite访问 -以最小的开销优化查询
- 空安全 -正确处理缺少内容或元数据的笔记
可用工具
search_notes
使用可选过滤器按标题或内容在Bear中搜索笔记。使用Bear的数据库搜索功能进行高效查询。
参数:
query(可选):搜索文本以匹配笔记标题和内容。如果提供,则执行高效的数据库搜索。如果省略,则返回最近的笔记。pinned_only(可选):仅返回钉住的钞票include_trashed(可选):在结果中包含被丢弃的笔记(默认值:false)include_archived(可选):在结果中包含存档笔记(默认值:false)limit(可选):返回的最大结果数(默认值:搜索50,列表10)
示例:
// Search for notes containing "rust programming"
{
"query": "rust programming",
"limit": 10
}
// List pinned notes only
{
"pinned_only": true
}
// Get all notes including archived
{
"include_archived": true,
"limit": 100
}
get_note
通过特定笔记的唯一ID获取其全部内容。使用直接数据库查找进行快速检索。
参数:
note_id(必填):要检索的笔记的唯一标识符(UUID)
例子:
{
"note_id": "ABC123-DEF456-GHI789"
}
注: 此方法通过ID执行直接查找,并且不会获取所有笔记,因此非常高效。
list_tags
列出Bear数据库中所有带有修改日期的标签。
参数: 无
安装
先决条件
- 安装在macOS上的Bear notes应用程序
- Claude Desktop或其他兼容MCP的客户端
选项1:从crates.io安装(推荐)
cargo install bear-mcp
二进制文件将安装到 ~/.cargo/bin/bear-mcp (如果你安装了Rust,它应该已经在你的PATH中了)。
选项2:从源头构建
# Clone the repository
git clone https://github.com/jakeswenson/bear-mcp
cd bear-mcp
# Build the project
cargo build --release
# The binary will be at target/release/bear-mcp
配置
克劳德桌面
将服务器添加到Claude Desktop配置文件中:
地点: ~/Library/Application Support/Claude/claude_desktop_config.json
如果通过货物安装:
{
"mcpServers": {
"bear": {
"command": "/Users/YOUR_USERNAME/.cargo/bin/bear-mcp"
}
}
}
替换 YOUR_USERNAME 使用您的实际用户名。你可以通过跑步找到确切的路径 which bear-mcp 在你的终端。
如果从源代码构建:
{
"mcpServers": {
"bear": {
"command": "/Users/YOUR_USERNAME/path/to/bear-mcp/target/release/bear-mcp"
}
}
}
替换 /Users/YOUR_USERNAME/path/to/bear-mcp 使用克隆存储库的实际路径。
环境变量
服务器使用 RUST_LOG 日志配置的环境变量:
{
"mcpServers": {
"bear": {
"command": "/Users/YOUR_USERNAME/.cargo/bin/bear-mcp",
"env": {
"RUST_LOG": "info"
}
}
}
}
日志级别:
error-只有错误warn-警告和错误info-信息性消息(默认)debug-详细调试trace-非常冗长的输出
日志将写入stderr,并显示在Claude Desktop的日志中。
用法示例
配置后,您可以让Claude与您的Bear笔记进行交互:
- “在我的熊笔记中搜索有关Rust的任何信息”
- “显示我的固定笔记”
- “列出我的所有Bear标签”
- “获取注释ABC123-DEF456-GHI789的全部内容”
- “查找未存档的机器学习笔记”
运作原理
服务器以只读模式直接连接到Bear的SQLite数据库:
- 数据库位置:
~/Library/Group Containers/9K33E3U3T4.net.shinyfrog.bear/Application Data/database.sqlite - 访问模式:
SQLITE_OPEN_READ_ONLY随着PRAGMA query_only = ON - 连接策略: 为避免锁定问题,每个查询创建的连接时间较短
服务器使用 熊查询 图书馆提供:
- Bear核心数据结构的标准化视图
- 使用数据库索引高效搜索API
- 对缺失或不完整数据的零安全处理
- 按ID直接查找钞票,无需提取所有钞票
发展
在发展中奔跑
# Run with debug logging
RUST_LOG=debug cargo run
测试
您可以使用MCP检查器或通过管道传输JSON-RPC消息来测试服务器:
# Example: Call the list_tags tool
echo '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_tags"}}' | cargo run
建筑
- src/main.rs -入口点,设置日志记录和stdio传输
- src/bear_service.rs -带工具定义的MCP服务器实现
- Cargo.toml -依赖关系和构建配置
关键依赖关系
rmcp-Rust MCP SDKbear-query-Bear数据库查询库tokio-异步运行时tracing-记录和诊断serde-序列化框架
局限性
- 只读: 无法创建、修改或删除笔记
- 仅限macOS: Bear是一款macOS/iOS应用程序;此服务器需要macOS
- 无实时更新: 服务器按需查询数据库,而不监视更改
- 必须安装熊: 需要Bear的SQLite数据库存在
故障排除
“初始化Bear数据库失败”
- 确保Bear已安装,并且您至少打开过一次
- 检查数据库文件是否存在:
~/Library/Group Containers/9K33E3U3T4.net.shinyfrog.bear/Application Data/database.sqlite - 验证您是否具有数据库文件的读取权限
服务器未出现在Claude中
- 检查路径
claude_desktop_config.json是正确和绝对的 - 确保二进制文件可执行:
chmod +x target/release/bear-mcp - 修改配置后重新启动Claude Desktop
- 查看克劳德的日志:
~/Library/Logs/Claude/
空结果
- 确认您在Bear中有笔记
- 检查笔记是否被丢弃/存档,并相应地调整搜索参数
- 尝试
list_tags首先确认数据库连接
许可证
[在此处添加您的许可证]
贡献
[在此处添加贡献指南]
