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.
Files changed (49) hide show
  1. package/.github/dependabot.yml +31 -46
  2. package/.github/workflows/codeql.yml +1 -1
  3. package/.github/workflows/docker-publish.yml +38 -7
  4. package/.github/workflows/lint-and-test.yml +2 -2
  5. package/.github/workflows/publish-npm.yml +1 -1
  6. package/.github/workflows/secrets-scanning.yml +1 -1
  7. package/.github/workflows/security-update.yml +1 -1
  8. package/DOCKER_README.md +36 -10
  9. package/Dockerfile +5 -5
  10. package/README.md +86 -12
  11. package/VERSION +1 -1
  12. package/dist/cli.js +1 -1
  13. package/dist/cli.js.map +1 -1
  14. package/dist/constants/ServerInstructions.d.ts +24 -1
  15. package/dist/constants/ServerInstructions.d.ts.map +1 -1
  16. package/dist/constants/ServerInstructions.js +173 -13
  17. package/dist/constants/ServerInstructions.js.map +1 -1
  18. package/dist/github/GitHubIntegration.d.ts +18 -3
  19. package/dist/github/GitHubIntegration.d.ts.map +1 -1
  20. package/dist/github/GitHubIntegration.js +301 -3
  21. package/dist/github/GitHubIntegration.js.map +1 -1
  22. package/dist/handlers/prompts/index.js +2 -2
  23. package/dist/handlers/prompts/index.js.map +1 -1
  24. package/dist/handlers/resources/index.js +122 -1
  25. package/dist/handlers/resources/index.js.map +1 -1
  26. package/dist/handlers/tools/index.js +116 -0
  27. package/dist/handlers/tools/index.js.map +1 -1
  28. package/dist/server/McpServer.d.ts.map +1 -1
  29. package/dist/server/McpServer.js +21 -6
  30. package/dist/server/McpServer.js.map +1 -1
  31. package/dist/types/index.d.ts +43 -0
  32. package/dist/types/index.d.ts.map +1 -1
  33. package/dist/types/index.js.map +1 -1
  34. package/dist/vector/VectorSearchManager.js +2 -2
  35. package/dist/vector/VectorSearchManager.js.map +1 -1
  36. package/package.json +9 -7
  37. package/releases/v3.1.0.md +101 -0
  38. package/releases/v3.1.1.md +40 -0
  39. package/releases/v3.1.2.md +38 -0
  40. package/server.json +3 -3
  41. package/src/cli.ts +1 -1
  42. package/src/constants/ServerInstructions.ts +207 -13
  43. package/src/github/GitHubIntegration.ts +383 -3
  44. package/src/handlers/prompts/index.ts +2 -2
  45. package/src/handlers/resources/index.ts +140 -1
  46. package/src/handlers/tools/index.ts +137 -0
  47. package/src/server/McpServer.ts +33 -9
  48. package/src/types/index.ts +51 -0
  49. package/src/vector/VectorSearchManager.ts +2 -2
@@ -1,10 +1,11 @@
1
1
  # Dependabot configuration for Memory Journal MCP Server
2
- # Manages 72+ dependencies including ML libraries and NVIDIA CUDA packages
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
- # Python dependencies (pip)
7
- - package-ecosystem: "pip"
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
- - "python"
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
- - "torch*"
25
- - "nvidia-*"
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
- mcp-core:
36
+ database:
40
37
  patterns:
41
- - "mcp*"
42
- - "pydantic*"
43
- - "httpx*"
44
- - "starlette*"
45
- - "uvicorn*"
38
+ - "sql.js*"
39
+ - "better-sqlite3*"
46
40
  update-types:
47
41
  - "minor"
48
42
  - "patch"
49
- utilities:
43
+ build-tools:
50
44
  patterns:
51
- - "tqdm*"
52
- - "click*"
53
- - "pyyaml*"
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 (if using Docker Compose)
82
+ # Docker dependencies
98
83
  - package-ecosystem: "docker"
99
84
  directory: "/"
100
85
  schedule:
@@ -27,7 +27,7 @@ jobs:
27
27
 
28
28
  steps:
29
29
  - name: Checkout repository
30
- uses: actions/checkout@v5
30
+ uses: actions/checkout@v6
31
31
 
32
32
  - name: Initialize CodeQL
33
33
  uses: github/codeql-action/init@v4
@@ -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
- # Only run if lint-and-test succeeded OR if this is a tag push
29
- if: ${{ github.event.workflow_run.conclusion == 'success' || github.event_name == 'push' }}
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@v5
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@v4
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@v5
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@v5
232
+ uses: actions/checkout@v6
202
233
 
203
234
  - name: Download digests
204
- uses: actions/download-artifact@v4
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@v5
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@v5
45
+ uses: actions/checkout@v6
46
46
 
47
47
  - name: Setup Node.js
48
48
  uses: actions/setup-node@v6
@@ -22,7 +22,7 @@ jobs:
22
22
 
23
23
  steps:
24
24
  - name: Checkout code
25
- uses: actions/checkout@v5
25
+ uses: actions/checkout@v6
26
26
 
27
27
  - name: Setup Node.js
28
28
  uses: actions/setup-node@v6
@@ -14,7 +14,7 @@ jobs:
14
14
  runs-on: ubuntu-latest
15
15
  steps:
16
16
  - name: Checkout code
17
- uses: actions/checkout@v5
17
+ uses: actions/checkout@v6
18
18
  with:
19
19
  fetch-depth: 0
20
20
 
@@ -18,7 +18,7 @@ jobs:
18
18
 
19
19
  steps:
20
20
  - name: Checkout repository
21
- uses: actions/checkout@v5
21
+ uses: actions/checkout@v6
22
22
 
23
23
  - name: Set up Docker Buildx
24
24
  uses: docker/setup-buildx-action@v3
package/DOCKER_README.md CHANGED
@@ -1,11 +1,11 @@
1
1
  # Memory Journal MCP Server
2
2
 
3
- Last Updated December 28, 2025 - v3.0.0
3
+ Last Updated January 11, 2026 - v3.1.2
4
4
 
5
5
  [![GitHub](https://img.shields.io/badge/GitHub-neverinfamous/memory--journal--mcp-blue?logo=github)](https://github.com/neverinfamous/memory-journal-mcp)
6
6
  [![Docker Pulls](https://img.shields.io/docker/pulls/writenotenow/memory-journal-mcp)](https://hub.docker.com/r/writenotenow/memory-journal-mcp)
7
7
  [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
8
- ![Version](https://img.shields.io/badge/version-v3.0.0-green)
8
+ ![Version](https://img.shields.io/badge/version-v3.1.2-green)
9
9
  ![Status](https://img.shields.io/badge/status-Production%2FStable-brightgreen)
10
10
  [![npm](https://img.shields.io/npm/v/memory-journal-mcp)](https://www.npmjs.com/package/memory-journal-mcp)
11
11
  [![Security](https://img.shields.io/badge/Security-Enhanced-green.svg)](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
- ### **27 MCP Tools • 14 Workflow Prompts • 14 Resources**
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
- ### 🛠️ 27 MCP Tools (8 Groups)
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` | 5 | Issues, PRs, context integration |
197
- | `backup` | 3 | **NEW** Backup, list, restore |
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
- ### 📡 14 Resources
206
- Including new `memory://health` for server diagnostics
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 22 on Alpine Linux** - Minimal footprint (~150MB compressed)
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.0.0` - Specific version (recommended for production)
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:22-alpine AS builder
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:22-alpine
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.0.0"
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 December 28, 2025 - v3.0.0
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
  [![npm](https://img.shields.io/npm/v/memory-journal-mcp)](https://www.npmjs.com/package/memory-journal-mcp)
9
9
  [![Docker Pulls](https://img.shields.io/docker/pulls/writenotenow/memory-journal-mcp)](https://hub.docker.com/r/writenotenow/memory-journal-mcp)
10
10
  [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
11
- ![Version](https://img.shields.io/badge/version-v3.0.0-green)
11
+ ![Version](https://img.shields.io/badge/version-v3.1.2-green)
12
12
  ![Status](https://img.shields.io/badge/status-Production%2FStable-brightgreen)
13
13
  [![MCP Registry](https://img.shields.io/badge/MCP_Registry-Published-green)](https://registry.modelcontextprotocol.io/v0/servers?search=io.github.neverinfamous/memory-journal-mcp)
14
14
  [![Security](https://img.shields.io/badge/Security-Enhanced-green.svg)](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
- - **27 MCP tools** - Complete development workflow + backup/restore
124
+ - **29 MCP tools** - Complete development workflow + backup/restore + Kanban
101
125
  - **14 workflow prompts** - Standups, retrospectives, PR workflows, CI/CD failure analysis
102
- - **14 MCP resources** - Including new `memory://health` diagnostics
103
- - **GitHub Integration** - Projects, Issues, Pull Requests, Actions with auto-linking
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
- ### 🛠️ **27 MCP Tools** (8 Groups)
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` | 5 | Issues, PRs, context integration |
244
- | `backup` | 3 | **NEW** Backup, list, restore |
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
- ### 📡 **14 Resources**
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` - **NEW** Server health & diagnostics
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 (27) │ │ Resources (14) │ │ Prompts (14)│ │
474
+ │ │ Tools (29) │ │ Resources (16) │ │ Prompts (14)│ │
401
475
  │ │ with Annotations│ │ with Annotations│ │ │ │
402
476
  │ └─────────────────┘ └─────────────────┘ └─────────────┘ │
403
477
  ├─────────────────────────────────────────────────────────────┤
package/VERSION CHANGED
@@ -1 +1 @@
1
- 3.0.0
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.0.0-alpha.1')
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,eAAe,CAAC;KACxB,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"}
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
- export declare const SERVER_INSTRUCTIONS = "# memory-journal-mcp\n\nMemory Journal MCP Server - Persistent project context management for AI-assisted development.\n\n## GitHub Tools\n\nGitHub tools auto-detect repository from the configured GITHUB_REPO_PATH.\n- If owner/repo are detected, they appear in `detectedOwner`/`detectedRepo` in responses\n- If not detected (null), specify `owner` and `repo` parameters explicitly\n\n## Tool Groups\n\n| Group | Tools |\n|-------|-------|\n| journal | create_entry, create_entry_minimal, update_entry, delete_entry |\n| search | search_entries, semantic_search, search_by_date_range |\n| github | get_github_issues, get_github_prs, get_github_issue, get_github_pr, get_github_context |\n| admin | backup_journal, list_backups, restore_backup, rebuild_vector_index |\n";
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,eAAO,MAAM,mBAAmB,owBAkB/B,CAAC"}
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"}