heuristic-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| resources | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| a_semantic_searchA | Performs intelligent hybrid code search combining semantic understanding with exact text matching. Ideal for finding code by meaning (e.g., 'authentication logic', 'database queries') even with typos or variations. Returns the most relevant code snippets with file locations and line numbers. |
| b_index_codebaseA | Manually trigger a full reindex of the codebase. This will scan all files and update the embeddings cache. Useful after large code changes or if the index seems out of date. |
| c_clear_cacheA | Clears the embeddings cache, forcing a complete reindex on next search or manual index operation. Useful when encountering cache corruption or after major codebase changes. |
| d_find_similar_codeA | Find similar code patterns in the codebase. Given a code snippet, returns other code chunks that are semantically similar. Useful for finding duplicate code, understanding patterns, and refactoring opportunities. |
| d_ann_configA | Configure and monitor the ANN (Approximate Nearest Neighbor) search index. Actions: 'stats' (view current config), 'set_ef_search' (tune search accuracy/speed), 'rebuild' (force index rebuild). |
| e_check_package_versionA | Fetches the latest version of a package from its official registry. Supports npm, PyPI, crates.io, Maven, Go, RubyGems, NuGet, Packagist, Hex, pub.dev, Homebrew, and Conda. Use prefix like "pip:requests" for non-npm packages. |
| f_set_workspaceA | Changes the current workspace path at runtime. This updates the search directory and cache, and optionally triggers a full reindex. Useful for multi-project workflows. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| README.md | |
| config.jsonc | |
| debug-pids.js | |
| eslint.config.js | |
| index.js | |
| mcp_config.json | |
| package-lock.json | |
| package.json | |
| pnpm-lock.yaml | |
| publish.ps1 | |
| publish.sh | |
| vitest.config.js | |
| docs/ARCHITECTURE.md | |
| docs/GUIDE.md | |
| features/ann-config.js | |
| features/clear-cache.js | |
| features/find-similar-code.js | |
| features/hybrid-search.js | |
| features/index-codebase.js | |
| features/lifecycle.js | |
| features/package-version.js | |
| features/register.js | |
| features/resources.js | |
| features/set-workspace.js | |
| lib/cache-ops.js | |
| lib/cache-utils.js | |
| lib/cache.js | |
| lib/call-graph.js | |
| lib/cli.js | |
| lib/config.js | |
| lib/constants.js | |
| lib/embed-query-process.js | |
| lib/embedding-process.js | |
| lib/embedding-worker.js | |
| lib/ignore-patterns.js | |
| lib/json-worker.js | |
| lib/json-writer.js | |
| lib/logging.js | |
| lib/memory-logger.js | |
| lib/onnx-backend.js | |
| lib/path-utils.js | |
| lib/project-detector.js | |
| lib/server-lifecycle.js | |
| lib/settings-editor.js | |
| lib/slice-normalize.js | |
| lib/tokenizer.js | |
| lib/utils.js | |
| lib/vector-store-binary.js | |
| lib/vector-store-sqlite.js | |
| lib/workspace-cache-key.js | |
| lib/workspace-env.js | |
| scripts/clear-cache.js | |
| scripts/download-model.js | |
| scripts/mcp-launcher.js | |
| scripts/postinstall.js | |
| test/ann-config.test.js | |
| test/ann-fallback.test.js | |
| test/binary-store.test.js | |
| test/boost.test.js | |
| test/cache-branches.test.js | |
| test/cache-errors.test.js | |
| test/cache-extended.test.js | |
| test/cache-helpers.test.js | |
| test/cache-hnsw-failure.test.js | |
| test/cache-json-worker.test.js | |
| test/cache-utils.test.js | |
| test/cache-worker.test.js | |
| test/cache.test.js | |
| test/call-graph.test.js | |
| test/clear-cache.test.js | |
| test/cli-aliases.test.js | |
| test/code-review-workflow.test.js | |
| test/config.test.js | |
| test/coverage-gap.test.js | |
| test/coverage-maximizer.test.js | |
| test/debug-analysis.js | |
| test/embedding-model.test.js | |
| test/embedding-process.test.js | |
| test/embedding-worker-extended.test.js | |
| test/embedding-worker.test.js | |
| test/extended.test.js | |
| test/features.test.js | |
| test/find-similar-code.test.js | |
| test/fixes-verifier.test.js | |
| test/helpers.js | |
| test/helpers.test.js | |
| test/hybrid-search-basic.test.js | |
| test/hybrid-search-branch.test.js | |
| test/hybrid-search-callgraph.test.js | |
| test/hybrid-search-extra.test.js | |
| test/hybrid-search.test.js | |
| test/index-cli.test.js | |
| test/index-codebase-batch.test.js | |
| test/index-codebase-branches.test.js | |
| test/index-codebase-core.test.js | |
| test/index-codebase-edge-cases.test.js | |
| test/index-codebase-errors.test.js | |
| test/index-codebase-extended.test.js | |
| test/index-codebase-gap.test.js | |
| test/index-codebase-lines.test.js |
TDQS
Scored across 7 tools
Most tools have distinct purposes, but a_semantic_search and d_find_similar_code both deal with semantic code search, potentially causing confusion. However, descriptions clarify different use cases (query vs. snippet input). The two d-prefixed tools are clearly different.
All tool names follow a consistent pattern of a letter prefix followed by an underscore and a descriptive name (e.g., a_semantic_search, b_index_codebase). The pattern is uniform, though the letters themselves have no semantic meaning.
7 tools is a reasonable number for a code search server. The count feels appropriate, covering core functionality without being overly sparse or bloated. The inclusion of e_check_package_version seems slightly out of scope but doesn't harm coherence.
The tool set covers essential operations: search, indexing, cache management, configuration, similarity search, and workspace switching. A minor gap is the lack of a tool to inspect or delete specific indexed files, but overall the surface is sufficient for the domain.