seekstone 0.2.1 → 0.4.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/README.md +95 -33
- package/dist/index.js +827 -68
- package/dist/index.js.map +1 -1
- package/package.json +12 -3
package/README.md
CHANGED
|
@@ -1,54 +1,75 @@
|
|
|
1
|
-
# seekstone
|
|
1
|
+
# seekstone / obsidian-mcp-seekstone
|
|
2
2
|
|
|
3
|
-
**
|
|
3
|
+
**The Obsidian MCP server for Claude — search and edit your vault without burning context.**
|
|
4
4
|
|
|
5
|
-
Seekstone
|
|
5
|
+
Seekstone is an Obsidian MCP server that gives Claude (and any [Model Context Protocol](https://modelcontextprotocol.io) client) direct read and write access to your Obsidian vault. No Obsidian app needs to be running, no plugins are required, and nothing leaves your machine.
|
|
6
6
|
|
|
7
|
-
It
|
|
7
|
+
It reads your vault **directly from disk** instead of routing through the Obsidian Local REST API plugin. The practical difference: a search that returns ~1.75 MB and ~459,000 tokens via the REST plugin returns **~3 KB and ~800 tokens** via Seekstone — a **~575× reduction**. Claude can search and read your entire note library without burning most of its context window on a single tool call.
|
|
8
|
+
|
|
9
|
+
**Two npm names, one server:**
|
|
10
|
+
|
|
11
|
+
| Package | Best for |
|
|
12
|
+
|---|---|
|
|
13
|
+
| [`obsidian-mcp-seekstone`](https://www.npmjs.com/package/obsidian-mcp-seekstone) | Searching npm for "obsidian mcp" |
|
|
14
|
+
| [`seekstone`](https://www.npmjs.com/package/seekstone) | Shorter name if you already know it |
|
|
15
|
+
|
|
16
|
+
---
|
|
8
17
|
|
|
9
18
|
## Install
|
|
10
19
|
|
|
11
|
-
|
|
12
|
-
|
|
20
|
+
Choose the method that suits you best.
|
|
21
|
+
|
|
22
|
+
### Option 1 — One-click (Claude Desktop, no terminal needed)
|
|
23
|
+
|
|
24
|
+
Download `seekstone.mcpb` from [GitHub Releases](https://github.com/shaqmughal/seekstone/releases/latest), double-click it in Claude Desktop, and pick your Obsidian vault folder when prompted. No JSON editing, no terminal, no Node.js setup required.
|
|
25
|
+
|
|
26
|
+
### Option 2 — Guided setup (recommended for CLI users)
|
|
27
|
+
|
|
28
|
+
Run the setup helper and let Seekstone find your vault automatically:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
npx -y obsidian-mcp-seekstone init
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Seekstone reads Obsidian's own vault registry to detect your vault, validates it, and either prints the config to paste or patches Claude Desktop directly:
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
# Auto-detect vault, print config to paste
|
|
38
|
+
npx -y obsidian-mcp-seekstone init
|
|
39
|
+
|
|
40
|
+
# Auto-detect vault, patch Claude Desktop in place (with backup)
|
|
41
|
+
npx -y obsidian-mcp-seekstone init --write
|
|
42
|
+
|
|
43
|
+
# Specify vault explicitly if you have multiple
|
|
44
|
+
npx -y obsidian-mcp-seekstone init --vault "/path/to/vault"
|
|
45
|
+
|
|
46
|
+
# Generate the Claude Code command instead
|
|
47
|
+
npx -y obsidian-mcp-seekstone init --client code
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### Option 3 — Manual config (Claude Desktop)
|
|
51
|
+
|
|
52
|
+
Add to `claude_desktop_config.json` (Settings → Developer → Edit Config):
|
|
53
|
+
|
|
54
|
+
```json
|
|
13
55
|
{
|
|
14
56
|
"mcpServers": {
|
|
15
57
|
"seekstone": {
|
|
16
58
|
"command": "npx",
|
|
17
|
-
"args": ["-y", "seekstone"],
|
|
59
|
+
"args": ["-y", "obsidian-mcp-seekstone"],
|
|
18
60
|
"env": { "SEEKSTONE_VAULT": "/absolute/path/to/your/vault" }
|
|
19
61
|
}
|
|
20
62
|
}
|
|
21
63
|
}
|
|
22
64
|
```
|
|
23
65
|
|
|
24
|
-
|
|
66
|
+
### Option 4 — Claude Code
|
|
25
67
|
|
|
26
68
|
```bash
|
|
27
|
-
claude mcp add seekstone --env SEEKSTONE_VAULT=/absolute/path/to/your/vault -- npx -y seekstone
|
|
69
|
+
claude mcp add seekstone --env SEEKSTONE_VAULT=/absolute/path/to/your/vault -- npx -y obsidian-mcp-seekstone
|
|
28
70
|
```
|
|
29
71
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
### Guided setup
|
|
33
|
-
|
|
34
|
-
`seekstone init` validates your vault and prints the config to paste, or patches the Claude Desktop config for you (with a backup, leaving other MCP servers untouched):
|
|
35
|
-
|
|
36
|
-
```bash
|
|
37
|
-
npx -y seekstone init --vault "/absolute/path/to/your/vault" # print config
|
|
38
|
-
npx -y seekstone init --vault "/absolute/path/to/your/vault" --write # patch Claude Desktop
|
|
39
|
-
npx -y seekstone init --vault "/absolute/path/to/your/vault" --client code # print Claude Code command
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
## Configuration
|
|
43
|
-
|
|
44
|
-
| Env var | Required | Description |
|
|
45
|
-
|---|---|---|
|
|
46
|
-
| `SEEKSTONE_VAULT` | yes | Absolute path to the Obsidian vault. |
|
|
47
|
-
| `SEEKSTONE_LOG_LEVEL` | no | `error` \| `warn` \| `info` (default) \| `debug`. |
|
|
48
|
-
| `SEEKSTONE_LOG_FILE` | no | Absolute path; when set, JSON-line logs are appended here (size-rotated). |
|
|
49
|
-
| `SEEKSTONE_WATCH_POLL` | no | Set to `1` to stat-poll for changes instead of native OS events — slower but reliable on network drives, WSL, and some containers. |
|
|
50
|
-
|
|
51
|
-
Works on macOS, Linux, and Windows.
|
|
72
|
+
---
|
|
52
73
|
|
|
53
74
|
## Tools
|
|
54
75
|
|
|
@@ -63,10 +84,51 @@ Works on macOS, Linux, and Windows.
|
|
|
63
84
|
| `append_note` | Append to a note body without touching frontmatter. |
|
|
64
85
|
| `patch_frontmatter` | Set/update/delete frontmatter keys without reordering existing keys or changing quote style. |
|
|
65
86
|
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## Configuration
|
|
90
|
+
|
|
91
|
+
| Env var | Required | Description |
|
|
92
|
+
|---|---|---|
|
|
93
|
+
| `SEEKSTONE_VAULT` | yes | Absolute path to your Obsidian vault. |
|
|
94
|
+
| `SEEKSTONE_LOG_LEVEL` | no | `error` \| `warn` \| `info` (default) \| `debug`. |
|
|
95
|
+
| `SEEKSTONE_LOG_FILE` | no | Absolute path; when set, JSON-line logs are appended here (size-rotated). |
|
|
96
|
+
| `SEEKSTONE_WATCH_POLL` | no | Set to `1` to stat-poll for changes instead of native OS events — reliable on network drives, WSL, containers. |
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## Frequently asked questions
|
|
101
|
+
|
|
102
|
+
**Does the Obsidian app need to be running?**
|
|
103
|
+
No — Seekstone reads the vault folder from disk directly.
|
|
104
|
+
|
|
105
|
+
**Do I need the Local REST API plugin?**
|
|
106
|
+
No — Seekstone bypasses it entirely (that's where the 575× reduction comes from).
|
|
107
|
+
|
|
108
|
+
**How does `seekstone init` find my vault automatically?**
|
|
109
|
+
It reads Obsidian's own vault registry (`obsidian.json`) — the same file Obsidian uses to track your known vaults. One vault → auto-selected. Multiple → lists them and asks you to pick with `--vault`.
|
|
110
|
+
|
|
111
|
+
**What is the `.mcpb` file?**
|
|
112
|
+
An MCP Bundle — a zip containing the server and its manifest. Claude Desktop installs it with a double-click, no terminal required.
|
|
113
|
+
|
|
114
|
+
**Which AI clients does it support?**
|
|
115
|
+
Any MCP-over-stdio client: Claude Desktop, Claude Code, Cursor, Windsurf, Continue, and others.
|
|
116
|
+
|
|
117
|
+
**Does it work on Windows?**
|
|
118
|
+
Yes — tested on macOS, Linux, and Windows in CI on every commit.
|
|
119
|
+
|
|
120
|
+
**Is it safe?**
|
|
121
|
+
No network calls, no telemetry. The vault path is sandboxed — no tool reads or writes outside it.
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
66
125
|
## Requirements
|
|
67
126
|
|
|
68
|
-
- Node.js ≥ 22
|
|
127
|
+
- Node.js ≥ 22 (for CLI install options; the `.mcpb` bundle has no external requirements)
|
|
128
|
+
- macOS, Linux, or Windows
|
|
129
|
+
|
|
130
|
+
---
|
|
69
131
|
|
|
70
132
|
## License
|
|
71
133
|
|
|
72
|
-
MIT © Shaq Mughal
|
|
134
|
+
MIT © Shaq Mughal · [GitHub](https://github.com/shaqmughal/seekstone) · [Issues](https://github.com/shaqmughal/seekstone/issues)
|