A Model Context Protocol (MCP) server that provides efficient access to Svelte documentation with advanced caching, search capabilities, and optimised content delivery. This server integrates directly with Svelte's official documentation, offering both full and compressed variants suitable for different LLM context window sizes.
- π Complete Svelte documentation access through MCP Resources
- π Advanced search capabilities:
- Document type filtering (API, Tutorial, Example, Error)
- Section hierarchy awareness
- Intelligent relevance scoring based on:
- Term frequency
- Section importance
- Document type relevance
- Exact phrase matching
- Context-aware result excerpts
- Related search suggestions
- πΎ Efficient caching with LibSQL
- π Automatic content freshness checks
- π¦ Support for package-specific documentation (Svelte, Kit, CLI)
- π Smart content chunking for large documents
- ποΈ Compressed variants for smaller context windows
- ποΈ Built on the Model Context Protocol
This server requires configuration through your MCP client. Here are examples for different environments:
Add this to your Cline MCP settings:
{
"mcpServers": {
"svelte-docs": {
"command": "npx",
"args": ["-y", "mcp-svelte-docs"],
"env": {
"LIBSQL_URL": "file:local.db",
"LIBSQL_AUTH_TOKEN": "your-auth-token-if-using-remote-db"
}
}
}
}
For WSL environments, add this to your Claude Desktop configuration:
{
"mcpServers": {
"svelte-docs": {
"command": "wsl.exe",
"args": [
"bash",
"-c",
"LIBSQL_URL=file:local.db LIBSQL_AUTH_TOKEN=your-token npx -y mcp-svelte-docs"
]
}
}
}
The server supports the following environment variables:
LIBSQL_URL
(optional): URL for the LibSQL database. Defaults tofile:local.db
LIBSQL_AUTH_TOKEN
(optional): Auth token for remote LibSQL database
The server implements both MCP Resources and Tools:
Access documentation through these URIs:
svelte-docs://docs/llms.txt
- Documentation indexsvelte-docs://docs/llms-full.txt
- Complete documentationsvelte-docs://docs/llms-small.txt
- Compressed documentationsvelte-docs://docs/{package}/llms.txt
- Package-specific documentation- Supported packages: svelte, kit, cli
Enhanced search functionality with advanced filtering and context awareness.
Parameters:
query
(string, required): Search keywords or natural language querydoc_type
(string, optional): Filter by documentation type- Values: 'api', 'tutorial', 'example', 'error', 'all'
- Default: 'all'
context
(number, optional): Number of surrounding paragraphs (0-3)- Default: 1
include_hierarchy
(boolean, optional): Include section hierarchy- Default: true
Example Usage:
// API Reference Search
{
"query": "bind:value directive",
"doc_type": "api",
"context": 1
}
// Tutorial Search
{
"query": "routing sveltekit",
"doc_type": "tutorial",
"context": 2,
"include_hierarchy": true
}
Retrieve subsequent chunks of large documents.
Parameters:
uri
(string, required): Document URIchunk_number
(number, required): Chunk number to retrieve (1-based)
- Clone the repository
- Install dependencies:
pnpm install
- Build the project:
pnpm build
- Run in development mode:
pnpm dev
- Update version in package.json
- Build the project:
pnpm build
- Publish to npm:
pnpm publish
Contributions are welcome! Please feel free to submit a Pull Request.
MIT License - see the LICENSE file for details.
- Built on the Model Context Protocol
- Powered by Svelte Documentation
- Uses LibSQL for efficient caching