io.github.jkawamoto/mcp-memos
An MCP server for interacting with Memos.
Open source Open in the app JSON README (API)
About
An MCP server for interacting with Memos.
Details
- Kind
- MCP servers
- Topic
- No topic detected
- Publisher
- jkawamoto
- Origin
- official
- Category
- ferramentas
- Transport
- local
- Version
- 0.1.0
- Last push
- 2026-05-16T08:25:23Z
- Repository state
- arquivado
- Language
- Python
- License
- MIT
- Added
- 2026-08-29 04:00:15
- Updated
- 2026-08-29 04:00:15
- Origin id
io.github.jkawamoto/mcp-memos
README
> [!NOTE]
> This repository is archived. As of [v0.27.0](https://github.com/usememos/memos/releases/tag/v0.27.0),
> Memos now includes a
> native [MCP server implementation](https://github.com/usememos/memos/tree/main/server/router/mcp),
> making this standalone server unnecessary.
# Memos MCP Server
[](https://github.com/jkawamoto/mcp-memos/actions/workflows/python-app.yaml)
[](https://github.com/jkawamoto/mcp-memos/blob/main/LICENSE)
[](https://github.com/pre-commit/pre-commit)
[](https://github.com/astral-sh/ruff)
An MCP server for interacting with [Memos](https://github.com/usememos/memos).
## Tools
This MCP server provides the following tools:
### `create_memo`
Create a memo and return the name of the memo.
#### Parameters
- **content** *(string)*: The content of the memo in Markdown format.
- **visibility** *(string, optional)*: The visibility of the memo (private, protected, public).
### `attach_file`
Attach a file to a memo.
#### Parameters
- **memo_name** *(string)*: The name of the memo.
- **filename** *(string)*: The name of the file.
- **content** *(string)*: Base64 representation of a file or a URL to a file to attach to the memo.
- **mime_type** *(string, optional)*: The MIME type of the file.
## Installation
> [!NOTE]
> You'll need [`uv`](https://docs.astral.sh/uv) installed on your system to use `uvx` command.
### For Claude Desktop
Download the latest MCP bundle `mcp-memos.mcpb` from
the [Releases](https://github.com/jkawamoto/mcp-memos/releases) page,
then open the downloaded `.mcpb `file or drag it into the Claude Desktop's Settings window.
You can also manually configure this server for Claude Desktop.
Edit the `claude_desktop_config.json` file by adding the following entry under `mcpServers`:
```json
{
"mcpServers": {
"bear": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/jkawamoto/mcp-memos",
"mcp-memos",
"--endpoint",
"<Memos server address>",
"--token",
"<Your token>"
]
}
}
}
```
After editing, restart the application.
For more information,
see: [For Claude Desktop Users - Model Context Protocol](https://modelcontextprotocol.io/quickstart/user).
### For Goose CLI
To enable the Bear extension in Goose CLI,
edit the configuration file `~/.config/goose/config.yaml` to include the following entry:
```yaml
extensions:
bear:
name: Memos
cmd: uvx
args: [--from, git+https://github.com/jkawamoto/mcp-memos, mcp-memos]
envs: {
"MEMOS_API_ENDPOINT": "<Memos server address>",
"MEMOS_API_TOKEN": "<Your token>"
}
enabled: true
type: stdio
```
### For Goose Desktop
Add a new extension with the following settings:
- **Type**: Standard IO
- **ID**: memos
- **Name**: Memos MCP Server
- **Description**: An MCP server for interacting with Memos
- **Command**: `uvx --from git+https://github.com/jkawamoto/mcp-memos mcp-memos`
- **Environment Variables**: Add `MEMOS_API_ENDPOINT` with Memos server address and `MEMOS_API_TOKEN` with your api token
For more details on configuring MCP servers in Goose Desktop,
refer to the documentation:
[Using Extensions - MCP Servers](https://block.github.io/goose/docs/getting-started/using-extensions#mcp-servers).
## License
This application is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.