FastMCP server for Obsidian wikilink suggestions from a pre-computed knowledge graph (graphify…
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"io-github-adelaidasofia-graph-autotagger-mcp": {
"command": "<see-readme>",
"args": []
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
FastMCP server for Obsidian wikilink suggestions from a pre-computed knowledge graph (graphify…
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
This server is missing a description. Tools and install config are also missing.If you've used it, help the community.
Add informationBe the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in productivity / education
Persistent memory using a knowledge graph
Official Miro MCP server - Supports context to code and creating diagrams, docs, and data tables.
a self-hosted project management & Kanban solution + Instant shareable boards
Local-first AI memory with knowledge graphs and hybrid search. 17+ AI tools via MCP. Free.
MCP Security Weekly
Get CVE alerts and security updates for io.github.adelaidasofia/graph-autotagger-mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
A FastMCP server that reads a pre-computed Obsidian knowledge graph and suggests wikilinks for your notes. Designed as a companion to graphify — run graphify to build the graph, then this MCP surfaces connections as you write.
| Tool | What it does |
|---|---|
suggest_links | Suggest wikilinks for a note based on token overlap with graph node labels |
check_god_nodes | Check which highly-connected nodes (top 20 by degree) are relevant to the note |
community_match | Find which graph communities the note most closely belongs to |
log_suggestion_decision | Log accepted/rejected/ignored decisions to a local SQLite database |
Open Claude Code, paste:
/plugin marketplace add adelaidasofia/graph-autotagger-mcp
/plugin install graph-autotagger-mcp@graph-autotagger-mcp
After install, set GRAPH_JSON_PATH (see Environment variables below) and restart Claude Code, then ask:
"Suggest wikilinks for this note: [paste note content]"
pip install fastmcp
Clone:
git clone https://github.com/adelaidasofia/graph-autotagger-mcp.git
cd graph-autotagger-mcp
Set the path to your graph.json:
export GRAPH_JSON_PATH="~/vault/.graph/graph.json"
Or pass it at registration time (see below).
Self-test:
python3 server.py
Register with Claude Code:
claude mcp add graph-autotagger -s user -- \
env GRAPH_JSON_PATH="$HOME/vault/.graph/graph.json" \
python3 /path/to/graph-autotagger-mcp/server.py
Restart Claude Code, then ask:
"Suggest wikilinks for this note: [paste note content]"
| Variable | Default | Description |
|---|---|---|
GRAPH_JSON_PATH | ~/vault/.graph/graph.json | Path to your graphify output |
AUTOTAGGER_DB | ~/.config/graph-autotagger/log.db | SQLite log for suggestion decisions |
The server loads graph.json once at startup and caches it in memory. Node labels are tokenized and matched against note content using token overlap scoring. God Nodes (top 20 by degree) get special treatment since connecting to them creates high-value cross-links.
The log_suggestion_decision tool lets you build a feedback dataset over time: accepted suggestions can be used to tune the relevance threshold; rejected ones reveal graph noise.
Expects the output format from graphify (networkx node_link_data):
{
"nodes": [{"id": "node-id", "label": "Node Label", "community": 0}],
"links": [{"source": "node-a", "target": "node-b"}]
}
Note: networkx serializes edges under "links", not "edges".
Same author, same architecture pattern (FastMCP, draft+confirm on writes where applicable, vault auto-export, MIT):