Search / io.github.damoqiongqiu/mcp-local-rag
mcp-local-rag
L0· runs locallySemantic code & doc search with keyword boost. AST code nav, auto HF mirror, local, privacy-first.
v0.21.0 · active · repository · descriptor JSON · versions
Search / io.github.damoqiongqiu/mcp-local-rag
L0· runs locallySemantic code & doc search with keyword boost. AST code nav, auto HF mirror, local, privacy-first.
v0.21.0 · active · repository · descriptor JSON · versions
{
"mcpServers": {
"mcp-local-rag": {
"command": "npx",
"args": [
"-y",
"@damoqiongqiu/[email protected]"
]
}
}
}claude mcp add mcp-local-rag -- npx -y @damoqiongqiu/[email protected][mcp_servers.mcp-local-rag]
command = "npx"
args = ["-y", "@damoqiongqiu/[email protected]"]
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"mcp-local-rag": {
"type": "local",
"command": [
"npx",
"-y",
"@damoqiongqiu/[email protected]"
],
"enabled": true
}
}
}{
"mcpServers": {
"mcp-local-rag": {
"command": "npx",
"args": [
"-y",
"@damoqiongqiu/[email protected]"
]
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=mcp-local-rag&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBkYW1vcWlvbmdxaXUvbWNwLWxvY2FsLXJhZ0AwLjIxLjAiXX0%3D"
}{
"servers": {
"mcp-local-rag": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@damoqiongqiu/[email protected]"
]
}
}
}{
"mcpServers": {
"mcp-local-rag": {
"command": "npx",
"args": [
"-y",
"@damoqiongqiu/[email protected]"
]
}
}
}extensions:
"mcp-local-rag":
enabled: true
name: "mcp-local-rag"
type: stdio
cmd: "npx"
args:
- "-y"
- "@damoqiongqiu/[email protected]"
timeout: 300
This is a local package: the command runs on your machine.
Not scored: fewer than three checks apply, usually because no remote answered a credential-free probe or the server is a local package.
protocol.modern, protocol.stateless, protocol.transport, protocol.list_ttlno remote answered a protocol handshake (not probed yet, unreachable, or local-only)auth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptions, tools.description_length, tools.schemas, tools.annotations, tools.directory_hints, tools.token_cost, tools.api_dumptool list unknown (behind auth, not probed, or empty)stability.changes, stability.rug_pulltool list unknowndeps.known_vulns5 advisories to act on (malicious, or rated high or critical with a fix available): GHSA-f88m-g3jw-g9cj in [email protected] (indirect, fixed in 0.35.0), GHSA-rgj7-g3m4-5g8c in [email protected] (indirect, fixed in 0.35.4), GHSA-wq5f-xc86-pv6w in [email protected] (indirect, fixed in 0.35.5), ...; 2 more of lower severity or without a fixdeps.mcp_sdk_version@modelcontextprotocol/sdk 1.30.1 has 3 known advisories (GHSA-22jm-h49p-29qw, GHSA-6prh-2h8m-c8cw, GHSA-6qxp-vccf-f47h); update @modelcontextprotocol/sdk to 1.32.0 or laterdeps.resolvable@damoqiongqiu/[email protected] resolved: 340 packagesNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo ~liveness-unmeasured ~updated-89d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
@damoqiongqiu/[email protected] npm339 dependencies, resolved · MCP SDK @modelcontextprotocol/sdk 1.30.1 · advisories checked 2026-10-20
| advisory | severity | package | fixed in |
|---|---|---|---|
| GHSA-22jm-h49p-29qwMCP TypeScript SDK: Experimental tasks were not tied to the session that created them | high | @modelcontextprotocol/[email protected]MCP SDK, direct | fixed in 1.32.0 |
| GHSA-6qxp-vccf-f47hMCP TypeScript SDK: OAuth client could send credentials to an authorization server chosen by the MCP server | high | @modelcontextprotocol/[email protected]MCP SDK, direct | fixed in 1.31.0 |
| GHSA-f88m-g3jw-g9cjsharp inherited vulnerabilities in libvips: CVE-2026-33327, CVE-2026-33328, CVE-2026-35590, CVE-2026-35591 | high | [email protected]indirect | fixed in 0.35.0 |
| GHSA-rgj7-g3m4-5g8csharp: Vulnerabilities in libheif: GHSA-g89c-p67h-r497 and GHSA-2jg2-4ch7-h545 | high | [email protected]indirect | fixed in 0.35.4 |
| GHSA-wq5f-xc86-pv6wsharp : Vulnerability in librsvg dependency CVE-2026-96889 | high | [email protected]indirect | fixed in 0.35.5 |
| GHSA-wq5f-xc86-pv6wsharp : Vulnerability in librsvg dependency CVE-2026-96889 | high | [email protected]indirect | fixed in 0.35.5 |
| GHSA-68fv-2mgg-jv7qsource-map-js allows event-loop denial of service through indexed source-map section offsets | high | [email protected]indirect | fixed in 1.2.2 |
| GHSA-6prh-2h8m-c8cwMCP TypeScript client SDK: HTTP client transports and OAuth requests followed cross-origin redirects and re-sent custom headers and request bodies | moderate | @modelcontextprotocol/[email protected]MCP SDK, direct | fixed in 1.32.0 |
| GHSA-5r4p-p66f-jhc7Hono: `serveStatic` decodes the request path a second time, leading to bypass of middleware on static paths | moderate | [email protected]indirect | fixed in 4.13.11 |
| GHSA-hp3w-g68c-fv3csprintf-js vulnerable to denial of service through unbounded precision specifiers | moderate | [email protected]indirect | no fix yet |
Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.
| package | registry | version | runtime | secrets |
|---|---|---|---|---|
@damoqiongqiu/mcp-local-rag | npm | 0.21.0 | – |
No tools observed. Local packages are never executed by the registry.
Schemas: list_tools.
{
"name": "io.github.damoqiongqiu/mcp-local-rag",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"version": "0.21.0",
"packages": [
{
"version": "0.21.0",
"transport": {
"type": "stdio"
},
"identifier": "@damoqiongqiu/mcp-local-rag",
"registryType": "npm",
"registryBaseUrl": "https://registry.npmjs.org",
"environmentVariables": [
{
"name": "BASE_DIR",
"format": "string",
"description": "Base directory for document storage (defaults to current working directory). Ignored when BASE_DIRS is set."
},
{
"name": "BASE_DIRS",
"format": "string",
"description": "JSON array of base directories (e.g. '[\"/a\",\"/b\"]'). Takes precedence over BASE_DIR."
},
{
"name": "DB_PATH",
"format": "string",
"description": "Path to LanceDB database directory (defaults to ./lancedb/)"
},
{
"name": "CACHE_DIR",
"format": "string",
"description": "Directory where Transformers.js models are cached (defaults to ./models/)"
},
{
"name": "MODEL_NAME",
"format": "string",
"description": "Embedding model name (defaults to Xenova/all-MiniLM-L6-v2)"
},
{
"name": "MAX_FILE_SIZE",
"format": "string",
"description": "Maximum file size in bytes (defaults to 104857600 / 100MB)"
},
{
"name": "RAG_MAX_DISTANCE",
"format": "string",
"description": "Maximum distance threshold for filtering search results. Results with distance greater than this value will be excluded. Lower values mean stricter filtering (e.g., 0.5 for high relevance only)"
},
{
"name": "RAG_GROUPING",
"format": "string",
"description": "Grouping mode for quality filtering. 'similar' returns only the most similar group (stops at first distance jump). 'related' includes related groups (stops at second distance jump). Unset means no grouping filter"
},
{
"name": "RAG_MAX_FILES",
"format": "string",
"description": "Maximum number of files to keep in search results. Results are filtered to include only chunks from the top N best-scoring files. For example, 1 returns only the single best-matching file's chunks. Unset means no file filtering."
},
{
"name": "CHUNK_MIN_LENGTH",
"format": "string",
"description": "Minimum chunk length in characters (1-10000, defaults to 50). Chunks shorter than this threshold are filtered out during ingestion."
},
{
"name": "RAG_DEVICE",
"format": "string",
"description": "Execution device for the embedder (defaults to cpu). Passed straight to ONNX Runtime; see the Transformers.js device source for the supported backend names. If the requested device fails to initialize, the server throws an error."
},
{
"name": "RAG_DTYPE",
"format": "string",
"description": "Embedding quantization dtype for the embedder (defaults to fp32). Opt-in and pass-through; accepts any dtype the chosen model provides (fp32, fp16, q8, int8, ...). If the model has no variant for the requested dtype, the server throws an error. Changing this changes the embedding space — re-ingest existing data."
},
{
"name": "RAG_HYBRID_WEIGHT",
"format": "string",
"description": "Keyword boost factor for hybrid search (0.0-1.0, defaults to 0.6). 0 means semantic similarity only; higher values increase the keyword-match contribution to the final score."
},
{
"name": "RAG_WATCH",
"format": "string",
"description": "Enable automatic file watcher to detect changes and re-index modified files (true/1 to enable). Useful during active development."
},
{
"name": "HF_ENDPOINT",
"format": "string",
"description": "Explicit HuggingFace endpoint URL to use for model downloads. When set, auto-mirror detection is skipped and this URL is used directly. Useful when you have a full-featured mirror."
},
{
"name": "HF_AUTO_MIRROR",
"format": "string",
"description": "Enable automatic mirror detection for HuggingFace downloads (defaults to true). Set to \"false\" or \"0\" to disable and use huggingface.co directly. The mirror chain is: huggingface.co → hf-mirror.com → modelscope.cn."
},
{
"name": "HTTPS_PROXY",
"format": "string",
"description": "HTTPS proxy URL for downloading embedding models (e.g. http://proxy:8080). Required only if behind a corporate proxy."
},
{
"name": "HTTP_PROXY",
"format": "string",
"description": "HTTP proxy URL for downloading embedding models. Fallback if HTTPS_PROXY is not set."
}
]
}
],
"repository": {
"url": "https://github.com/damoqiongqiu/mcp-local-rag",
"source": "github"
},
"description": "Semantic code & doc search with keyword boost. AST code nav, auto HF mirror, local, privacy-first."
}