siyuan MCP Client: Self-Hosted PKM with AI & Block-Level References
siyuan: A Self-Hosted PKM Powerhouse for MCP Developers
siyuan is a privacy-first, self-hosted personal knowledge management (PKM) software, built with TypeScript and Go. It offers a comprehensive environment for organizing information, featuring block-level referencing, two-way links, and a rich editor, all while integrating AI capabilities through the OpenAI API.
Core Features for Knowledge Management
At its heart, siyuan provides a robust set of tools for content creation and organization. The editor supports a block-style Markdown WYSIWYG experience, capable of handling million-word documents. Developers can leverage custom attributes on content blocks and embed SQL queries directly into their notes. For structured data, siyuan includes a table view database.
Beyond text, the editor supports mathematical formulas, various charts (flowcharts, Gantt, timing), and staffs. It also facilitates web clipping and PDF annotation linking. For developers working across platforms, siyuan offers Android, iOS, and HarmonyOS apps, alongside Docker deployment.
AI Integration and Data Handling
siyuan integrates AI writing and Q&A chat functionality, powered by the OpenAI API. This allows for direct interaction with an LLM within your knowledge base. For handling scanned documents and images, Tesseract OCR is included.
Data export options are extensive, supporting standard Markdown with assets, PDF, Word, and HTML. It also offers direct copy functionality for platforms like WeChat MP, Zhihu, and Yuque, ensuring content can be easily shared or repurposed. Block references and embeds are preserved during export.
Developer Extensibility and Protocol Support
For developers looking to extend siyuan's capabilities, it provides a JavaScript/CSS snippet feature, allowing for custom styling and functionality. A community marketplace further expands its ecosystem. The siyuan:// protocol enables deep linking within the application. An API is also available for programmatic interaction, detailed in its GitHub repository.