synap-claude-agent
Synap memory integration for Anthropic's Claude Agent SDK (Python).
A TypeScript sibling package with the same API is published as @maximem/synap-claude-agent.
Install
pip install synap-claude-agent
Requires claude-agent-sdk>=0.1, maximem-synap>=0.2.0.
Two plug points
1. Hooks — automatic context injection
create_synap_hooks(...) installs a UserPromptSubmit hook that fetches Synap context for each prompt and injects it via additionalContext. Optionally records the user prompt to conversation history for future recall.
from claude_agent_sdk import query, ClaudeAgentOptions
from maximem_synap import MaximemSynapSDK
from synap_claude_agent import create_synap_hooks
sdk = MaximemSynapSDK(api_key="sk-...")
async for message in query(
prompt="What did I tell you about my trial?",
options=ClaudeAgentOptions(
hooks=create_synap_hooks(sdk, user_id="alice", customer_id="acme"),
),
):
print(message)
2. MCP tools — explicit read/write
create_synap_mcp_server(...) returns an in-process MCP server with two tools:
synap_search(query, max_results?)— semantic search over the user's memorysynap_remember(content, metadata?)— persist an explicit fact
options = ClaudeAgentOptions(
mcp_servers={"synap": create_synap_mcp_server(sdk, user_id="alice")},
allowed_tools=["mcp__synap__synap_search", "mcp__synap__synap_remember"],
)
Use both together for the full experience: automatic context injection plus agent-initiated read/write.
Error policy
- Hooks never raise — SDK failures log at
ERRORand fall through to no-op (no context injected, no prompt recorded). Context-provider style. synap_searchtool returns a "no context available" message on SDK failure — the tool call succeeds so the agent loop keeps going.synap_remembertool returnsisError=trueon ingestion failure — silent drops would hide ingestion outages, so we surface them to the agent explicitly.
Release files for maximem-synap-claude-agent 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| maximem_synap_claude_agent-0.2.0.tar.gz | 8.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| maximem_synap_claude_agent-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 18.4 kB
Release files / maximem_synap_claude_agent-0.2.0.tar.gz
| Download URL | maximem_synap_claude_agent-0.2.0.tar.gz |
|---|---|
| Size | 8.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8c906c850b6ece68ebc0efee217e873771eae0bebf30b5e4eef50df395d7b737
|
|
BLAKE2b-256 checksum How to use checksums |
f7aa0a740f2ddcb6ee8a118dcaf240e16f8dcd402f0dd8012a25e12aa6d74a90
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.15
|
Release files / maximem_synap_claude_agent-0.2.0-py3-none-any.whl
| Download URL | maximem_synap_claude_agent-0.2.0-py3-none-any.whl |
|---|---|
| Size | 9.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
455e6246fb849ab8efdc6a99e0e57ca1b54f2280a0804be74c13fcf2cc818e3b
|
|
BLAKE2b-256 checksum How to use checksums |
1dbab8ce3aa6586f3970c9e341cf370a73326196094edea35c8bada53e6f02fe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.15
|