memory-hive-mcp
Local-first memory your AI agents share over MCP. Agents propose; only you confirm.
memory-hive-mcp is a thin Model Context Protocol server.
It lets any MCP-capable host (Claude Desktop, Cursor, and friends) read and write your
memory — stored on your computer, by your Hive, never uploaded anywhere.
This package contains no memory engine. It relays MCP protocol traffic to the Hive app already running on your machine (
127.0.0.1:8768). Your data never passes through this bridge as stored state, and nothing leaves your computer.
Install
pip install memory-hive-mcp
Requires Python 3.8+. No third-party dependencies. This installs the command
memory-hive-mcp.
(Note: an unrelated project owns the plain hive-mcp name on PyPI — that is not us.)
Prerequisite: a running Hive
memory-hive-mcp talks to the Hive on your own machine. Get it from the Mac App Store:
https://apps.apple.com/app/id6806992983
Then register an agent inside the Hive (POST /api/agent/register) to obtain an
agent_id and access_token.
Configure your MCP host
Add the server to your host's MCP config. For Claude Desktop
(~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"hive-memory": {
"command": "memory-hive-mcp",
"env": {
"HIVE_AGENT_ID": "your-agent-id",
"HIVE_AGENT_TOKEN": "your-access-token"
}
}
}
}
Environment variables
| Name | Required | Description |
|---|---|---|
HIVE_AGENT_ID |
yes | Agent id issued by your own Hive. |
HIVE_AGENT_TOKEN |
yes | Access token issued when the agent was registered. Keep it secret. |
HIVE_MCP_URL |
no | Hive MCP endpoint. Defaults to http://127.0.0.1:8768/mcp. |
The six tools
| Tool | Direction | What it does |
|---|---|---|
recall |
read | Semantic search over your memory. {"query": "...", "limit": 10, "compact": true} — optional vaults narrows the search, query_vector switches to embedding recall. |
propose |
write → pending | Submits a memory for your approval. {"content": "..."} plus optional title, vault, tags, vector, and client_id as an idempotency key. Returns a conflict_warning when a near-duplicate exists. |
manage |
admin | Routed by action: list_pending / forget (soft delete) / restore / get_by_id / discard_pending. |
get_context |
session start | Pulls recent memory from your active threads and open tasks to seed a conversation. {"limit": 8}. |
say |
collaboration | Posts to the shared board. {"summary": "..."} plus optional to, kind, stage, task_id, refs, ttl. |
board |
collaboration | Reads the shared board with a cursor. {"limit": 20, "since": "<cursor>"} — roster: true also returns who is on duty. |
A typical session: get_context on open → recall mid-conversation → when you say "keep
this", it proposes → you confirm in your Hive on the Mac.
A shared ledger, not just a shared store
say and board make the Hive something more than a memory table: a place where several
agents and one human keep the same ledger.
An agent posts what it just finished (say); another picks it up on its own schedule
(board with a cursor) — no push, no waking anyone up, no orchestrator in the middle.
Identity comes from the credential, not from a field the caller can set, so one agent
cannot speak as another, and the human sees every hand-off in the same thread.
Your agent can propose. It cannot decide.
This is the design point that separates this server from a memory cache.
An agent can propose a memory, but it cannot confirm one. What it writes lands in a
pending queue and stays there until you accept it inside your own Hive. There is no
self-confirm, no silent background write, no path by which a model quietly decides what
is true about you.
Memory is partitioned into vaults, and the boundary is enforced by the Hive — checked server-side, not promised by a prompt:
| Agent type | Public vaults | Private vaults |
|---|---|---|
Cloud agent (mcp / mobile) |
✅ open | 🔒 sealed |
| Local agent (non-cloud) | ✅ open | ✅ open |
Agents missing from the registration table are sealed by default. A private vault entry is not readable, deletable, or restorable by an agent that is not allowed to see it.
Why a bridge, not a bundle
Your memory should have exactly one writer: the Hive on your machine. This server therefore speaks protocol and nothing else — no data files are opened, no state is cached, no engine is duplicated. That keeps your memory single-sourced, local, and under your control.
Status
Alpha (0.x). The wire protocol is stable; configuration and tool signatures may still change.
Links
- Repository: https://github.com/330899935/memory-hive-ios
- Project home: https://hello-fengchao.com
- MCP integration docs: https://hello-fengchao.com/mcp.html
License
MIT
Metadata
Release files for memory-hive-mcp 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| memory_hive_mcp-0.1.1.tar.gz | 6.2 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| memory_hive_mcp-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 12.8 kB
Release files / memory_hive_mcp-0.1.1.tar.gz
| Download URL | memory_hive_mcp-0.1.1.tar.gz |
|---|---|
| Size | 6.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
bb47e08b9774ab7d80f517cd0cb91432ada12644cd624e96c692fedb49214255
|
|
BLAKE2b-256 checksum How to use checksums |
b91cbef1cdb70a8999367edcffd44a7c31283ff5452bf62b77b3f537f9ded008
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.12
|
Release files / memory_hive_mcp-0.1.1-py3-none-any.whl
| Download URL | memory_hive_mcp-0.1.1-py3-none-any.whl |
|---|---|
| Size | 6.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b53e870e6ad5d003caf693a149743ba11e6f585edc4a20166a90aef84fb63c37
|
|
BLAKE2b-256 checksum How to use checksums |
791859de20cfeee4fab5209a95e71404599d7253248ab2f581905bebd339fc92
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.12
|
Security for memory-hive-mcp 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.