Back to Browse

Docsmint MCP Server

Developer ToolsLow Risk9.7MCP RegistryLocalRemote
Free

Server data from the Official MCP Registry

Self-hosted AI-native knowledge workspace with hybrid search, GraphRAG, and MCP.

About

Self-hosted AI-native knowledge workspace with hybrid search, GraphRAG, and MCP.

Remote endpoints: streamable-http: https://docsmint.com/mcp

Security Report

9.7
Low Risk9.7Low Risk

Valid MCP server (2 strong, 1 medium validity signals). 1 code issue detected. No known CVEs in dependencies. ⚠️ Package registry links to a different repository than scanned source. Imported from the Official MCP Registry. 2 finding(s) downgraded by scanner intelligence.

Endpoint verified · Requires authentication · 3 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

env_vars

Check that this permission is expected for this type of plugin.

database

Check that this permission is expected for this type of plugin.

HTTP Network Access

Connects to external APIs or services over the internet.

What You'll Need

Set these up before or after installing:

Base URL of the DocsMint API.Optional

Environment variable: HIAI_DOCS_URL

Workspace or category scoped DocsMint API key.Required

Environment variable: HIAI_DOCS_API_KEY

How to Install & Connect

Available as Local & Remote

This plugin can run on your machine or connect to a hosted endpoint. during install.

Documentation

View on GitHub

From the project's GitHub README.

DocsMint

A self-hosted AI-native knowledge workspace and installable PWA for people, applications, and AI agents.

DocsMint stores documents in a structured JSON editor model first. Markdown is the convenient second format for editing, importing, and exporting content. Automatic chunking, 1024-dimensional embeddings, multilingual hybrid search, GraphRAG, and cross-encoder rerank make the same knowledge base useful to people, applications, and agents through the web application, REST API, TypeScript SDK, CLI, and MCP server.

Apache-2.0 License Release npm Docker Pulls Stars CI Bun TypeScript Svelte Elysia Tailwind_CSS Drizzle_ORM PRs Welcome MCP Badge

GitHub · Docker Hub · npm · LobeHub MCP

Why DocsMint?

  • Write naturally in a rich visual editor or raw Markdown.
  • Find meaning, not only keywords with exact, lexical, fuzzy, vector, multilingual expansion, and graph retrieval fused through RRF, then reranked with a cross-encoder (Voyage rerank-2.5 in the reference profile).
  • Keep retrieval current with automatic, incremental chunking and re-embedding after document or metadata changes.
  • Connect agents directly through REST, a typed SDK, CLI, or MCP.
  • Control access with global keys or category-scoped read, edit, and write permissions.
  • Own the full stack: application data, vectors, graph, queue, and files run on infrastructure you control.

What's new in 0.8.2?

  • Correct rerank identity. Empty candidates can no longer shift provider scores onto the wrong document ID; partial and invalid provider responses still preserve stable RRF fallback order.
  • Recover optional AI stages safely. Pipeline status includes typed graph and summary warnings, and the API or SDK can retry only failed enrichment on the current embedding generation without rebuilding ready chunks.
  • Reliable public frontend imports. The standalone frontend consumes only published hiai-ui exports, with no source or distribution aliases.

Read the complete release history in the changelog or GitHub Releases. See the roadmap for what comes next.

Fastest installation: give this prompt to your agent

If you are installing DocsMint through an AI coding agent, use this path first. It keeps the setup to Docker plus one provider choice and avoids unnecessary source-code changes.

Install DocsMint from https://github.com/HiAi-gg/docsmint.
Verify Docker and Docker Compose v2, clone the repository, and run
`bash scripts/quickstart.sh`. Do not print or commit .env. Ask me to enter only
an OpenRouter key or select Ollama, then run quickstart again. Verify
http://localhost:50701, http://localhost:50700/api/health, and
`docker compose ps`. Do not replace Bun, rewrite migrations, disable GraphRAG,
or delete volumes.

After startup, open http://localhost:50701 and create the first account. For manual installation, use the Docker quickstart below.

Quickstart

Requirements

  • Docker Engine or Docker Desktop
  • Docker Compose v2
  • One of:

Start with Docker

git clone https://github.com/HiAi-gg/docsmint.git
cd docsmint
bash scripts/quickstart.sh

On its first run, the script creates an ignored root .env, generates the database, authentication, and storage secrets, builds the PostgreSQL image, applies migrations, and starts the complete application.

Published application images are on Docker Hub. There is no untagged latest image; pull the role-specific tags:

docker pull vgalibov/docsmint:api-latest
docker pull vgalibov/docsmint:web-latest
docker pull vgalibov/docsmint:caddy-latest

Use versioned tags such as api-v0.8.1 for reproducible deploys. The quickstart still builds the Compose stack from this repository so PostgreSQL, Redis, and SeaweedFS start together with the application.

For OpenRouter, add one value to .env and run the script again:

OPENROUTER_API_KEY=sk-or-your-key

For Ollama, select the local provider instead:

AI_PROVIDER=ollama
OLLAMA_PORT=11434

Then make sure the configured local models are available:

ollama pull bge-m3
ollama pull qwen3:8b
bash scripts/quickstart.sh

Open http://localhost:50701. The API health endpoint is http://localhost:50700/api/health.

First use

  1. Create your account in the web application.
  2. Create a category or folder and add or import a document.
  3. Wait for the document pipeline to finish chunking and embedding.
  4. Search using an exact phrase, a related concept, an alternate language, or a misspelling.
  5. Open Settings → API when you want to connect a CLI, MCP client, or external application.

The canonical local ports are:

ServicePort
Web application50701
REST API50700
PostgreSQL5437
Redis6384
SeaweedFS S3 gateway50702
SeaweedFS filer UI50703

See Deployment for domains, TLS, provider tuning, backups, and production operation.

Embedding provider URLs, models, and credentials are deployment configuration. They are never stored in browser settings or local storage.

Use DocsMint from the terminal

The published package includes the CLI. It connects to an already running DocsMint server; installing it does not deploy the server.

npm install @hiai-gg/docsmint
bunx --package @hiai-gg/docsmint docsmint init \
  --url http://localhost:50700 \
  --key 'your-global-or-category-key'

bunx --package @hiai-gg/docsmint docsmint search "project architecture"
bunx --package @hiai-gg/docsmint docsmint list
bunx --package @hiai-gg/docsmint docsmint read <document-id>
bunx --package @hiai-gg/docsmint docsmint create \
  --title "Release notes" --content "# Highlights"

Credentials can also be supplied through HIAI_DOCS_URL and HIAI_DOCS_API_KEY. See the CLI guide for every command and configuration precedence.

Connect an MCP client

Give agents a secure path to search, read, and maintain your knowledge without database or filesystem access. DocsMint publishes 17 tools plus ready-made research prompts, scoped resources, and a document-manager skill.

Hosted DocsMint

Connect directly to the managed Streamable HTTP endpoint. Keep the API key in an environment variable rather than writing it into client configuration:

codex mcp add docsmint \
  --url https://docsmint.com/mcp \
  --bearer-token-env-var HIAI_DOCS_API_KEY

Self-hosted DocsMint

Run the published stdio bridge against your own DocsMint API:

{
  "mcpServers": {
    "docsmint": {
      "command": "npx",
      "args": ["-y", "@hiai-gg/docsmint", "docsmint-mcp"],
      "env": {
        "HIAI_DOCS_URL": "http://localhost:50700",
        "HIAI_DOCS_API_KEY": "your-global-or-category-key"
      }
    }
  }
}

Category keys let you expose only the documents and operations an agent needs. Use a global key only for trusted owner-wide automation. See the complete MCP reference for Bun, npm, local checkout, all tools, prompts, resources, permissions, and REST mappings.

TypeScript SDK

bun add @hiai-gg/docsmint
import { DocsClient } from '@hiai-gg/docsmint';

const docs = new DocsClient({
  baseUrl: 'http://localhost:50700',
  apiKey: process.env.HIAI_DOCS_API_KEY,
});

const created = await docs.createDoc({
  title: 'Meeting notes',
  content: '# Agenda',
});

const results = await docs.search('what did we decide?');
console.log(created.id, results.items);

The SDK is a typed fetch client with retries for transient failures. See the SDK reference and REST API.

API keys and integrations

Create and revoke integration keys from Settings → API.

CredentialIntended useAccess
Global API keyTrusted owner-wide CLI, MCP, SDK, or serviceAll owner content
Category keyLeast-privilege agent or product integrationOne category with selected permissions
Operator keyAdministration and reindex operations/api/admin/* only

Category permissions are explicit and non-hierarchical:

  • read permits list, read, search, and export;
  • edit permits updates to existing content, attachments, and versions;
  • write permits create, move, delete, share, and publish operations.

Combine permissions when an integration needs more than one capability. API-key lifecycle operations require the owning browser session; an API key cannot create or elevate another key. Server-to-server integrations are not affected by browser CORS. Browser integrations must add their exact origin to CORS_ORIGINS.

What is included?

frontend/          SvelteKit workspace and TipTap editor
backend/           Elysia REST API, search, workers, and authentication
packages/db/       Drizzle schema and migrations
packages/sdk/      Typed API client
packages/cli/      Terminal client
packages/mcp-server/  MCP stdio server
postgres/          PostgreSQL image with vector and graph extensions

The Docker deployment runs:

  • Web — document editor, folders, categories, sharing, settings, and search;
  • API — documents, attachments, versions, keys, search, and administration;
  • PostgreSQL 18 — relational data, pgvector/pgvectorscale vectors, and the Apache AGE graph in one database;
  • Redis 8 — BullMQ queues, caching, retries, and job recovery;
  • SeaweedFS — S3-compatible attachment storage.

How search works

Every document save schedules background work. Content is chunked, changed chunks are embedded, and the completed generation is activated atomically. The previous valid generation remains searchable if a provider call fails.

Search combines exact title matches, multilingual lexical search, typo-tolerant fuzzy matching, semantic vectors, adaptive query expansion, and Apache AGE graph neighbors. Reciprocal rank fusion combines the channels without allowing one weak provider result to dominate. A cross-encoder then reranks the fused prefix against the original query (Voyage rerank-2.5 by default). On a labeled 24-document corpus that moved MRR 0.969 → 1.000 and nDCG@10 0.958 → 0.986 versus RRF-only. Rerank, expansion, embeddings, and AGE failures keep the remaining channels. Authorization is applied before retrieval and again before results are returned.

GraphRAG is part of the normal search path in the reference configuration. It extracts entities after embeddings are ready and finds related documents beyond direct keyword or vector similarity. It degrades gracefully when an external model is unavailable.

For pipeline internals and tuning, see Architecture and Deployment.

Stack

  • Bun, TypeScript, Elysia, Zod, and Pino
  • Svelte 5, SvelteKit, Tailwind CSS, and TipTap
  • Better Auth and Drizzle ORM
  • PostgreSQL 18, pgvector, pgvectorscale, and Apache AGE
  • Redis 8 and BullMQ
  • SeaweedFS with its S3-compatible API
  • OpenAI-compatible providers through OpenRouter or local Ollama

Comparison

DocsMint overlaps with several excellent open-source knowledge tools, but its focus is a compact knowledge runtime shared equally by humans and agents.

ProjectPrimary strengthDifference from DocsMint
OutlinePolished team wiki and collaborationDocsMint emphasizes built-in retrieval, GraphRAG, scoped agent access, CLI, and MCP
DocmostCollaborative wiki and real-time editingDocsMint centers automatic embeddings and agent-facing integration surfaces
AppFlowyBroad local-first productivity workspaceDocsMint is narrower: a self-hosted document and retrieval service
AnythingLLMChat-oriented RAG over imported sourcesDocsMint starts with the editable knowledge base and exposes it to many clients
Danswer / OnyxEnterprise search across external connectorsDocsMint owns and edits its native corpus rather than primarily indexing other systems

This is a product-positioning summary, not a claim that every listed project lacks a feature. Check each project's current documentation when choosing a deployment.

Documentation

Development

bun install
bun run lint
bun run typecheck
bun run test
bun run build

Read CONTRIBUTING.md before opening a pull request. Please report vulnerabilities through SECURITY.md, not a public issue.

License

DocsMint is released under the Apache License 2.0.

Built as an independent open-source project in the HiAi ecosystem.

Reviews

No reviews yet

Be the first to review this server!