seekstone 0.7.0 → 0.7.1
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 +25 -15
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# seekstone
|
|
1
|
+
# seekstone
|
|
2
2
|
|
|
3
3
|
**The Obsidian MCP server for Claude — search and edit your vault without burning context.**
|
|
4
4
|
|
|
@@ -6,12 +6,7 @@ Seekstone is an Obsidian MCP server that gives Claude (and any [Model Context Pr
|
|
|
6
6
|
|
|
7
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
8
|
|
|
9
|
-
|
|
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 |
|
|
9
|
+
(Previously also published as `obsidian-mcp-seekstone` — that alias is deprecated; existing installs keep working, but install `seekstone` going forward.)
|
|
15
10
|
|
|
16
11
|
---
|
|
17
12
|
|
|
@@ -28,23 +23,23 @@ Download `seekstone.mcpb` from [GitHub Releases](https://github.com/shaqmughal/s
|
|
|
28
23
|
Run the setup helper and let Seekstone find your vault automatically:
|
|
29
24
|
|
|
30
25
|
```bash
|
|
31
|
-
npx -y
|
|
26
|
+
npx -y seekstone init
|
|
32
27
|
```
|
|
33
28
|
|
|
34
29
|
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
30
|
|
|
36
31
|
```bash
|
|
37
32
|
# Auto-detect vault, print config to paste
|
|
38
|
-
npx -y
|
|
33
|
+
npx -y seekstone init
|
|
39
34
|
|
|
40
35
|
# Auto-detect vault, patch Claude Desktop in place (with backup)
|
|
41
|
-
npx -y
|
|
36
|
+
npx -y seekstone init --write
|
|
42
37
|
|
|
43
38
|
# Specify vault explicitly if you have multiple
|
|
44
|
-
npx -y
|
|
39
|
+
npx -y seekstone init --vault "/path/to/vault"
|
|
45
40
|
|
|
46
41
|
# Generate the Claude Code command instead
|
|
47
|
-
npx -y
|
|
42
|
+
npx -y seekstone init --client code
|
|
48
43
|
```
|
|
49
44
|
|
|
50
45
|
### Option 3 — Manual config (Claude Desktop)
|
|
@@ -56,7 +51,7 @@ Add to `claude_desktop_config.json` (Settings → Developer → Edit Config):
|
|
|
56
51
|
"mcpServers": {
|
|
57
52
|
"seekstone": {
|
|
58
53
|
"command": "npx",
|
|
59
|
-
"args": ["-y", "
|
|
54
|
+
"args": ["-y", "seekstone"],
|
|
60
55
|
"env": { "SEEKSTONE_VAULT": "/absolute/path/to/your/vault" }
|
|
61
56
|
}
|
|
62
57
|
}
|
|
@@ -66,23 +61,38 @@ Add to `claude_desktop_config.json` (Settings → Developer → Edit Config):
|
|
|
66
61
|
### Option 4 — Claude Code
|
|
67
62
|
|
|
68
63
|
```bash
|
|
69
|
-
claude mcp add seekstone --env SEEKSTONE_VAULT=/absolute/path/to/your/vault -- npx -y
|
|
64
|
+
claude mcp add seekstone --env SEEKSTONE_VAULT=/absolute/path/to/your/vault -- npx -y seekstone
|
|
70
65
|
```
|
|
71
66
|
|
|
72
67
|
---
|
|
73
68
|
|
|
74
69
|
## Tools
|
|
75
70
|
|
|
71
|
+
### Read
|
|
72
|
+
|
|
76
73
|
| Tool | Description |
|
|
77
74
|
|---|---|
|
|
78
75
|
| `search` | Full-text search. Returns ranked excerpts (default ~120 chars, tunable via `excerptLength`), not full notes. Fuzzy, prefix, and phrase queries. |
|
|
79
|
-
| `read_note` | Read the full content of a note by vault-relative path. |
|
|
76
|
+
| `read_note` | Read the full content of a note by vault-relative path. Supports returning a single section, block, or line range. |
|
|
80
77
|
| `list_notes` | List notes, optionally filtered by folder prefix or tag. |
|
|
78
|
+
| `list_tags` | List all tags in the vault sorted by usage count (or alphabetically). |
|
|
79
|
+
| `outline_note` | Return a note's heading and block structure without its full content. |
|
|
80
|
+
| `get_backlinks` | Find all notes that link to a given note. |
|
|
81
|
+
| `get_links` | List all outgoing wikilinks and markdown links from a note. |
|
|
82
|
+
| `get_periodic_note` | Read a daily/weekly/monthly/quarterly/yearly note — path resolved from your vault config, no Obsidian required. |
|
|
83
|
+
|
|
84
|
+
### Write
|
|
85
|
+
|
|
86
|
+
| Tool | Description |
|
|
87
|
+
|---|---|
|
|
81
88
|
| `create_note` | Create a note (optional frontmatter + body); parent dirs created automatically. |
|
|
82
89
|
| `delete_note` | Permanently delete a note. |
|
|
83
90
|
| `move_note` | Move/rename a note; destination dirs created automatically. |
|
|
84
91
|
| `append_note` | Append to a note body without touching frontmatter. |
|
|
85
92
|
| `patch_frontmatter` | Set/update/delete frontmatter keys without reordering existing keys or changing quote style. |
|
|
93
|
+
| `patch_note` | Insert text immediately after a heading without touching frontmatter. |
|
|
94
|
+
| `replace_in_note` | Replace the first occurrence of a word or phrase in the note body. |
|
|
95
|
+
| `append_periodic_note` | Append to today's periodic note, creating it from a template if it doesn't yet exist. |
|
|
86
96
|
|
|
87
97
|
---
|
|
88
98
|
|
package/dist/index.js
CHANGED
|
@@ -1928,7 +1928,7 @@ function startWatcher(ctx2, log2, opts) {
|
|
|
1928
1928
|
}
|
|
1929
1929
|
|
|
1930
1930
|
// src/index.ts
|
|
1931
|
-
var VERSION = true ? "0.7.
|
|
1931
|
+
var VERSION = true ? "0.7.1" : "0.0.0-dev";
|
|
1932
1932
|
var intent = parseCliIntent(process.argv.slice(2));
|
|
1933
1933
|
if (intent === "version") {
|
|
1934
1934
|
process.stdout.write(`${VERSION}
|
package/package.json
CHANGED