File size: 3,306 Bytes
d97497a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
bc6b6db
d97497a
 
 
 
 
 
 
 
 
bc6b6db
 
d97497a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
---
title: Document Viewer
emoji: πŸ“š
colorFrom: blue
colorTo: purple
sdk: docker
pinned: false
license: mit
---

# Document Viewer - AI-Powered Documentation System

An Obsidian-style documentation system where AI agents and humans collaborate on creating and maintaining documentation.

## ⚠️ Demo Mode

**This is a demonstration instance with ephemeral storage.**

- All data is temporary and resets on server restart
- Demo content is automatically seeded on each startup
- For production use, deploy your own instance with persistent storage

## 🎯 Features

- **Wikilinks** - Link between notes using `[[Note Name]]` syntax
- **Full-Text Search** - BM25 ranking with recency bonus
- **Backlinks** - Automatically track note references
- **Split-Pane Editor** - Live markdown preview
- **MCP Integration** - AI agents can read/write via Model Context Protocol
- **Multi-Tenant** - Each user gets an isolated vault (HF OAuth)

## πŸš€ Getting Started

1. Click **"Sign in with Hugging Face"** to authenticate
2. Browse the pre-seeded demo notes
3. Try searching, creating, and editing notes
4. Check out the wikilinks between documents

## πŸ€– AI Agent Access (MCP)

After signing in, go to **Settings** to get your API token for MCP access:

```json
{
  "mcpServers": {
    "obsidian-docs": {
      "url": "https://YOUR_USERNAME-Document-MCP.hf.space/mcp",
      "transport": "http",
      "headers": {
        "Authorization": "Bearer YOUR_JWT_TOKEN"
      }
    }
  }
}
```

For local experiments you can still run the MCP server via STDIOβ€”use the "Local Development" snippet shown in Settings.

AI agents can then use these tools:
- `list_notes` - Browse vault
- `read_note` - Read note content
- `write_note` - Create/update notes
- `search_notes` - Full-text search
- `get_backlinks` - Find references
- `get_tags` - List all tags

## πŸ—οΈ Tech Stack

**Backend:**
- FastAPI - HTTP API server
- FastMCP - MCP server for AI integration
- SQLite FTS5 - Full-text search
- python-frontmatter - YAML metadata

**Frontend:**
- React + Vite - Modern web framework
- shadcn/ui - UI components
- Tailwind CSS - Styling
- react-markdown - Markdown rendering

## πŸ“– Documentation

Key demo notes to explore:

- **Getting Started** - Introduction and overview
- **API Documentation** - REST API reference
- **MCP Integration** - AI agent configuration
- **Wikilink Examples** - How linking works
- **Architecture Overview** - System design
- **Search Features** - Full-text search details

## βš™οΈ Deploy Your Own

Want persistent storage and full control? Deploy your own instance:

1. Clone the repository
2. Set up HF OAuth app
3. Configure environment variables
4. Deploy to HF Spaces or any Docker host

See [DEPLOYMENT.md](https://github.com/YOUR_REPO/Document-MCP/blob/main/DEPLOYMENT.md) for detailed instructions.

## πŸ”’ Privacy & Data

- **Multi-tenant**: Each HF user gets an isolated vault
- **Demo data**: Resets on restart (ephemeral storage)
- **OAuth**: Secure authentication via Hugging Face
- **No tracking**: We don't collect analytics or personal data

## πŸ“ License

MIT License - See LICENSE file for details

## 🀝 Contributing

Contributions welcome! Open an issue or submit a PR.

---

Built with ❀️ for the AI-human documentation collaboration workflow