memory-journal-mcp 3.0.0 → 3.1.2
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/.github/dependabot.yml +31 -46
- package/.github/workflows/codeql.yml +1 -1
- package/.github/workflows/docker-publish.yml +38 -7
- package/.github/workflows/lint-and-test.yml +2 -2
- package/.github/workflows/publish-npm.yml +1 -1
- package/.github/workflows/secrets-scanning.yml +1 -1
- package/.github/workflows/security-update.yml +1 -1
- package/DOCKER_README.md +36 -10
- package/Dockerfile +5 -5
- package/README.md +86 -12
- package/VERSION +1 -1
- package/dist/cli.js +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/constants/ServerInstructions.d.ts +24 -1
- package/dist/constants/ServerInstructions.d.ts.map +1 -1
- package/dist/constants/ServerInstructions.js +173 -13
- package/dist/constants/ServerInstructions.js.map +1 -1
- package/dist/github/GitHubIntegration.d.ts +18 -3
- package/dist/github/GitHubIntegration.d.ts.map +1 -1
- package/dist/github/GitHubIntegration.js +301 -3
- package/dist/github/GitHubIntegration.js.map +1 -1
- package/dist/handlers/prompts/index.js +2 -2
- package/dist/handlers/prompts/index.js.map +1 -1
- package/dist/handlers/resources/index.js +122 -1
- package/dist/handlers/resources/index.js.map +1 -1
- package/dist/handlers/tools/index.js +116 -0
- package/dist/handlers/tools/index.js.map +1 -1
- package/dist/server/McpServer.d.ts.map +1 -1
- package/dist/server/McpServer.js +21 -6
- package/dist/server/McpServer.js.map +1 -1
- package/dist/types/index.d.ts +43 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/vector/VectorSearchManager.js +2 -2
- package/dist/vector/VectorSearchManager.js.map +1 -1
- package/package.json +9 -7
- package/releases/v3.1.0.md +101 -0
- package/releases/v3.1.1.md +40 -0
- package/releases/v3.1.2.md +38 -0
- package/server.json +3 -3
- package/src/cli.ts +1 -1
- package/src/constants/ServerInstructions.ts +207 -13
- package/src/github/GitHubIntegration.ts +383 -3
- package/src/handlers/prompts/index.ts +2 -2
- package/src/handlers/resources/index.ts +140 -1
- package/src/handlers/tools/index.ts +137 -0
- package/src/server/McpServer.ts +33 -9
- package/src/types/index.ts +51 -0
- package/src/vector/VectorSearchManager.ts +2 -2
package/.github/dependabot.yml
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
# Dependabot configuration for Memory Journal MCP Server
|
|
2
|
-
#
|
|
2
|
+
# v3.0.0+ is a TypeScript/Node.js project (npm dependencies)
|
|
3
|
+
# The Python codebase is deprecated and archived in archive/python-v2
|
|
3
4
|
|
|
4
5
|
version: 2
|
|
5
6
|
updates:
|
|
6
|
-
#
|
|
7
|
-
- package-ecosystem: "
|
|
7
|
+
# NPM dependencies (TypeScript/Node.js - v3.0.0+)
|
|
8
|
+
- package-ecosystem: "npm"
|
|
8
9
|
directory: "/"
|
|
9
10
|
schedule:
|
|
10
11
|
interval: "weekly"
|
|
@@ -16,61 +17,45 @@ updates:
|
|
|
16
17
|
- "neverinfamous"
|
|
17
18
|
labels:
|
|
18
19
|
- "dependencies"
|
|
19
|
-
- "
|
|
20
|
-
# Group ML/AI related packages to reduce PR noise
|
|
20
|
+
- "npm"
|
|
21
21
|
groups:
|
|
22
|
+
mcp-core:
|
|
23
|
+
patterns:
|
|
24
|
+
- "@modelcontextprotocol/*"
|
|
25
|
+
- "zod*"
|
|
26
|
+
update-types:
|
|
27
|
+
- "minor"
|
|
28
|
+
- "patch"
|
|
22
29
|
ml-packages:
|
|
23
30
|
patterns:
|
|
24
|
-
- "
|
|
25
|
-
- "
|
|
26
|
-
- "transformers*"
|
|
27
|
-
- "sentence-transformers*"
|
|
28
|
-
- "huggingface-*"
|
|
29
|
-
- "scikit-learn*"
|
|
30
|
-
- "scipy*"
|
|
31
|
-
- "numpy*"
|
|
32
|
-
- "faiss-*"
|
|
33
|
-
- "pillow*"
|
|
34
|
-
- "tokenizers*"
|
|
35
|
-
- "safetensors*"
|
|
31
|
+
- "@xenova/*"
|
|
32
|
+
- "vectra*"
|
|
36
33
|
update-types:
|
|
37
34
|
- "minor"
|
|
38
35
|
- "patch"
|
|
39
|
-
|
|
36
|
+
database:
|
|
40
37
|
patterns:
|
|
41
|
-
- "
|
|
42
|
-
- "
|
|
43
|
-
- "httpx*"
|
|
44
|
-
- "starlette*"
|
|
45
|
-
- "uvicorn*"
|
|
38
|
+
- "sql.js*"
|
|
39
|
+
- "better-sqlite3*"
|
|
46
40
|
update-types:
|
|
47
41
|
- "minor"
|
|
48
42
|
- "patch"
|
|
49
|
-
|
|
43
|
+
build-tools:
|
|
50
44
|
patterns:
|
|
51
|
-
- "
|
|
52
|
-
- "
|
|
53
|
-
- "
|
|
54
|
-
- "requests*"
|
|
55
|
-
- "urllib3*"
|
|
56
|
-
- "certifi*"
|
|
57
|
-
- "charset-normalizer*"
|
|
58
|
-
- "idna*"
|
|
59
|
-
- "filelock*"
|
|
60
|
-
- "packaging*"
|
|
61
|
-
- "attrs*"
|
|
45
|
+
- "typescript*"
|
|
46
|
+
- "tsup*"
|
|
47
|
+
- "@types/*"
|
|
62
48
|
update-types:
|
|
49
|
+
- "minor"
|
|
50
|
+
- "patch"
|
|
51
|
+
linting:
|
|
52
|
+
patterns:
|
|
53
|
+
- "eslint*"
|
|
54
|
+
- "@eslint/*"
|
|
55
|
+
- "typescript-eslint*"
|
|
56
|
+
update-types:
|
|
57
|
+
- "minor"
|
|
63
58
|
- "patch"
|
|
64
|
-
# Ignore specific packages that might cause compatibility issues
|
|
65
|
-
ignore:
|
|
66
|
-
# NVIDIA CUDA packages - only update for security fixes
|
|
67
|
-
- dependency-name: "nvidia-*"
|
|
68
|
-
update-types: ["version-update:semver-minor"]
|
|
69
|
-
# PyTorch - be conservative with updates
|
|
70
|
-
- dependency-name: "torch"
|
|
71
|
-
update-types: ["version-update:semver-major"]
|
|
72
|
-
- dependency-name: "triton"
|
|
73
|
-
update-types: ["version-update:semver-major"]
|
|
74
59
|
|
|
75
60
|
# GitHub Actions
|
|
76
61
|
- package-ecosystem: "github-actions"
|
|
@@ -94,7 +79,7 @@ updates:
|
|
|
94
79
|
- "minor"
|
|
95
80
|
- "patch"
|
|
96
81
|
|
|
97
|
-
# Docker dependencies
|
|
82
|
+
# Docker dependencies
|
|
98
83
|
- package-ecosystem: "docker"
|
|
99
84
|
directory: "/"
|
|
100
85
|
schedule:
|
|
@@ -23,10 +23,41 @@ permissions:
|
|
|
23
23
|
attestations: write
|
|
24
24
|
|
|
25
25
|
jobs:
|
|
26
|
+
# Gate check: For tag pushes, run lint/typecheck/build first
|
|
27
|
+
preflight-check:
|
|
28
|
+
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v')
|
|
29
|
+
runs-on: ubuntu-latest
|
|
30
|
+
steps:
|
|
31
|
+
- name: Checkout code
|
|
32
|
+
uses: actions/checkout@v6
|
|
33
|
+
|
|
34
|
+
- name: Setup Node.js
|
|
35
|
+
uses: actions/setup-node@v6
|
|
36
|
+
with:
|
|
37
|
+
node-version: '22.x'
|
|
38
|
+
cache: 'npm'
|
|
39
|
+
|
|
40
|
+
- name: Install dependencies
|
|
41
|
+
run: npm ci
|
|
42
|
+
|
|
43
|
+
- name: Run ESLint
|
|
44
|
+
run: npm run lint
|
|
45
|
+
|
|
46
|
+
- name: Run TypeScript check
|
|
47
|
+
run: npm run typecheck
|
|
48
|
+
|
|
49
|
+
- name: Build
|
|
50
|
+
run: npm run build
|
|
51
|
+
|
|
26
52
|
# Build each platform on native architecture (avoids QEMU emulation issues)
|
|
27
53
|
build-platform:
|
|
28
|
-
#
|
|
29
|
-
|
|
54
|
+
# For workflow_run: only run if lint-and-test succeeded
|
|
55
|
+
# For tag push: only run after preflight-check succeeds
|
|
56
|
+
needs: [preflight-check]
|
|
57
|
+
if: |
|
|
58
|
+
always() &&
|
|
59
|
+
(github.event.workflow_run.conclusion == 'success' ||
|
|
60
|
+
(github.event_name == 'push' && needs.preflight-check.result == 'success'))
|
|
30
61
|
strategy:
|
|
31
62
|
fail-fast: false
|
|
32
63
|
matrix:
|
|
@@ -48,7 +79,7 @@ jobs:
|
|
|
48
79
|
|
|
49
80
|
steps:
|
|
50
81
|
- name: Checkout repository
|
|
51
|
-
uses: actions/checkout@
|
|
82
|
+
uses: actions/checkout@v6
|
|
52
83
|
|
|
53
84
|
- name: Set up Docker Buildx
|
|
54
85
|
uses: docker/setup-buildx-action@v3
|
|
@@ -112,7 +143,7 @@ jobs:
|
|
|
112
143
|
|
|
113
144
|
- name: Upload digest
|
|
114
145
|
if: github.event_name != 'pull_request'
|
|
115
|
-
uses: actions/upload-artifact@
|
|
146
|
+
uses: actions/upload-artifact@v6
|
|
116
147
|
with:
|
|
117
148
|
name: digests-${{ matrix.platform == 'linux/amd64' && 'amd64' || 'arm64' }}
|
|
118
149
|
path: /tmp/digests/*
|
|
@@ -130,7 +161,7 @@ jobs:
|
|
|
130
161
|
|
|
131
162
|
steps:
|
|
132
163
|
- name: Checkout repository
|
|
133
|
-
uses: actions/checkout@
|
|
164
|
+
uses: actions/checkout@v6
|
|
134
165
|
|
|
135
166
|
- name: Set up Docker Buildx
|
|
136
167
|
uses: docker/setup-buildx-action@v3
|
|
@@ -198,10 +229,10 @@ jobs:
|
|
|
198
229
|
|
|
199
230
|
steps:
|
|
200
231
|
- name: Checkout repository
|
|
201
|
-
uses: actions/checkout@
|
|
232
|
+
uses: actions/checkout@v6
|
|
202
233
|
|
|
203
234
|
- name: Download digests
|
|
204
|
-
uses: actions/download-artifact@
|
|
235
|
+
uses: actions/download-artifact@v7
|
|
205
236
|
with:
|
|
206
237
|
path: /tmp/digests
|
|
207
238
|
pattern: digests-*
|
|
@@ -18,7 +18,7 @@ jobs:
|
|
|
18
18
|
|
|
19
19
|
steps:
|
|
20
20
|
- name: Checkout code
|
|
21
|
-
uses: actions/checkout@
|
|
21
|
+
uses: actions/checkout@v6
|
|
22
22
|
|
|
23
23
|
- name: Setup Node.js ${{ matrix.node-version }}
|
|
24
24
|
uses: actions/setup-node@v6
|
|
@@ -42,7 +42,7 @@ jobs:
|
|
|
42
42
|
runs-on: ubuntu-latest
|
|
43
43
|
steps:
|
|
44
44
|
- name: Checkout code
|
|
45
|
-
uses: actions/checkout@
|
|
45
|
+
uses: actions/checkout@v6
|
|
46
46
|
|
|
47
47
|
- name: Setup Node.js
|
|
48
48
|
uses: actions/setup-node@v6
|
package/DOCKER_README.md
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
# Memory Journal MCP Server
|
|
2
2
|
|
|
3
|
-
Last Updated
|
|
3
|
+
Last Updated January 11, 2026 - v3.1.2
|
|
4
4
|
|
|
5
5
|
[](https://github.com/neverinfamous/memory-journal-mcp)
|
|
6
6
|
[](https://hub.docker.com/r/writenotenow/memory-journal-mcp)
|
|
7
7
|
[](https://opensource.org/licenses/MIT)
|
|
8
|
-

|
|
9
9
|

|
|
10
10
|
[](https://www.npmjs.com/package/memory-journal-mcp)
|
|
11
11
|
[](https://github.com/neverinfamous/memory-journal-mcp/blob/main/SECURITY.md)
|
|
@@ -36,6 +36,24 @@ Last Updated December 28, 2025 - v3.0.0
|
|
|
36
36
|
- 📊 **Generate reports** (standups, retrospectives, PR summaries, status)
|
|
37
37
|
- 🗄️ **Backup & restore** your journal data with one command
|
|
38
38
|
|
|
39
|
+
```mermaid
|
|
40
|
+
flowchart LR
|
|
41
|
+
subgraph Problem["❌ Without Memory Journal"]
|
|
42
|
+
direction TB
|
|
43
|
+
A1["Session 1<br/>Context Lost"] --> A2["Session 2<br/>Start Over"]
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
subgraph Solution["✅ With Memory Journal"]
|
|
47
|
+
direction TB
|
|
48
|
+
B1["Session 1"] --> MJ[("📚 Memory<br/>Journal")]
|
|
49
|
+
B2["Session 2"] --> MJ
|
|
50
|
+
MJ --> |"Recall"| B1
|
|
51
|
+
MJ --> |"Search"| B2
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
Problem -.->|"Solve with"| Solution
|
|
55
|
+
```
|
|
56
|
+
|
|
39
57
|
---
|
|
40
58
|
|
|
41
59
|
## ✨ v3.0.0 Highlights (December 28, 2025)
|
|
@@ -54,8 +72,9 @@ Last Updated December 28, 2025 - v3.0.0
|
|
|
54
72
|
### **📊 New: Server Health Resource**
|
|
55
73
|
- `memory://health` - Database stats, backup info, vector index status, tool filter config
|
|
56
74
|
|
|
57
|
-
### **
|
|
75
|
+
### **29 MCP Tools • 14 Workflow Prompts • 16 Resources**
|
|
58
76
|
- **8 tool groups** - `core`, `search`, `analytics`, `relationships`, `export`, `admin`, `github`, `backup`
|
|
77
|
+
- **GitHub Kanban** - View and manage GitHub Project boards directly
|
|
59
78
|
- **Knowledge graphs** - 5 relationship types, Mermaid diagram visualization
|
|
60
79
|
- **Semantic search** - AI-powered conceptual search via `@xenova/transformers`
|
|
61
80
|
|
|
@@ -184,7 +203,7 @@ docker pull writenotenow/memory-journal-mcp@sha256:<manifest-digest>
|
|
|
184
203
|
|
|
185
204
|
## ⚡ Core Features
|
|
186
205
|
|
|
187
|
-
### 🛠️
|
|
206
|
+
### 🛠️ 29 MCP Tools (8 Groups)
|
|
188
207
|
| Group | Tools | Description |
|
|
189
208
|
|-------|-------|-------------|
|
|
190
209
|
| `core` | 6 | Entry CRUD, tags, test |
|
|
@@ -193,8 +212,8 @@ docker pull writenotenow/memory-journal-mcp@sha256:<manifest-digest>
|
|
|
193
212
|
| `relationships` | 2 | Link entries, visualize graphs |
|
|
194
213
|
| `export` | 1 | JSON/Markdown export |
|
|
195
214
|
| `admin` | 4 | Update, delete, vector index management |
|
|
196
|
-
| `github` |
|
|
197
|
-
| `backup` | 3 |
|
|
215
|
+
| `github` | 7 | Issues, PRs, context, **Kanban board** |
|
|
216
|
+
| `backup` | 3 | Backup, list, restore |
|
|
198
217
|
|
|
199
218
|
**[Complete tools documentation →](https://github.com/neverinfamous/memory-journal-mcp/wiki/Tools)**
|
|
200
219
|
|
|
@@ -202,8 +221,8 @@ docker pull writenotenow/memory-journal-mcp@sha256:<manifest-digest>
|
|
|
202
221
|
Standups • Retrospectives • Weekly digests • PR summaries • Code review prep • Goal tracking
|
|
203
222
|
**[Complete prompts guide →](https://github.com/neverinfamous/memory-journal-mcp/wiki/Prompts)**
|
|
204
223
|
|
|
205
|
-
### 📡
|
|
206
|
-
Including
|
|
224
|
+
### 📡 16 Resources
|
|
225
|
+
Including `memory://health` for diagnostics and `memory://kanban/{n}` for Kanban boards
|
|
207
226
|
**[Resources documentation →](https://github.com/neverinfamous/memory-journal-mcp/wiki/Resources)**
|
|
208
227
|
|
|
209
228
|
---
|
|
@@ -226,9 +245,16 @@ backup_journal({ name: "pre_refactor" })
|
|
|
226
245
|
// Search entries
|
|
227
246
|
search_entries({ query: "performance" })
|
|
228
247
|
|
|
248
|
+
// View Kanban board
|
|
249
|
+
get_kanban_board({ project_number: 5 })
|
|
250
|
+
|
|
251
|
+
// Move item on Kanban
|
|
252
|
+
move_kanban_item({ project_number: 5, item_id: "PVTI_...", target_status: "Done" })
|
|
253
|
+
|
|
229
254
|
// Access MCP resources
|
|
230
255
|
memory://recent // Recent entries
|
|
231
256
|
memory://health // Server diagnostics
|
|
257
|
+
memory://kanban/5 // Kanban board view
|
|
232
258
|
memory://projects/1/timeline // Project timeline
|
|
233
259
|
```
|
|
234
260
|
|
|
@@ -300,7 +326,7 @@ docker run -i --rm \
|
|
|
300
326
|
| **ARM64** (Apple Silicon) | Complete: all tools, semantic search, Git context |
|
|
301
327
|
|
|
302
328
|
**TypeScript v3.0 Image Benefits:**
|
|
303
|
-
- **Node.js
|
|
329
|
+
- **Node.js 24 on Alpine Linux** - Minimal footprint (~150MB compressed)
|
|
304
330
|
- **Pure JS Stack** - No native compilation, identical features on all platforms
|
|
305
331
|
- **sql.js** - SQLite in pure JavaScript
|
|
306
332
|
- **vectra** - Vector similarity search without native dependencies
|
|
@@ -316,7 +342,7 @@ docker run -i --rm \
|
|
|
316
342
|
- 📋 **SBOM Available** - Complete software bill of materials
|
|
317
343
|
|
|
318
344
|
**Available Tags:**
|
|
319
|
-
- `3.
|
|
345
|
+
- `3.1.2` - Specific version (recommended for production)
|
|
320
346
|
- `3.0` - Latest patch in 3.0.x series
|
|
321
347
|
- `3` - Latest minor in 3.x series
|
|
322
348
|
- `latest` - Always the newest version
|
package/Dockerfile
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
# Memory Journal MCP Server - TypeScript Version
|
|
2
2
|
# Multi-stage build for optimized production image
|
|
3
|
-
FROM node:
|
|
3
|
+
FROM node:24-alpine AS builder
|
|
4
4
|
|
|
5
5
|
WORKDIR /app
|
|
6
6
|
|
|
7
|
-
# Install build dependencies
|
|
8
|
-
RUN apk add --no-cache python3 make g++
|
|
7
|
+
# Install build dependencies and upgrade packages for security
|
|
8
|
+
RUN apk add --no-cache python3 make g++ && apk upgrade --no-cache
|
|
9
9
|
|
|
10
10
|
# Copy package files first for better layer caching
|
|
11
11
|
COPY package*.json ./
|
|
@@ -21,7 +21,7 @@ COPY src/ ./src/
|
|
|
21
21
|
RUN npm run build
|
|
22
22
|
|
|
23
23
|
# Production stage
|
|
24
|
-
FROM node:
|
|
24
|
+
FROM node:24-alpine
|
|
25
25
|
|
|
26
26
|
WORKDIR /app
|
|
27
27
|
|
|
@@ -59,6 +59,6 @@ CMD ["node", "dist/cli.js"]
|
|
|
59
59
|
# Labels for Docker Hub
|
|
60
60
|
LABEL maintainer="Adamic.tech"
|
|
61
61
|
LABEL description="Memory Journal MCP Server - Project context management for AI-assisted development"
|
|
62
|
-
LABEL version="3.
|
|
62
|
+
LABEL version="3.1.2"
|
|
63
63
|
LABEL org.opencontainers.image.source="https://github.com/neverinfamous/memory-journal-mcp"
|
|
64
64
|
LABEL io.modelcontextprotocol.server.name="io.github.neverinfamous/memory-journal-mcp"
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Memory Journal MCP Server
|
|
2
2
|
|
|
3
|
-
Last Updated
|
|
3
|
+
Last Updated January 11, 2026 - v3.1.2
|
|
4
4
|
|
|
5
5
|
<!-- mcp-name: io.github.neverinfamous/memory-journal-mcp -->
|
|
6
6
|
|
|
@@ -8,7 +8,7 @@ Last Updated December 28, 2025 - v3.0.0
|
|
|
8
8
|
[](https://www.npmjs.com/package/memory-journal-mcp)
|
|
9
9
|
[](https://hub.docker.com/r/writenotenow/memory-journal-mcp)
|
|
10
10
|
[](https://opensource.org/licenses/MIT)
|
|
11
|
-

|
|
12
12
|

|
|
13
13
|
[](https://registry.modelcontextprotocol.io/v0/servers?search=io.github.neverinfamous/memory-journal-mcp)
|
|
14
14
|
[](SECURITY.md)
|
|
@@ -24,6 +24,30 @@ Last Updated December 28, 2025 - v3.0.0
|
|
|
24
24
|
- **[npm Package](https://www.npmjs.com/package/memory-journal-mcp)** - `npm install -g memory-journal-mcp`
|
|
25
25
|
- **[Docker Hub](https://hub.docker.com/r/writenotenow/memory-journal-mcp)** - Alpine-based with full semantic search
|
|
26
26
|
|
|
27
|
+
### 💡 How It Works
|
|
28
|
+
|
|
29
|
+
```mermaid
|
|
30
|
+
flowchart LR
|
|
31
|
+
subgraph Problem["❌ Without Memory Journal"]
|
|
32
|
+
direction TB
|
|
33
|
+
A1["Session 1<br/>Context Lost"] --> A2["Session 2<br/>Start Over"] --> A3["Session 3<br/>Repeat Work"]
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
subgraph Solution["✅ With Memory Journal"]
|
|
37
|
+
direction TB
|
|
38
|
+
B1["Session 1"] --> MJ[("📚 Memory<br/>Journal")]
|
|
39
|
+
B2["Session 2"] --> MJ
|
|
40
|
+
B3["Session 3"] --> MJ
|
|
41
|
+
MJ --> |"Recall"| B1
|
|
42
|
+
MJ --> |"Search"| B2
|
|
43
|
+
MJ --> |"Context"| B3
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
Problem -.->|"Solve with"| Solution
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
> **AI sessions become cumulative, not repetitive.** Every insight, decision, and breakthrough is captured and instantly retrievable.
|
|
50
|
+
|
|
27
51
|
---
|
|
28
52
|
|
|
29
53
|
## ✨ What's New in v3.0.0 (December 28, 2025)
|
|
@@ -97,10 +121,10 @@ Get comprehensive server diagnostics via `memory://health`:
|
|
|
97
121
|
|
|
98
122
|
### 📈 **Current Capabilities**
|
|
99
123
|
|
|
100
|
-
- **
|
|
124
|
+
- **29 MCP tools** - Complete development workflow + backup/restore + Kanban
|
|
101
125
|
- **14 workflow prompts** - Standups, retrospectives, PR workflows, CI/CD failure analysis
|
|
102
|
-
- **
|
|
103
|
-
- **GitHub Integration** - Projects, Issues, Pull Requests, Actions
|
|
126
|
+
- **16 MCP resources** - Including Kanban board views and Mermaid diagrams
|
|
127
|
+
- **GitHub Integration** - Projects, Issues, Pull Requests, Actions, **Kanban boards**
|
|
104
128
|
- **8 tool groups** - `core`, `search`, `analytics`, `relationships`, `export`, `admin`, `github`, `backup`
|
|
105
129
|
- **Knowledge graphs** - 5 relationship types, Mermaid visualization
|
|
106
130
|
- **Semantic search** - AI-powered conceptual search via `@xenova/transformers`
|
|
@@ -230,7 +254,7 @@ The GitHub tools (`get_github_issues`, `get_github_prs`, etc.) can auto-detect t
|
|
|
230
254
|
|
|
231
255
|
## 📋 Core Capabilities
|
|
232
256
|
|
|
233
|
-
### 🛠️ **
|
|
257
|
+
### 🛠️ **29 MCP Tools** (8 Groups)
|
|
234
258
|
|
|
235
259
|
| Group | Tools | Description |
|
|
236
260
|
|-------|-------|-------------|
|
|
@@ -240,8 +264,8 @@ The GitHub tools (`get_github_issues`, `get_github_prs`, etc.) can auto-detect t
|
|
|
240
264
|
| `relationships` | 2 | Link entries, visualize graphs |
|
|
241
265
|
| `export` | 1 | JSON/Markdown export |
|
|
242
266
|
| `admin` | 4 | Update, delete, rebuild/add to vector index |
|
|
243
|
-
| `github` |
|
|
244
|
-
| `backup` | 3 |
|
|
267
|
+
| `github` | 7 | Issues, PRs, context, **Kanban board** |
|
|
268
|
+
| `backup` | 3 | Backup, list, restore |
|
|
245
269
|
|
|
246
270
|
**[Complete tools reference →](https://github.com/neverinfamous/memory-journal-mcp/wiki/Tools)**
|
|
247
271
|
|
|
@@ -253,7 +277,7 @@ The GitHub tools (`get_github_issues`, `get_github_prs`, etc.) can auto-detect t
|
|
|
253
277
|
- `weekly-digest` - Day-by-day weekly summaries
|
|
254
278
|
- `analyze-period` - Deep period analysis with insights
|
|
255
279
|
- `goal-tracker` - Milestone and achievement tracking
|
|
256
|
-
- `get-context-bundle` - Project context with Git/GitHub
|
|
280
|
+
- `get-context-bundle` - Project context with Git/GitHub/Kanban
|
|
257
281
|
- `pr-summary` - Pull request journal activity summary
|
|
258
282
|
- `code-review-prep` - Comprehensive PR review preparation
|
|
259
283
|
- `pr-retrospective` - Completed PR analysis with learnings
|
|
@@ -261,13 +285,13 @@ The GitHub tools (`get_github_issues`, `get_github_prs`, etc.) can auto-detect t
|
|
|
261
285
|
|
|
262
286
|
**[Complete prompts guide →](https://github.com/neverinfamous/memory-journal-mcp/wiki/Prompts)**
|
|
263
287
|
|
|
264
|
-
### 📡 **
|
|
288
|
+
### 📡 **16 Resources**
|
|
265
289
|
|
|
266
290
|
- `memory://recent` - 10 most recent entries
|
|
267
291
|
- `memory://significant` - Significant milestones and breakthroughs
|
|
268
292
|
- `memory://graph/recent` - Live Mermaid diagram of recent relationships
|
|
269
293
|
- `memory://team/recent` - Recent team-shared entries
|
|
270
|
-
- `memory://health` -
|
|
294
|
+
- `memory://health` - Server health & diagnostics
|
|
271
295
|
- `memory://projects/{number}/timeline` - Project activity timeline
|
|
272
296
|
- `memory://issues/{issue_number}/entries` - Entries linked to issue
|
|
273
297
|
- `memory://prs/{pr_number}/entries` - Entries linked to PR
|
|
@@ -276,6 +300,8 @@ The GitHub tools (`get_github_issues`, `get_github_prs`, etc.) can auto-detect t
|
|
|
276
300
|
- `memory://actions/recent` - Recent workflow runs
|
|
277
301
|
- `memory://tags` - All tags with usage counts
|
|
278
302
|
- `memory://statistics` - Journal statistics
|
|
303
|
+
- `memory://kanban/{project_number}` - **NEW** GitHub Project Kanban board
|
|
304
|
+
- `memory://kanban/{project_number}/diagram` - **NEW** Kanban Mermaid visualization
|
|
279
305
|
|
|
280
306
|
---
|
|
281
307
|
|
|
@@ -366,6 +392,22 @@ restore_backup({ filename: "pre_refactor.db", confirm: true })
|
|
|
366
392
|
// Returns: database stats, backup info, vector index status, tool filter config
|
|
367
393
|
```
|
|
368
394
|
|
|
395
|
+
### View and Manage Kanban Board
|
|
396
|
+
|
|
397
|
+
```javascript
|
|
398
|
+
// View Kanban board with items grouped by Status
|
|
399
|
+
get_kanban_board({ project_number: 5 })
|
|
400
|
+
// → { columns: [{ status: "Todo", items: [...] }, { status: "In Progress", items: [...] }], ... }
|
|
401
|
+
|
|
402
|
+
// Move an item to a different column
|
|
403
|
+
move_kanban_item({
|
|
404
|
+
project_number: 5,
|
|
405
|
+
item_id: "PVTI_...",
|
|
406
|
+
target_status: "Done"
|
|
407
|
+
})
|
|
408
|
+
// → { success: true, message: 'Item moved to "Done"' }
|
|
409
|
+
```
|
|
410
|
+
|
|
369
411
|
### Search and Analyze
|
|
370
412
|
|
|
371
413
|
```javascript
|
|
@@ -393,11 +435,43 @@ visualize_relationships({
|
|
|
393
435
|
|
|
394
436
|
## 🏗️ Architecture
|
|
395
437
|
|
|
438
|
+
### Data Flow
|
|
439
|
+
|
|
440
|
+
```mermaid
|
|
441
|
+
flowchart TB
|
|
442
|
+
AI["🤖 AI Agent<br/>(Cursor, Windsurf, Claude)"]
|
|
443
|
+
|
|
444
|
+
subgraph MCP["Memory Journal MCP Server"]
|
|
445
|
+
Tools["🛠️ 29 Tools"]
|
|
446
|
+
Resources["📡 16 Resources"]
|
|
447
|
+
Prompts["💬 14 Prompts"]
|
|
448
|
+
end
|
|
449
|
+
|
|
450
|
+
subgraph Storage["Persistence Layer"]
|
|
451
|
+
SQLite[("💾 SQLite<br/>Entries, Tags, Relationships")]
|
|
452
|
+
Vector[("🔍 Vector Index<br/>Semantic Embeddings")]
|
|
453
|
+
Backups["📦 Backups"]
|
|
454
|
+
end
|
|
455
|
+
|
|
456
|
+
subgraph External["External Integrations"]
|
|
457
|
+
GitHub["🐙 GitHub API<br/>Issues, PRs, Actions"]
|
|
458
|
+
Kanban["📋 Projects v2<br/>Kanban Boards"]
|
|
459
|
+
end
|
|
460
|
+
|
|
461
|
+
AI <-->|"MCP Protocol"| MCP
|
|
462
|
+
Tools --> Storage
|
|
463
|
+
Tools --> External
|
|
464
|
+
Resources --> Storage
|
|
465
|
+
Resources --> External
|
|
466
|
+
```
|
|
467
|
+
|
|
468
|
+
### Stack
|
|
469
|
+
|
|
396
470
|
```
|
|
397
471
|
┌─────────────────────────────────────────────────────────────┐
|
|
398
472
|
│ MCP Server Layer (TypeScript) │
|
|
399
473
|
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────┐ │
|
|
400
|
-
│ │ Tools (
|
|
474
|
+
│ │ Tools (29) │ │ Resources (16) │ │ Prompts (14)│ │
|
|
401
475
|
│ │ with Annotations│ │ with Annotations│ │ │ │
|
|
402
476
|
│ └─────────────────┘ └─────────────────┘ └─────────────┘ │
|
|
403
477
|
├─────────────────────────────────────────────────────────────┤
|
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
3.
|
|
1
|
+
3.1.2
|
package/dist/cli.js
CHANGED
|
@@ -8,7 +8,7 @@ const program = new Command();
|
|
|
8
8
|
program
|
|
9
9
|
.name('memory-journal-mcp')
|
|
10
10
|
.description('Project context management for AI-assisted development')
|
|
11
|
-
.version('3.
|
|
11
|
+
.version('3.1.2')
|
|
12
12
|
.option('--transport <type>', 'Transport type: stdio or http', 'stdio')
|
|
13
13
|
.option('--port <number>', 'HTTP port (for http transport)', '3000')
|
|
14
14
|
.option('--db <path>', 'Database path', './memory_journal.db')
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACF,IAAI,CAAC,oBAAoB,CAAC;KAC1B,WAAW,CAAC,wDAAwD,CAAC;KACrE,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACF,IAAI,CAAC,oBAAoB,CAAC;KAC1B,WAAW,CAAC,wDAAwD,CAAC;KACrE,OAAO,CAAC,OAAO,CAAC;KAChB,MAAM,CAAC,oBAAoB,EAAE,+BAA+B,EAAE,OAAO,CAAC;KACtE,MAAM,CAAC,iBAAiB,EAAE,gCAAgC,EAAE,MAAM,CAAC;KACnE,MAAM,CAAC,aAAa,EAAE,eAAe,EAAE,qBAAqB,CAAC;KAC7D,MAAM,CAAC,wBAAwB,EAAE,qDAAqD,CAAC;KACvF,MAAM,CAAC,qBAAqB,EAAE,wCAAwC,EAAE,MAAM,CAAC;KAC/E,MAAM,CAAC,KAAK,EAAE,OAMd,EAAE,EAAE;IACD,gBAAgB;IAChB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAkD,CAAC,CAAC;IAE5E,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE;QAC9C,MAAM,EAAE,KAAK;QACb,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,EAAE,EAAE,OAAO,CAAC,EAAE;KACjB,CAAC,CAAC;IAEH,IAAI,CAAC;QACD,MAAM,YAAY,CAAC;YACf,SAAS,EAAE,OAAO,CAAC,SAA6B;YAChD,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YAChC,MAAM,EAAE,OAAO,CAAC,EAAE;YAClB,UAAU,EAAE,OAAO,CAAC,UAAU;SACjC,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE;YACnC,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAChE,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC,CAAC,CAAC;AAEP,OAAO,CAAC,KAAK,EAAE,CAAC"}
|
|
@@ -4,5 +4,28 @@
|
|
|
4
4
|
* These instructions are automatically sent to MCP clients during initialization,
|
|
5
5
|
* providing guidance for AI agents on tool usage.
|
|
6
6
|
*/
|
|
7
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Resource definition for instruction generation
|
|
9
|
+
*/
|
|
10
|
+
export interface ResourceDefinition {
|
|
11
|
+
uri: string;
|
|
12
|
+
name: string;
|
|
13
|
+
description?: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Prompt definition for instruction generation
|
|
17
|
+
*/
|
|
18
|
+
export interface PromptDefinition {
|
|
19
|
+
name: string;
|
|
20
|
+
description?: string;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Generate dynamic instructions based on enabled tools, resources, and prompts
|
|
24
|
+
*/
|
|
25
|
+
export declare function generateInstructions(enabledTools: Set<string>, resources: ResourceDefinition[], prompts: PromptDefinition[]): string;
|
|
26
|
+
/**
|
|
27
|
+
* Static instructions for backward compatibility
|
|
28
|
+
* @deprecated Use generateInstructions() instead for dynamic content
|
|
29
|
+
*/
|
|
30
|
+
export declare const SERVER_INSTRUCTIONS = "# memory-journal-mcp Usage Instructions\n\n## How to Access This Server\n\n### Calling Tools\nUse `CallMcpTool` with server name `user-memory-journal-mcp`:\n```\nCallMcpTool(server: \"user-memory-journal-mcp\", toolName: \"create_entry\", arguments: {...})\n```\n\n### Listing Resources\nUse `ListMcpResources` with server name:\n```\nListMcpResources(server: \"user-memory-journal-mcp\")\n```\nDo NOT try to browse filesystem paths for MCP tool/resource definitions - use the MCP protocol directly.\n\n### Fetching Resources\nUse `FetchMcpResource` with server name and `memory://` URI:\n```\nFetchMcpResource(server: \"user-memory-journal-mcp\", uri: \"memory://recent\")\nFetchMcpResource(server: \"user-memory-journal-mcp\", uri: \"memory://kanban/1\")\n```\n\n## Quick Health Check\nFetch `memory://health` to verify server status, database stats, and tool availability.\n\n## Tool Parameter Reference\n\n### Entry Operations\n| Tool | Required Parameters | Optional Parameters |\n|------|---------------------|---------------------|\n| `create_entry` | `content` (string) | `entry_type`, `tags` (array), `is_personal` (bool) |\n| `create_entry_minimal` | `content` (string) | none |\n| `get_entry_by_id` | `entry_id` (number) | none |\n| `get_recent_entries` | none | `limit` (default 10), `is_personal` (bool) |\n| `update_entry` | `entry_id` (number) | `content`, `tags`, `entry_type`, `is_personal` |\n| `delete_entry` | `entry_id` (number) | `permanent` (bool, default false) |\n| `list_tags` | none | none |\n\n### Search Tools\n| Tool | Required Parameters | Optional Parameters |\n|------|---------------------|---------------------|\n| `search_entries` | `query` (string) | `limit`, `entry_type`, `tags` |\n| `search_by_date_range` | `start_date`, `end_date` (YYYY-MM-DD) | `tags`, `entry_type` |\n| `semantic_search` | `query` (string) | `limit` (default 10) |\n| `get_vector_index_stats` | none | none |\n\n### Relationship Tools\n| Tool | Required Parameters | Notes |\n|------|---------------------|-------|\n| `link_entries` | `from_entry_id`, `to_entry_id` (numbers), `relationship_type` | Types: `evolves_from`, `references`, `implements`, `clarifies`, `response_to` |\n| `visualize_relationships` | `entry_id` (number) | Optional `depth` (default 2). Returns Mermaid diagram. |\n\n### GitHub Tools\n| Tool | Required Parameters | Notes |\n|------|---------------------|-------|\n| `get_github_context` | none | Returns repo info, open issues/PRs |\n| `get_github_issues` | none | Optional `state` (open/closed/all), `limit` |\n| `get_github_prs` | none | Optional `state`, `limit` |\n| `get_github_issue` | `issue_number` (number) | Fetches single issue details |\n| `get_github_pr` | `pr_number` (number) | Fetches single PR details |\n\nGitHub tools auto-detect owner/repo from GITHUB_REPO_PATH. If `detectedOwner`/`detectedRepo` are null in response, specify `owner` and `repo` parameters explicitly.\n\n### Kanban Tools (GitHub Projects v2)\n| Tool | Required Parameters | Notes |\n|------|---------------------|-------|\n| `get_kanban_board` | `project_number` (number) | Returns columns with items grouped by Status |\n| `move_kanban_item` | `project_number`, `item_id` (string), `target_status` (string) | `item_id` is the GraphQL node ID from board items |\n\n**Finding the right project**: User may have multiple projects. Use `get_kanban_board` with different project numbers (1, 2, 3...) to find the correct one by checking `projectTitle`.\n\n**Default Status columns** (typical GitHub Projects v2):\n- `Backlog` - Items not yet started\n- `Ready` - Ready to be picked up\n- `In progress` - Actively being worked on\n- `In review` - In review\n- `Done` - Completed\n\nNote: Status columns are dynamic per project. The `statusOptions` in the response shows available statuses for that specific project.\n\nKanban resources:\n- `memory://kanban/{project_number}` - JSON board data\n- `memory://kanban/{project_number}/diagram` - Mermaid visualization\n\n### Admin Tools\n| Tool | Required Parameters | Notes |\n|------|---------------------|-------|\n| `backup_journal` | none | Optional `backup_name` |\n| `list_backups` | none | Returns available backup files |\n| `restore_backup` | `backup_filename`, `confirm: true` | Creates auto-backup before restore |\n| `add_to_vector_index` | `entry_id` (single number) | Indexes one entry for semantic search |\n| `rebuild_vector_index` | none | Re-indexes all entries |\n\n### Export Tools\n| Tool | Required Parameters | Notes |\n|------|---------------------|-------|\n| `export_entries` | none | Optional `format` (json/markdown), `limit`, `tags` |\n\n## Entry Types\nValid values for `entry_type` parameter:\n- `personal_reflection` (default) - Personal thoughts and notes\n- `technical_note` - Technical documentation\n- `bug_fix` - Bug fixes and resolutions\n- `progress_update` - Project progress updates\n- `code_review` - Code review notes\n- `deployment` - Deployment records\n- `technical_achievement` - Milestones and breakthroughs\n\n## Key Resources\n| URI | Description |\n|-----|-------------|\n| `memory://health` | Server health, DB stats, tool filter status |\n| `memory://statistics` | Entry counts by type and period |\n| `memory://recent` | 10 most recent entries |\n| `memory://tags` | All tags with usage counts |\n| `memory://significant` | Entries marked as milestones/breakthroughs |\n| `memory://graph/recent` | Mermaid diagram of recent relationships |\n| `memory://kanban/{n}` | Kanban board for project number n |\n";
|
|
8
31
|
//# sourceMappingURL=ServerInstructions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerInstructions.d.ts","sourceRoot":"","sources":["../../src/constants/ServerInstructions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,
|
|
1
|
+
{"version":3,"file":"ServerInstructions.d.ts","sourceRoot":"","sources":["../../src/constants/ServerInstructions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AA+HD;;GAEG;AACH,wBAAgB,oBAAoB,CAChC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,SAAS,EAAE,kBAAkB,EAAE,EAC/B,OAAO,EAAE,gBAAgB,EAAE,GAC5B,MAAM,CAqCR;AAkBD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,w5KAAoB,CAAC"}
|