Add supermemory-local-mcp skill: self-hosted server + stdio MCP bridg… - #1508
Add supermemory-local-mcp skill: self-hosted server + stdio MCP bridg…#1508themorida-commits wants to merge 1 commit into
Conversation
…e + multi-project auto-sync - Local-only Supermemory server wiring (no cloud dependency) - Zero-dependency Python stdio MCP bridge to the REST-only local server - systemd user service for auto-start - Per-project container_tags with git post-commit auto-sync - Works with Claude Code, OpenCode, Cline, Kilo Code, Zed
| def get_document(document_id, container_tag=None): | ||
| tag = container_tag or CONTAINER | ||
| return _post("/v3/documents/list", {"containerTags": [tag], "limit": 50}) |
There was a problem hiding this comment.
The get_document function accepts a document_id parameter but never uses it. Instead, it returns a generic list of documents (identical to list_documents). This will break any MCP client attempting to retrieve a specific document by ID.
def get_document(document_id, container_tag=None):
tag = container_tag or CONTAINER
# Need to implement actual document retrieval by ID
# The local server may not support this - needs investigation
return _get(f"/v3/documents/{document_id}", {"containerTag": tag})If the v3 API doesn't support single document retrieval, the tool should be removed or the description updated to reflect actual behavior.
| def get_document(document_id, container_tag=None): | |
| tag = container_tag or CONTAINER | |
| return _post("/v3/documents/list", {"containerTags": [tag], "limit": 50}) | |
| def get_document(document_id, container_tag=None): | |
| tag = container_tag or CONTAINER | |
| return _get(f"/v3/documents/{document_id}", {"containerTag": tag}) | |
Spotted by Graphite
Is this helpful? React 👍 or 👎 to let us know.
| LOG="$HOME/.supermemory/sync.log" | ||
| { | ||
| echo "$(date -Is) [$project] commit: $msg" | ||
| /home/themorida/.local/bin/supermemory-sync remember-commit "$project" "$msg" $files |
There was a problem hiding this comment.
The post-commit hook contains a hardcoded absolute path /home/themorida/.local/bin/supermemory-sync which will fail for any user other than themorida. This breaks the multi-user setup instructions.
"$HOME/.local/bin/supermemory-sync" remember-commit "$project" "$msg" $filesor
~/.local/bin/supermemory-sync remember-commit "$project" "$msg" $files| /home/themorida/.local/bin/supermemory-sync remember-commit "$project" "$msg" $files | |
| "$HOME/.local/bin/supermemory-sync" remember-commit "$project" "$msg" $files |
Spotted by Graphite
Is this helpful? React 👍 or 👎 to let us know.
|
|
||
| [Service] | ||
| Type=oneshot | ||
| ExecStart=/home/themorida/.local/bin/supermemory-sync sync-rules |
There was a problem hiding this comment.
The systemd service file contains a hardcoded path /home/themorida/.local/bin/supermemory-sync which will fail for other users. Since this is a template file meant to be copied, it should use systemd's %h specifier for the home directory.
ExecStart=%h/.local/bin/supermemory-sync sync-rules
| ExecStart=/home/themorida/.local/bin/supermemory-sync sync-rules | |
| ExecStart=%h/.local/bin/supermemory-sync sync-rules | |
Spotted by Graphite
Is this helpful? React 👍 or 👎 to let us know.
…e + multi-project auto-sync