Skip to content

Latest commit

 

History

History
107 lines (79 loc) · 3.23 KB

README.md

File metadata and controls

107 lines (79 loc) · 3.23 KB

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