https://github.com/ryojerryyu/mcp-server-memos-py
A Python package enabling LLM models to interact with the Memos server via the MCP interface for searching, creating, retrieving, and managing memos.
https://github.com/ryojerryyu/mcp-server-memos-py
mcp mcp-server mcp-servers memos model-context-protocol usememo
Last synced: 2 months ago
JSON representation
A Python package enabling LLM models to interact with the Memos server via the MCP interface for searching, creating, retrieving, and managing memos.
- Host: GitHub
- URL: https://github.com/ryojerryyu/mcp-server-memos-py
- Owner: RyoJerryYu
- License: mit
- Created: 2024-12-07T13:29:24.000Z (7 months ago)
- Default Branch: master
- Last Pushed: 2025-03-18T09:17:53.000Z (4 months ago)
- Last Synced: 2025-04-17T16:54:25.542Z (3 months ago)
- Topics: mcp, mcp-server, mcp-servers, memos, model-context-protocol, usememo
- Language: Python
- Homepage:
- Size: 118 KB
- Stars: 12
- Watchers: 1
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-mcp-registry - ❌ mcp-server-memos - taking application to automate note management, organization, and retrieval tasks. (python) (Other Tools and Integrations)
- awesome-mcp-registry - ❌ mcp-server-memos - taking application to automate note management, organization, and retrieval tasks. (python) (Other Tools and Integrations)
README
# MCP Server Memos 📝
[](https://pypi.org/project/mcp-server-memos/)
[](https://pypi.org/project/mcp-server-memos/)
[](https://github.com/RyoJerryYu/mcp-server-memos-py/blob/master/LICENSE)
[](https://smithery.ai/server/@RyoJerryYu/mcp-server-memos-py)A Python package that provides LLM models with the ability to interact with [Memos](https://github.com/usememos/memos) server through the [MCP (Model Context Protocol)](https://modelcontextprotocol.io/introduction) 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.
```jsonc
{
...,
"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
#### Installing via Smithery
To install mcp-server-memos-py for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@RyoJerryYu/mcp-server-memos-py):
```bash
npx -y @smithery/cli install @RyoJerryYu/mcp-server-memos-py --client claude
```#### Installing Manually
```bash
pip install mcp-server-memos
```### Command Line
```bash
mcp-server-memos --host localhost --port 8080 --token YOUR_ACCESS_TOKEN
```### As a Library
```python
from mcp_server_memos import Config, serve_stdioconfig = 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](LICENSE) file for details.
## 🙏 Acknowledgments
- [Memos](https://github.com/usememos/memos) - A lightweight, self-hosted memo hub
- [MCP (Model Context Protocol)](https://modelcontextprotocol.io/introduction) - Protocol for LLM model applications