Inkdex
by antonlunden
README.md
# Inkdex
[](https://www.npmjs.com/package/inkdex)
MCP server for semantic search over markdown docs.
## Tools
| Tool | Description |
|------|-------------|
| `search_docs` | Search indexed documentation. Returns matching chunks ranked by relevance. |
## Usage
Add to your MCP client configuration:
```json
{
"mcpServers": {
"inkdex": {
"command": "npx",
"args": [
"-y",
"inkdex"
],
"env": {
"DOCS_PATH": "/path/to/your/docs"
}
}
}
}
```
| Variable | Required | Description |
|----------|----------|-------------|
| `DOCS_PATH` | Yes | Path to the directory containing markdown files to index |
## How it works
Markdown files are split into chunks by heading structure and paragraph boundaries. Chunks are embedded locally using `all-MiniLM-L6-v2` and stored in SQLite.
Search ranks results using both vector similarity and BM25 full-text matching, combined via [Reciprocal Rank Fusion](https://cormack.uwaterloo.ca/cormacksigir09-rrf.pdf).
Results include the source, context, and text:
```
[mira/authentication.md]
<context>
Authentication > Token Expiration and Refresh
</context>
The refresh token expires...
```
TDQS
A3.6/5.0
Scored across 1 tool
Disambiguation5/5
Only one tool exists, so there is no possibility of confusion between tools. Its purpose is clear.
Naming Consistency5/5
The single tool name 'search_docs' uses a clear verb_noun structure in snake_case, consistent with common naming conventions.
Tool Count3/5
A single tool is borderline; it may be sufficient for a narrow search-only purpose but feels thin for a broader documentation server.
Completeness3/5
The tool covers semantic search but lacks other potentially useful operations like retrieving a specific document or listing available documentation, which are common in documentation servers.
Maintenance
ActivityInactive
ResponsivenessNo issues