@datacore-one/mcp 1.0.0
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/LICENSE +21 -0
- package/README.md +150 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2009 -0
- package/dist/index.js.map +1 -0
- package/package.json +50 -0
- package/packs/datacore-starter-v1/SKILL.md +18 -0
- package/packs/datacore-starter-v1/engrams.yaml +60 -0
- package/packs/dips-v1/SKILL.md +20 -0
- package/packs/dips-v1/engrams.yaml +25146 -0
- package/packs/fds-principles-v1/SKILL.md +19 -0
- package/packs/fds-principles-v1/engrams.yaml +120 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Datacore
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
# @datacore-one/mcp
|
|
2
|
+
|
|
3
|
+
Persistent memory for AI assistants.
|
|
4
|
+
|
|
5
|
+
## Why
|
|
6
|
+
|
|
7
|
+
AI assistants are stateless. Every conversation starts from zero. Your AI forgets your preferences, your domain knowledge, your past decisions.
|
|
8
|
+
|
|
9
|
+
Datacore changes that. It gives AI assistants persistent memory through **engrams** -- typed knowledge units that get injected into context when relevant. Your AI remembers your coding patterns, learns your domain, and builds on previous work.
|
|
10
|
+
|
|
11
|
+
Not a RAG system. Not a vector database you have to manage. Just an MCP server that makes your AI smarter over time.
|
|
12
|
+
|
|
13
|
+
## Quick Start
|
|
14
|
+
|
|
15
|
+
Add to your Claude Desktop config:
|
|
16
|
+
|
|
17
|
+
```json
|
|
18
|
+
{
|
|
19
|
+
"mcpServers": {
|
|
20
|
+
"datacore": {
|
|
21
|
+
"command": "npx",
|
|
22
|
+
"args": ["@datacore-one/mcp"]
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Or for Claude Code, add to `.mcp.json`:
|
|
29
|
+
|
|
30
|
+
```json
|
|
31
|
+
{
|
|
32
|
+
"mcpServers": {
|
|
33
|
+
"datacore": {
|
|
34
|
+
"command": "npx",
|
|
35
|
+
"args": ["@datacore-one/mcp"]
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
On first use, the server creates `~/Datacore/` with your engrams, journal, and knowledge files. Everything is plain text -- no databases, no lock-in.
|
|
42
|
+
|
|
43
|
+
## Two Modes
|
|
44
|
+
|
|
45
|
+
| Mode | Storage | What You Get |
|
|
46
|
+
|------|---------|--------------|
|
|
47
|
+
| **Core** (`~/Datacore`) | Flat files | Engrams, journal, knowledge, packs |
|
|
48
|
+
| **Full** (`~/Data`) | Datacore system | + modules, GTD, spaces, Datacortex |
|
|
49
|
+
|
|
50
|
+
Mode is auto-detected. If you have a full [Datacore](https://github.com/datacore-one/datacore) installation at `~/Data`, it uses that. Otherwise it creates a lightweight `~/Datacore` directory.
|
|
51
|
+
|
|
52
|
+
Override with environment variables: `DATACORE_PATH` (full) or `DATACORE_CORE_PATH` (core).
|
|
53
|
+
|
|
54
|
+
## Tools
|
|
55
|
+
|
|
56
|
+
### Core
|
|
57
|
+
|
|
58
|
+
| Tool | Description |
|
|
59
|
+
|------|-------------|
|
|
60
|
+
| `datacore.capture` | Write a journal entry or knowledge note |
|
|
61
|
+
| `datacore.learn` | Create an engram from a statement |
|
|
62
|
+
| `datacore.inject` | Get relevant engrams for a task |
|
|
63
|
+
| `datacore.search` | Search journal and knowledge by keyword |
|
|
64
|
+
| `datacore.ingest` | Ingest text as a knowledge note with engram extraction |
|
|
65
|
+
| `datacore.status` | System status, counts, update info |
|
|
66
|
+
|
|
67
|
+
### Lifecycle
|
|
68
|
+
|
|
69
|
+
| Tool | Description |
|
|
70
|
+
|------|-------------|
|
|
71
|
+
| `datacore.feedback` | Signal whether an injected engram was helpful |
|
|
72
|
+
| `datacore.forget` | Retire an engram by ID or search |
|
|
73
|
+
|
|
74
|
+
### Packs
|
|
75
|
+
|
|
76
|
+
| Tool | Description |
|
|
77
|
+
|------|-------------|
|
|
78
|
+
| `datacore.packs.discover` | Browse available engram packs |
|
|
79
|
+
| `datacore.packs.install` | Install a pack |
|
|
80
|
+
| `datacore.packs.export` | Export your engrams as a shareable pack |
|
|
81
|
+
|
|
82
|
+
### Modules (full mode only)
|
|
83
|
+
|
|
84
|
+
| Tool | Description |
|
|
85
|
+
|------|-------------|
|
|
86
|
+
| `datacore.modules.list` | List installed modules |
|
|
87
|
+
| `datacore.modules.info` | Detailed info about a module |
|
|
88
|
+
| `datacore.modules.health` | Health check for modules |
|
|
89
|
+
|
|
90
|
+
## How Engrams Work
|
|
91
|
+
|
|
92
|
+
Engrams are typed knowledge units with activation dynamics:
|
|
93
|
+
|
|
94
|
+
```yaml
|
|
95
|
+
id: ENG-2026-0221-001
|
|
96
|
+
statement: "Always run tests before deploying"
|
|
97
|
+
type: behavioral
|
|
98
|
+
scope: global
|
|
99
|
+
activation:
|
|
100
|
+
retrieval_strength: 0.8
|
|
101
|
+
storage_strength: 1.0
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
When your AI starts a task, `datacore.inject` returns the most relevant engrams based on tags, scope, and activation strength. Engrams that prove useful get reinforced through `datacore.feedback`; unused ones naturally decay.
|
|
105
|
+
|
|
106
|
+
This creates a learning loop: your AI gets better at its job over time without you managing anything.
|
|
107
|
+
|
|
108
|
+
## Pack System
|
|
109
|
+
|
|
110
|
+
Engram packs are curated knowledge bundles you can install and share.
|
|
111
|
+
|
|
112
|
+
```
|
|
113
|
+
datacore.packs.discover -- browse available packs
|
|
114
|
+
datacore.packs.install -- install a pack
|
|
115
|
+
datacore.packs.export -- export your engrams as a pack
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
Bundled starter packs are installed automatically on first run.
|
|
119
|
+
|
|
120
|
+
## Configuration
|
|
121
|
+
|
|
122
|
+
| Variable | Default | Description |
|
|
123
|
+
|----------|---------|-------------|
|
|
124
|
+
| `DATACORE_PATH` | `~/Data` | Full installation path |
|
|
125
|
+
| `DATACORE_CORE_PATH` | `~/Datacore` | Core mode storage path |
|
|
126
|
+
| `DATACORE_TIMEZONE` | System | IANA timezone (e.g., `Europe/Ljubljana`) |
|
|
127
|
+
| `DATACORE_LOG_LEVEL` | `warning` | `debug`, `info`, `warning`, `error` |
|
|
128
|
+
| `DATACORE_CACHE_TTL` | `60` | File cache TTL in seconds |
|
|
129
|
+
| `DATACORE_TRANSPORT` | `stdio` | `stdio` or `http` |
|
|
130
|
+
| `DATACORE_HTTP_PORT` | `3100` | HTTP transport port |
|
|
131
|
+
| `DATACORE_HTTP_HOST` | `127.0.0.1` | HTTP bind address |
|
|
132
|
+
|
|
133
|
+
## HTTP Transport
|
|
134
|
+
|
|
135
|
+
For remote or multi-client setups:
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
DATACORE_HTTP_PORT=8080 npx @datacore-one/mcp --http
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
Health check: `GET /health`
|
|
142
|
+
MCP endpoint: `POST /mcp`
|
|
143
|
+
|
|
144
|
+
## Module System (Full Mode)
|
|
145
|
+
|
|
146
|
+
Full Datacore installations extend the MCP server with module-provided tools. Modules are discovered from `.datacore/modules/` and space-scoped directories. Each module can register its own tools under the `datacore.[module].[tool]` namespace.
|
|
147
|
+
|
|
148
|
+
## License
|
|
149
|
+
|
|
150
|
+
MIT
|
package/dist/index.d.ts
ADDED