Skip to content

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

License

Notifications You must be signed in to change notification settings

RyoJerryYu/mcp-server-memos-py

Repository files navigation

MCP Server Memos 📝

PyPI version Python Version License

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"
      ]
    }
  }
}
Other ways to use this package

📦 Installation

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)

🔧 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/-")
- 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
- 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

About

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

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published