@steno-ai/mcp 0.1.2 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +56 -17
- package/dist/cli.js +830 -921
- package/package.json +3 -5
- package/src/cli.ts +10 -46
package/README.md
CHANGED
|
@@ -1,16 +1,26 @@
|
|
|
1
1
|
# @steno-ai/mcp
|
|
2
2
|
|
|
3
|
-
MCP server
|
|
3
|
+
MCP server that gives Claude persistent long-term memory. Works with Claude Desktop, Claude Code, Cursor, Windsurf, and any MCP-compatible client.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Setup
|
|
6
|
+
|
|
7
|
+
### 1. Get your keys
|
|
8
|
+
|
|
9
|
+
You need a [Supabase](https://supabase.com) project and an [OpenAI](https://platform.openai.com) API key. Optionally a [Perplexity](https://perplexity.ai) key for cheaper embeddings.
|
|
10
|
+
|
|
11
|
+
### 2. Run the Supabase migrations
|
|
12
|
+
|
|
13
|
+
Clone the repo and run the schema migrations against your Supabase project:
|
|
6
14
|
|
|
7
15
|
```bash
|
|
8
|
-
|
|
16
|
+
git clone https://github.com/SankrityaT/steno-ai.git
|
|
17
|
+
cd steno-ai/packages/supabase-adapter/src/migrations
|
|
18
|
+
# Run each .sql file (001-025) in order via Supabase SQL Editor or CLI
|
|
9
19
|
```
|
|
10
20
|
|
|
11
|
-
|
|
21
|
+
### 3. Add to Claude Desktop
|
|
12
22
|
|
|
13
|
-
Add to
|
|
23
|
+
Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
|
|
14
24
|
|
|
15
25
|
```json
|
|
16
26
|
{
|
|
@@ -19,30 +29,59 @@ Add to your `claude_desktop_config.json`:
|
|
|
19
29
|
"command": "npx",
|
|
20
30
|
"args": ["-y", "@steno-ai/mcp"],
|
|
21
31
|
"env": {
|
|
22
|
-
"
|
|
32
|
+
"SUPABASE_URL": "https://YOUR-PROJECT.supabase.co",
|
|
33
|
+
"SUPABASE_SERVICE_ROLE_KEY": "eyJ...",
|
|
34
|
+
"OPENAI_API_KEY": "sk-...",
|
|
35
|
+
"PERPLEXITY_API_KEY": "pplx-... (optional)"
|
|
23
36
|
}
|
|
24
37
|
}
|
|
25
38
|
}
|
|
26
39
|
}
|
|
27
40
|
```
|
|
28
41
|
|
|
29
|
-
|
|
42
|
+
### 4. Restart Claude Desktop
|
|
43
|
+
|
|
44
|
+
The MCP server will connect automatically. Claude gets 5 memory tools:
|
|
30
45
|
|
|
31
46
|
| Tool | Description |
|
|
32
47
|
|------|-------------|
|
|
33
|
-
| `steno_remember` |
|
|
34
|
-
| `steno_recall` |
|
|
48
|
+
| `steno_remember` | Store facts, preferences, decisions, people, events |
|
|
49
|
+
| `steno_recall` | Search memory with 6-signal fusion retrieval |
|
|
50
|
+
| `steno_flush` | Force extraction of buffered session messages |
|
|
35
51
|
| `steno_feedback` | Rate whether a recalled memory was useful |
|
|
36
|
-
| `
|
|
37
|
-
| `steno_graph` | Explore entity relationships in the knowledge graph |
|
|
52
|
+
| `steno_stats` | View memory statistics |
|
|
38
53
|
|
|
39
|
-
##
|
|
54
|
+
## How it works
|
|
40
55
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
56
|
+
Every `steno_remember` call runs through the full extraction pipeline:
|
|
57
|
+
- **LLM fact extraction** with temporal grounding (eventDate + documentDate)
|
|
58
|
+
- **Knowledge graph** building (entities, typed edges, domain-scoped schemas)
|
|
59
|
+
- **Dedup + knowledge updates** (newer facts supersede older ones)
|
|
60
|
+
- **Contextual embeddings** (facts embedded with conversation context)
|
|
61
|
+
- **Session buffering** (messages batched for cross-message context)
|
|
62
|
+
|
|
63
|
+
Every `steno_recall` query uses **6-signal fusion**:
|
|
64
|
+
- Vector similarity (0.30) — semantic search
|
|
65
|
+
- Temporal proximity (0.20) — date-aware retrieval
|
|
66
|
+
- Graph traversal (0.15) — entity relationships
|
|
67
|
+
- Keyword/FTS (0.15) — exact term matching
|
|
68
|
+
- Recency decay (0.10) — prefer recent memories
|
|
69
|
+
- Salience (0.10) — importance × access frequency
|
|
70
|
+
|
|
71
|
+
## Claude Code
|
|
72
|
+
|
|
73
|
+
Works the same way — add to your Claude Code MCP config or install as a plugin.
|
|
74
|
+
|
|
75
|
+
## Environment Variables
|
|
76
|
+
|
|
77
|
+
| Variable | Required | Description |
|
|
78
|
+
|----------|----------|-------------|
|
|
79
|
+
| `SUPABASE_URL` | Yes | Your Supabase project URL |
|
|
80
|
+
| `SUPABASE_SERVICE_ROLE_KEY` | Yes | Supabase service role key |
|
|
81
|
+
| `OPENAI_API_KEY` | Yes | OpenAI API key (for LLM extraction) |
|
|
82
|
+
| `PERPLEXITY_API_KEY` | No | Perplexity key for cheaper embeddings |
|
|
83
|
+
| `STENO_SCOPE_ID` | No | Scope identifier (default: "default") |
|
|
45
84
|
|
|
46
85
|
## Part of [Steno](https://github.com/SankrityaT/steno-ai)
|
|
47
86
|
|
|
48
|
-
The memory layer for AI agents.
|
|
87
|
+
The memory layer for AI agents. 13 packages — engine, adapters, SDK, MCP server, and more.
|