Index Server

io.github.jagilber-org由 GitHub 帳號 jagilber-org 發布v1.42.4更新於 Oct 24, 2026

MCP instruction indexing server with search, CRUD, validation, and cross-repo knowledge promotion.

已驗證STDIO僅桌面知識與記憶開發者工具

概覽

AI 產生的概覽

一個本機 MCP 知識庫,讓 AI 助理跨儲存庫搜尋、讀取並貢獻具版本與治理的指令條目。

可以做什麼
搜尋並檢索目錄條目,啟用環境變數後可選用基於嵌入的語意搜尋,並透過 dispatch 動作依 ID 取得完整詳情。新增、更新與刪除指令條目,支援清理重複項的 groom 與棄用過期內容的治理更新。將儲存庫中驗證過的樣式提升到共享目錄,保留歸屬、版本與審核狀態。透過可選的 localhost 管理儀表板監控目錄健康、使用情況與相依圖,並使用內建的唯讀提示與資源進行設定和驗證。
適用情境
適合多個儲存庫或助理工作階段需要共享已驗證的可重用指引、而不是重複記錄的情況,也適合需要審核與棄用流程、可稽核目錄而非零散筆記的團隊。
執行需求
透過 npm 套件以 stdio 在本機執行,需要 Node.js 22 或更新版本。可選設定包括用於資料目錄的 INDEX_SERVER_DIR、用於語意搜尋的 INDEX_SERVER_SEMANTIC_ENABLED(首次執行會下載約 90MB 模型)以及強制唯讀的 INDEX_SERVER_MUTATION。儀表板的 HTTPS 憑證需要 PATH 中有 openssl;也提供 Docker 方式。
安裝前請注意
助理可以建立、更新、刪除與提升目錄條目;寫入會記錄稽核日誌,全新安裝會先經人工確認才允許變更,INDEX_SERVER_MUTATION=0 可強制唯讀。可選的生命週期掛鉤可呼叫本機或遠端整合,預設關閉。README 稱正常運作時不傳送遙測、不向外部服務傳送資料,儀表板預設僅綁定 localhost。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Index Server,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Index Server

Governed knowledge base for AI agents via the Model Context Protocol (MCP).

[License: MIT] [npm version] [Node.js Version] [codecov]


🚀 Quick Start Guide — Get running in 5 minutes with HTTPS and semantic search

📖 Use Case Scenarios — Real-world examples for support engineers, dev teams, and knowledge management

What Is Index Server?

Index Server is a central knowledge base that AI agents connect to via the Model Context Protocol (MCP). Agents search, read, and contribute knowledge that persists across sessions and repositories — building a governed catalog with versioning, audit trails, and approval workflows. An optional admin dashboard provides real-time monitoring of catalog health, usage analytics, and drift detection.


Prerequisite: Node.js

Index Server requires Node.js 22 or newer before using the npx or source install options. Download Node.js from nodejs.org or install it with Windows Package Manager from administrator prompt:

powershell
winget install OpenJS.NodeJS.LTS

Quick Start Options

Option A: MCP-native via npx (recommended)

Run the latest published package without cloning the repo. Choose this when you want the fastest local start and already have Node.js installed.

Start with the setup wizard so it can generate the right MCP client config for VS Code, Copilot CLI, or Claude Desktop:

bash
npx -y @jagilber-org/index-server@latest --setup

To launch the server directly without the wizard:

bash
npx -y @jagilber-org/index-server@latest --dashboard

Prefer a stable index-server command on PATH? Install globally instead: npm install -g @jagilber-org/index-server, then run index-server --setup / index-server --dashboard. The GitHub Packages mirror requires authentication, so npx against npm.pkg.github.com needs a per-scope .npmrc plus a GITHUB_TOKEN with read:packages.

Upgrading or hitting "unsupported INDEX_SERVER key" / "Cannot find module" errors after install? Run the wizard-driven cleanup: index-server --uninstall (aliases: --remove, --clean). It can selectively remove data paths, MCP client entries, and the global package, or wipe everything with --non-interactive --all. See Upgrading and Uninstalling for the full reference.

Bootstrap HTTPS for the dashboard

Generate a self-signed TLS cert+key in one command:

bash
# Generate at ~/.index-server/certs/, then start with HTTPS automaticallynpx -y @jagilber-org/index-server@latest --init-cert --start --dashboard

--init-cert alone exits after generation. --init-cert --start continues into normal startup with the generated cert wired into --dashboard-tls automatically.

Prerequisite: openssl must be on PATH. On Windows, Git for Windows (git.exe) is the recommended TLS prerequisite because it ships an openssl build, typically at C:\Program Files\Git\usr\bin\openssl.exe. If it is missing, install Git for Windows from an admin prompt:

powershell
winget install --id Git.Git -e --source winget

See docs/cert_init.md for setup guidance, the full flag reference, security notes, and troubleshooting.

Option B: VS Code MCP configuration

Use VS Code's built-in MCP support with .vscode/mcp.json or your global mcp.json. You can add the server entry manually or run npx -y @jagilber-org/index-server@latest --setup to generate the config for you.

Option C: Docker

Run the server in a container. Choose this when you want isolated runtime dependencies or you are preparing a container-based deployment.

bash
docker compose up        # HTTP on :8787docker compose up tls    # HTTPS on :8787 with self-signed certs

See Docker Deployment Guide for volumes, environment variables, and production configuration.

Option D: From source

Clone and build the repository yourself. Choose this when you want to modify the server, run tests locally, or work from the latest source.

bash
git clone https://github.com/jagilber-org/index-server.gitcd index-servernpm installnpm run build

After the build completes, run the interactive setup wizard to generate .env and your MCP client config:

bash
node dist/server/index-server.js --setup# ornpm run setup

Configure Your MCP Client

Best practice: set INDEX_SERVER_DIR to a well-known data folder such as C:/mcp/index-data/instructions or ~/.index-server/instructions. Keep it outside VS Code and MCP client config paths so backups and reinstalls do not move or overwrite your catalog.

VS Code (`.vscode/mcp.json`)
jsonc
{  "servers": {    "index-server": {      "type": "stdio",      "command": "npx",      "args": [        "-y",        "@jagilber-org/index-server@latest",        "--dashboard"      ],      "env": {        "INDEX_SERVER_DIR": "C:/mcp/index-data/instructions",        "INDEX_SERVER_LOG_LEVEL": "info"      }    }  }}
Copilot CLI (`~/.copilot/mcp-config.json`)
json
{  "mcpServers": {    "index-server": {      "type": "stdio",      "command": "npx",      "args": ["-y", "@jagilber-org/index-server@latest", "--dashboard"],      "env": {        "INDEX_SERVER_DIR": "C:/mcp/index-data/instructions",        "INDEX_SERVER_LOG_LEVEL": "info"      },      "tools": ["*"]    }  }}
Claude Desktop (`claude_desktop_config.json`)
json
{  "mcpServers": {    "index-server": {      "type": "stdio",      "command": "npx",      "args": ["-y", "@jagilber-org/index-server@latest", "--dashboard"],      "env": {        "INDEX_SERVER_DIR": "C:/mcp/index-data/instructions",        "INDEX_SERVER_LOG_LEVEL": "info"      },      "tools": ["*"]    }  }}

See MCP Configuration Guide for advanced patterns, environment variables, and TLS setup.

Verify

  • Server appears in your MCP client's server list
  • Run tools/list to see 50+ available tools
  • Run prompts/list to discover setup/config/verification prompts
  • Run resources/list to discover quickstart and configuration guides
  • Dashboard (if enabled) at http://localhost:8787

Built-in MCP prompts and resources

Clients that support MCP prompts/resources can use the built-in read-only setup guidance surface:

  • Prompts: setup_index_server, configure_index_server, verify_index_server
  • Resources: index://guides/quickstart, index://guides/client-config, index://guides/verification

These surfaces are intentionally static and read-only. Use them for setup help, config review, and verification/troubleshooting without changing server state.

Enable Semantic Search (optional)

Add one env variable to any MCP config above to get embedding-based similarity search:

jsonc
"env": {  "INDEX_SERVER_SEMANTIC_ENABLED": "1"}

First search downloads a ~90MB model (one-time). After that, all searches automatically use semantic mode — no code changes needed. See Quick Start Guide for GPU acceleration and offline options.


Teach Your Agents

Copy-paste these instructions so your AI agents discover and use the shared knowledge base automatically.

Global instructions (~/.github/copilot-instructions.md)

markdown
## Index Server- If index-server MCP tools are available, use them as a shared knowledge base for validated cross-repo patterns and standards.- Search before creating: use `index_search` with 2-5 keywords, then `index_dispatch` with action="get" for details.- After learning something reusable, add it with `index_add` or promote from a repo with `promote_from_repo`.- Index entries are promoted snapshots — always prefer current repo files over index content.

Per-repo instructions (.github/copilot-instructions.md)

markdown
## Index Server Integration- Search order: repo files → .instructions/ → index-server → external docs- **Search before add/promote**: Always search for existing guidance before creating new instructions. Use `index_search` with relevant keywords and inspect top results.- To retrieve: `index_search` → `index_dispatch` with action="get" and the instruction ID- To contribute: validate locally in `.instructions/` first, then promote with `promote_from_repo`- To maintain: use `index_dispatch` with action="groom" to clean duplicates, `index_governanceUpdate` to deprecate stale content- Current repo state always wins over promoted index snapshots

Dashboard

The optional admin dashboard provides a Grafana-dark themed interface for monitoring and catalog management:

[Overview]

PanelDescription
OverviewServer health, uptime, system status
ConfigurationRuntime flags, overlay editing, reload status, and redacted lifecycle-hook status
InstructionsCatalog browser with usage counts and governance status
MonitoringPerformance metrics and error rates
MaintenanceBackup, repair, and catalog operations
GraphMermaid dependency graph of instructions

See dashboard.md for full details. REST client scripts (scripts/index-server-client.ps1 and scripts/index-server-client.sh) provide full CRUD access for CI pipelines and subagents without MCP — see tools.md.


Key Features

  • MCP protocol compliance — Full JSON-RPC 2.0 over stdio with schema validation
  • 50+ tools for search, CRUD, governance, analytics, messaging, and feedback
  • Semantic search — Optional embedding-based similarity search (HuggingFace models)
  • Bootstrap security — Mutations gated until human confirmation on fresh installs
  • Cross-repo knowledge promotion — Validate locally, then promote proven patterns to the shared catalog
  • Governance workflows — Ownership, versioning, approval status, and deterministic governance hashing
  • Post-commit lifecycle hooks — Optional create/update/remove/change automation with timeout, concurrency, blocking, redaction, and failure isolation
  • REST client scripts — PowerShell and Bash scripts for CI/agents without MCP

Documentation

DocumentPurpose
Quick StartGet running in 5 minutes
Use CasesReal-world scenarios and workflows
API ReferenceComplete MCP tool documentation
MCP ConfigurationSetup patterns for all environments
Server ConfigurationEnvironment variables and CLI options
ArchitectureSystem design and component overview
Lifecycle HooksPost-commit automation design, configuration, security, and troubleshooting
Admin DashboardUI features, drift monitoring, maintenance
Content GuidanceLocal vs. central instruction guidance
Network PrivacyNetwork transparency and offline deployment
Documentation IndexFull documentation map

Security

Index Server makes zero telemetry calls and sends no data to external services during normal operation. Operator-configured lifecycle hooks can explicitly invoke local or remote integrations; they are disabled by default. The dashboard binds to localhost only by default. Mutations are audit-logged, can be forced read-only with INDEX_SERVER_MUTATION=0, and fresh installations gate writes until human confirmation via the bootstrap workflow. Optional subsystems can be disabled at boot (e.g. INDEX_SERVER_MESSAGING_ENABLED=0 to remove all messaging_* MCP tools and the dashboard Messaging tab).

See SECURITY.md for vulnerability reporting, PRIVACY.md for data collection policy and optional outbound connections, and Network Privacy Guide for offline deployment and verification.


Development

bash
npm install          # Install dependenciesnpm run build        # Build TypeScriptnpm run setup        # Interactive configuration wizard (generates .env + mcp.json)npm test             # Run the fast default suitenpm run test:slow    # Run heavy integration/perf testsnpm run test:all     # Run the full Vitest suitenpm run typecheck    # Type checkingnpm run lint         # Linting

See CONTRIBUTING.md for the full workflow, code standards, and testing requirements.


License

MIT License — see LICENSE file for details.


Built with Model Context Protocol (MCP), TypeScript, Node.js, Vitest, and AJV.

來源:README.md,提交 17e38d7

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v1.42.4最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分