Skip to content

πŸ” MCP server that lets you search and access Svelte documentation with built-in caching

License

Notifications You must be signed in to change notification settings

spences10/mcp-svelte-docs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

39 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

mcp-svelte-docs

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.

Features

  • πŸ“š 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

Configuration

This server requires configuration through your MCP client. Here are examples for different environments:

Cline Configuration

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"
			}
		}
	}
}

Claude Desktop with WSL Configuration

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"
			]
		}
	}
}

Environment Variables

The server supports the following environment variables:

  • LIBSQL_URL (optional): URL for the LibSQL database. Defaults to file:local.db
  • LIBSQL_AUTH_TOKEN (optional): Auth token for remote LibSQL database

API

The server implements both MCP Resources and Tools:

Resources

Access documentation through these URIs:

  • svelte-docs://docs/llms.txt - Documentation index
  • svelte-docs://docs/llms-full.txt - Complete documentation
  • svelte-docs://docs/llms-small.txt - Compressed documentation
  • svelte-docs://docs/{package}/llms.txt - Package-specific documentation
    • Supported packages: svelte, kit, cli

Tools

search_docs

Enhanced search functionality with advanced filtering and context awareness.

Parameters:

  • query (string, required): Search keywords or natural language query
  • doc_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
}

get_next_chunk

Retrieve subsequent chunks of large documents.

Parameters:

  • uri (string, required): Document URI
  • chunk_number (number, required): Chunk number to retrieve (1-based)

Development

Setup

  1. Clone the repository
  2. Install dependencies:
pnpm install
  1. Build the project:
pnpm build
  1. Run in development mode:
pnpm dev

Publishing

  1. Update version in package.json
  2. Build the project:
pnpm build
  1. Publish to npm:
pnpm publish

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

MIT License - see the LICENSE file for details.

Acknowledgments

About

πŸ” MCP server that lets you search and access Svelte documentation with built-in caching

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published