Skip to main content
Glama
AustinAbhari

mcp-wiki-server

by AustinAbhari
README.md
# mcp-wiki-server

A minimal, agent-agnostic MCP server that exposes search over local markdown documentation. Any MCP-compatible client (Claude Code, Claude Desktop, or a custom agent built on any model) can connect to it — the server has no knowledge of which agent or LLM is calling it.

## Tools exposed

- `search_docs(query, limit?)` — keyword search across `docs/*.md`, returns matching files with a snippet.
- `read_doc(path)` — read the full contents of a doc by its relative path.

## Setup

```bash
npm install
npm run build
```

## Run it standalone (for debugging)

```bash
npm run inspect
```

This launches the [MCP Inspector](https://github.com/modelcontextprotocol/inspector), a web UI for calling your tools directly without needing a full LLM client.

## Wire it into Claude Code

```bash
claude mcp add wiki-search -- node /absolute/path/to/mcp-wiki-server/dist/index.js
```

## Wire it into Claude Desktop

Add to `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "wiki-search": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-wiki-server/dist/index.js"]
    }
  }
}
```

Any other MCP client follows the same pattern: point it at `node dist/index.js` as a subprocess command.

## Add your own docs

Drop `.md` files into `docs/` (subfolders supported). No re-deploy needed — `search_docs` reads from disk on every call.

## Next steps toward a shared/remote deployment

1. Swap `StdioServerTransport` for the Streamable HTTP transport in `src/index.ts`.
2. Point `docs/` at a real source (Confluence/Notion/Drive) instead of local files.
3. Containerize and deploy to Cloud Run.
4. Add auth (OAuth2/OIDC or Cloud Run IAM) in front of the HTTP endpoint.

TDQS

A3.9/5.0

Scored across 2 tools

Disambiguation5/5

The two tools serve clearly distinct purposes: search_docs finds documents by keyword, while read_doc retrieves the full content of a known document by path. There is no overlap or ambiguity between them.

Naming Consistency4/5

Both tools use a verb_noun pattern (search_docs, read_doc), making the pattern predictable. There is a minor inconsistency in pluralization—search_docs is plural while read_doc is singular—but it does not cause confusion.

Tool Count3/5

With only two tools, the server feels minimally scoped. This is appropriate for a simple read-only wiki, but it is on the thin side and offers no additional utility beyond search and read.

Completeness4/5

For a read-only documentation server, the search-and-read lifecycle is complete. The only notable gap is the lack of a way to list or browse all documents without a search query, which could be a minor workaround in some cases.

Maintenance

ActivityMaintained
ResponsivenessNo issues