Install
$ agentstack add skill-bettyguo-obsidian-mcp-connect-ideas ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
When to use
The user wants serendipitous structural insight — a pair of notes that share content but no wikilink edge. Useful during a slow-thinking session or as part of a weekly review.
Procedure
- Call
vault_info. - Call
find_hubs(top_k=10)to identify central notes — these are the strongest candidates for a missed connection. - For each hub, call
find_related(seed=hub_path, top_k=8). Filter the results: keep only notes that are NOT already wikilinked to the hub (usefind_backlinks(hub_path)to determine this). - Score each candidate pair by
find_relatedsimilarity × log(candidate's wikilink count). High-quality candidates are dense-similar AND not already isolated. - Pick the single highest-scoring pair. If no candidate clears a similarity threshold of 0.55, tell the user "I didn't find a strong enough pair this round" and stop.
- Call
read_noteon both notes. Skim. Identify the specific overlap. - Surface to the user IN CHAT:
- Note A path + 1-line summary
- Note B path + 1-line summary
- Why they should connect (2–3 sentences, pointing at the actual textual overlap)
- The proposed wikilink insertion: which note gets the link, near which phrase, with what alias if any.
- If the user confirms, call
link_notes(from_path=..., to_path=..., context_phrase=..., confirm=true).
Output format
Found a pair:
A: [[Note A]] — {one-line summary}
B: [[Note B]] — {one-line summary}
Rationale: {2–3 sentences citing the overlap}
Proposed: Insert `[[Note B]]` into [[Note A]] near "{context phrase}".
Anti-patterns
- Don't propose more than one pair per invocation. Decision fatigue kills the workflow.
- Don't link two notes that are already 1-hop connected via a third note unless the connection is genuinely value-add. Surface the existing path instead.
- Don't propose a link that would make Note A's text grammatically nonsensical. Re-read the context phrase before suggesting.
- Don't insert the link without
confirm=Truefrom the user (unless--unattended).
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: bettyguo
- Source: bettyguo/obsidian_mcp
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.