| name | bear |
| description | Interacts with Bear note-taking app on macOS via X-Callback-URL. Use when user asks to create Bear notes, search notes, add text to notes, manage tags, capture web pages to Bear, or perform any other Bear note management tasks. Supports note creation, text appending, tag management, note search, and web page capture. |
Bear Note Integration
Integrates Claude with the Bear note-taking app on macOS, enabling automated note creation, searching, editing, and tag management through X-Callback-URL.
Quick Start
Prerequisites
- Bear app installed on macOS
- API Token (optional, for search/tags features):
- Help > Advanced > API Token > Copy Token
- Set environment variable:
export BEAR_API_TOKEN="your-token"
- xcall tool (optional, for response handling):
Basic Usage
Create a note:
from scripts.bear import create_note
create_note(title="My Note", text="Content here", tags="work,important")
result = create_note(title="My Note", text="Content", return_id=True)
print(result['identifier'])
Search notes:
from scripts.bear import search_notes
results = search_notes(term="project-x", tag="work")
for note in results:
print(f"{note['title']} - {note['identifier']}")
Core Tasks
1. Create Notes
Create new notes in Bear with optional tags and timestamps.
from scripts.bear import create_note
create_note(
title="Daily Standup",
text="## Progress\n- Task 1 complete\n- Task 2 in progress",
tags="work,standup"
)
create_note(
title="Meeting Notes",
text="Key discussion points...",
tags="meetings",
add_timestamp=True
)
result = create_note(
title="Important Note",
text="Critical information",
return_id=True
)
note_id = result['identifier']
2. Search Notes
Find notes by keywords with optional tag filtering.
from scripts.bear import search_notes
results = search_notes(term="Python")
results = search_notes(term="bug", tag="development")
for note in results:
print(f"Title: {note['title']}")
print(f"ID: {note['identifier']}")
print(f"Modified: {note['modificationDate']}")
3. Add Text to Notes
Append or replace text in existing notes.
from scripts.bear import add_text
add_text(
note_id="7E4B681B",
text="\n\n## Update\nNew content added",
mode="append"
)
add_text(
note_id="7E4B681B",
text="- New item",
mode="append",
header="TODO"
)
add_text(
note_id="7E4B681B",
text="New complete content",
mode="replace_all"
)
4. Manage Tags
List, rename, and delete tags.
from scripts.bear import get_tags, rename_tag, delete_tag
tags = get_tags()
for tag in tags:
print(tag['name'])
rename_tag(old_name="todo", new_name="inbox")
delete_tag(name="archive")
5. Capture Web Pages
Save web page content as new Bear notes.
from scripts.bear import grab_url
result = grab_url(
url="https://example.com/article",
tags="reference,articles"
)
result = grab_url(
url="https://docs.python.org",
tags="docs",
return_id=True
)
note_id = result['identifier']
Bundled Resources
scripts/
Python module bear.py provides functions for all Bear X-Callback-URL actions:
create_note() - Create notes
search_notes() - Search notes
add_text() - Append/replace text
open_note() - Open notes
get_tags() - List all tags
rename_tag() - Rename tags
delete_tag() - Delete tags
grab_url() - Capture web pages
trash_note(), archive_note() - Organize notes
references/
- actions.md: Complete X-Callback-URL API reference with all parameters
- workflows.md: Common workflows and integration patterns
- troubleshooting.md: Setup help and common issues
See these files for detailed API documentation and advanced usage patterns.