memopaper-mcp
# memopaper-mcp
MCP server for [memopaper](https://memopaper.dev) — gives AI agents direct access to your memo buffer.
## Configuration
### Claude Desktop
Add to `claude_desktop_config.json`:
```json
{
"mcpServers": {
"memopaper": {
"command": "npx",
"args": ["memopaper-mcp@latest"],
"env": {
"MEMOPAPER_API_KEY": "mp_..."
}
}
}
}
```
### Claude Code
Add `.mcp.json` to your project root:
```json
{
"mcpServers": {
"memopaper": {
"command": "npx",
"args": ["memopaper-mcp@latest"],
"env": {
"MEMOPAPER_API_KEY": "mp_..."
}
}
}
}
```
Get your API key at [memopaper.dev](https://memopaper.dev) under **Dashboard → API Keys**.
> **Note:** Never commit `.mcp.json` containing your API key to version control. Add it to `.gitignore`.
## Tool
Exposes a single `memo` tool with the following actions:
| Action | Description | Required params |
|--------|-------------|-----------------|
| `add` | Save a memo | `text` |
| `list` | List memos | — |
| `get` | Get a memo by UUID | `uuid` |
| `get_nth` | Get the Nth latest memo (1=newest) | `index` |
| `latest` | Get the latest memo | — |
| `oldest` | Get the oldest memo | — |
| `pop` | Get and delete the latest memo | — |
| `delete` | Delete a memo by UUID | `uuid` |
| `edit` | Edit a memo's text | `uuid`, `text` |
| `stats` | Show total count and per-group breakdown | — |
Optional params on most actions: `group`, `visibility`, `limit`.
## Environment Variables
| Variable | Required | Description |
|----------|----------|-------------|
| `MEMOPAPER_API_KEY` | Yes | API key from the dashboard, starting with `mp_` |
## Claude Code Skills
For Claude Code users, optional slash commands are available in the `skills/` directory:
| Skill | Description |
|-------|-------------|
| `skills/watch.md` | `/memopaper:watch` — watch a group and execute memos sequentially |
| `skills/help.md` | `/memopaper:help` — show usage help |
**Install:**
```bash
mkdir -p ~/.claude/commands/memopaper
cp skills/watch.md ~/.claude/commands/memopaper/watch.md
cp skills/help.md ~/.claude/commands/memopaper/help.md
```
**Usage:**
```
/memopaper:watch @tasks
/memopaper:watch @tasks 10
/memopaper:watch @tasks --shell
```
> **Warning**: All memo execution — whether as AI instructions or shell commands — runs on your machine with your permissions.
> You are fully responsible for the content and consequences of every memo in the queue.
> Use only with memo groups you fully control and trust.
>
> Shell execution is **disabled by default**. Pass `--shell` to enable it. Even then, destructive commands (`rm`, `del`, `git reset --hard`, `dd`, etc.) are automatically blocked and logged to `@warning`.
## Related
- [memopaper.dev](https://memopaper.dev) — web dashboard
- [memopaper](https://www.npmjs.com/package/memopaper) — CLI client
TDQS
Scored across 1 tool
Only one tool exists, so there is no risk of confusing separate tools. The internal actions (add, list, get, delete, etc.) are distinct and well-named, making selection unambiguous.
The tool is named 'memo' and uses simple verb-based actions. While the verb_noun pattern is not used at the tool level, the internal actions are consistently lowercase verbs, and the overall naming is predictable and readable.
A single tool is quite thin for a tool surface, even though it packs many operations. The server would benefit from splitting actions into separate tools, but the current count is not a functional problem.
The tool provides full CRUD plus list, search-by-index, latest/oldest, pop (read+delete), and stats. This covers the memo domain thoroughly, leaving no obvious dead ends.