MCP Server Memos πŸ“

by RyoJerryYu

21 379 downloads Not rated yet MIT
GitHub

About

A Python package enabling LLM models to interact with the Memos server via the MCP interface for searching, creating, retrieving, and managing memos.

Details

License
MIT

Explore

- πŸ” Search memos with keywords
- ✨ Create new memos with customizable visibility
- πŸ“– Retrieve memo content by ID
- 🏷️ List and manage memo tags
- πŸ” Secure authentication using access tokens

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name MCP Server Memos πŸ“
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

You can include this package in your config file as bellow, just as you use other Python MCP plugins.

{
  ...,
  "mcpServers": {
    "fetch": { // other mcp servers
      "command": "uvx",
      "args": ["mcp-server-fetch"]
    },
    "memos": { // add this to your config
      "command": "uvx",
      "args": [
        "--prerelease=allow",
        "mcp-server-memos",
        "--host",
        "localhost",
        "--port",
        "5230",
        "--token",
        "your-access-token-here"
      ]
    }
  }
}

<details>
<summary>Other ways to use this package</summary>

To install mcp-server-memos-py for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @RyoJerryYu/mcp-server-memos-py --client claude
pip install mcp-server-memos

| Parameter | Description | Default |
|-----------|-------------|---------|
| host | Memos server hostname | localhost |
| port | Memos server port | 8080 |
| token | Access token for authentication | "" |

list_memo_tags

List all existing memo tags

search_memo

Search for memos using keywords

create_memo

Create a new memo

get_memo

Get a specific memo by ID

This MCP server provides the following tools for interacting with Memos:

| Tool Name | Description | Parameters |
|-----------|-------------|------------|
| list_memo_tags | List all existing memo tags | - parent: The parent who owns the tags (format: memos/{id}, default: "memos/-")<br>- visibility: Tag visibility (PUBLIC/PROTECTED/PRIVATE, default: PRIVATE) |
| search_memo | Search for memos using keywords | - key_word: The keywords to search for in memo content |
| create_memo | Create a new memo | - content: The content of the memo<br>- visibility: Memo visibility (PUBLIC/PROTECTED/PRIVATE, default: PRIVATE) |
| get_memo | Get a specific memo by ID | - name: The name/ID of the memo (format: memos/{id}) |

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "mcp server memos \ud83d\udcdd": {
            "mcp-server-memos-py": {
                "command": "npx",
                "args": [
                    "-y",
                    "@smithery/cli",
                    "install",
                    "@RyoJerryYu/mcp-server-memos-py",
                    "--client",
                    "claude"
                ]
            }
        }
    }
}

McpServers

{
    "mcp-server-memos-py": {
        "command": "npx",
        "args": [
            "-y",
            "@smithery/cli",
            "install",
            "@RyoJerryYu/mcp-server-memos-py",
            "--client",
            "claude"
        ]
    }
}

PyPI version
Python Version
License
smithery badge

A Python package that provides LLM models with the ability to interact with Memos server through the MCP (Model Context Protocol) interface.

πŸš€ Features

- πŸ” Search memos with keywords
- ✨ Create new memos with customizable visibility
- πŸ“– Retrieve memo content by ID
- 🏷️ List and manage memo tags
- πŸ” Secure authentication using access tokens

πŸ› οΈ Usage

You can include this package in your config file as bellow, just as you use other Python MCP plugins.

{
  ...,
  "mcpServers": {
    "fetch": { // other mcp servers
      "command": "uvx",
      "args": ["mcp-server-fetch"]
    },
    "memos": { // add this to your config
      "command": "uvx",
      "args": [
        "--prerelease=allow",
        "mcp-server-memos",
        "--host",
        "localhost",
        "--port",
        "5230",
        "--token",
        "your-access-token-here"
      ]
    }
  }
}

<details>
<summary>Other ways to use this package</summary>

πŸ“¦ Installation

Installing via Smithery

To install mcp-server-memos-py for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @RyoJerryYu/mcp-server-memos-py --client claude
Installing Manually
pip install mcp-server-memos

Command Line

mcp-server-memos --host localhost --port 8080 --token YOUR_ACCESS_TOKEN

As a Library

from mcp_server_memos import Config, serve_stdio

config = Config(
host="localhost",
port=8080,
token="YOUR_ACCESS_TOKEN"
)

await serve_stdio(config=config)

</details>

πŸ”§ Configuration

| Parameter | Description | Default |
|-----------|-------------|---------|
| host | Memos server hostname | localhost |
| port | Memos server port | 8080 |
| token | Access token for authentication | "" |

🀝 Available Tools

This MCP server provides the following tools for interacting with Memos:

| Tool Name | Description | Parameters |
|-----------|-------------|------------|
| list_memo_tags | List all existing memo tags | - parent: The parent who owns the tags (format: memos/{id}, default: "memos/-")<br>- visibility: Tag visibility (PUBLIC/PROTECTED/PRIVATE, default: PRIVATE) |
| search_memo | Search for memos using keywords | - key_word: The keywords to search for in memo content |
| create_memo | Create a new memo | - content: The content of the memo<br>- visibility: Memo visibility (PUBLIC/PROTECTED/PRIVATE, default: PRIVATE) |
| get_memo | Get a specific memo by ID | - name: The name/ID of the memo (format: memos/{id}) |

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

- Memos - A lightweight, self-hosted memo hub
- MCP (Model Context Protocol) - Protocol for LLM model applications

No reviews yet β€” be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.

Videos about MCP Server Memos πŸ“

Relevant YouTube tutorials, setups, and demos