mcp bear
Facilitates interaction with Bear note-taking software, allowing users to perform actions like opening notes, creating notes, and searching through Bear's X-callback-url Scheme.
Facilitates interaction with Bear note-taking software, allowing users to perform actions like opening notes, creating notes, and searching through Bear's X-callback-url Scheme.
[!IMPORTANT] This application is currently under development. A known issue exists where a browser opens for every API call.
A MCP server for interacting with Bear note-taking software.
To enable the Bear extension in Goose CLI,
edit the configuration file ~/.config/goose/config.yaml
to include the following entry:
extensions:
bear:
name: Bear
cmd: uvx
args: [--from, git+https://github.com/jkawamoto/mcp-bear, mcp-bear]
envs: { "BEAR_API_TOKEN": "<YOUR_TOKEN>" }
enabled: true
type: stdio
Add a new extension with the following settings:
uvx --from git+https://github.com/jkawamoto/mcp-bear mcp-bear
BEAR_API_TOKEN
with your api tokenFor more details on configuring MCP servers in Goose Desktop, refer to the documentation: Using Extensions - MCP Servers.
To configure this server for Claude Desktop, edit the claude_desktop_config.json
file with the following entry under
mcpServers
:
{
"mcpServers": {
"youtube-transcript": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/jkawamoto/mcp-bear",
"mcp-bear",
"--token",
"<YOUR_TOKEN>"
]
}
}
}
After editing, restart the application.
For more information,
see: For Claude Desktop Users - Model Context Protocol.
To install Bear MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @jkawamoto/mcp-bear --client claude
The server supports the following actions. Refer to Bear's X-callback-url Scheme documentation for details on each action.
This application is licensed under the MIT License. See the LICENSE file for more details.
[
{
"description": "Open a note identified by its title or id and return its content.",
"inputSchema": {
"properties": {
"id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": {
"path": "uv.lock",
"type": "blob"
},
"description": "note unique identifier",
"title": "Id"
},
"title": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": {
"path": "uv.lock",
"type": "blob"
},
"description": "note title",
"title": "Title"
}
},
"title": "open_noteArguments",
"type": "object"
},
"name": "open_note"
},
{
"description": "Create a new note and return its unique identifier. Empty notes are not allowed.",
"inputSchema": {
"properties": {
"tags": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": {
"path": "uv.lock",
"type": "blob"
},
"description": "list of tags",
"title": "Tags"
},
"text": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": {
"path": "uv.lock",
"type": "blob"
},
"description": "note body",
"title": "Text"
},
"timestamp": {
"default": false,
"description": "prepend the current date and time to the text",
"title": "Timestamp",
"type": "boolean"
},
"title": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": {
"path": "uv.lock",
"type": "blob"
},
"description": "note title",
"title": "Title"
}
},
"title": "createArguments",
"type": "object"
},
"name": "create"
},
{
"description": "Return all the tags currently displayed in Bearâs sidebar.",
"inputSchema": {
"properties": {},
"title": "tagsArguments",
"type": "object"
},
"name": "tags"
},
{
"description": "Show all the notes which have a selected tag in bear.",
"inputSchema": {
"properties": {
"name": {
"description": "tag name or a list of tags divided by comma",
"title": "Name",
"type": "string"
}
},
"required": [
"name"
],
"title": "open_tagArguments",
"type": "object"
},
"name": "open_tag"
},
{
"description": "Select the Todo sidebar item.",
"inputSchema": {
"properties": {
"search": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": {
"path": "uv.lock",
"type": "blob"
},
"description": "string to search",
"title": "Search"
}
},
"title": "todoArguments",
"type": "object"
},
"name": "todo"
},
{
"description": "Select the Today sidebar item.",
"inputSchema": {
"properties": {
"search": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": {
"path": "uv.lock",
"type": "blob"
},
"description": "string to search",
"title": "Search"
}
},
"title": "todayArguments",
"type": "object"
},
"name": "today"
},
{
"description": "Show search results in Bear for all notes or for a specific tag.",
"inputSchema": {
"properties": {
"tag": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": {
"path": "uv.lock",
"type": "blob"
},
"description": "tag to search into",
"title": "Tag"
},
"term": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": {
"path": "uv.lock",
"type": "blob"
},
"description": "string to search",
"title": "Term"
}
},
"title": "searchArguments",
"type": "object"
},
"name": "search"
},
{
"description": "Create a new note with the content of a web page and return its unique identifier.",
"inputSchema": {
"properties": {
"tags": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": {
"path": "uv.lock",
"type": "blob"
},
"description": "list of tags. If tags are specified in the Bearâs web content preferences, this parameter is ignored.",
"title": "Tags"
},
"url": {
"description": "url to grab",
"title": "Url",
"type": "string"
}
},
"required": [
"url"
],
"title": "grab_urlArguments",
"type": "object"
},
"name": "grab_url"
}
]