{"_id":"@d365portal/d365fo-context-mcp","_rev":"5-fc5640373e820cdcded56704d02f2d4f","name":"@d365portal/d365fo-context-mcp","dist-tags":{"latest":"1.0.4"},"versions":{"1.0.0":{"name":"@d365portal/d365fo-context-mcp","version":"1.0.0","license":"MIT","_id":"@d365portal/d365fo-context-mcp@1.0.0","maintainers":[{"name":"staroffire28","email":"eddytejera28@gmail.com"}],"homepage":"https://github.com/staroffire28/eddy-context#readme","bugs":{"url":"https://github.com/staroffire28/eddy-context/issues"},"bin":{"d365fo-context-mcp":"dist/index.js"},"dist":{"shasum":"9e63161c0edb420940c274f1ad8892896e11449d","tarball":"https://registry.npmjs.org/@d365portal/d365fo-context-mcp/-/d365fo-context-mcp-1.0.0.tgz","fileCount":39,"integrity":"sha512-Chs4B/qzMU/bmMWaafxvJd53+zLAS1SiuxTJ9RlWa0m7dAIAMKl6vDKuX05nI9+pU8jSE2+ybO2UePxAGuaHcQ==","signatures":[{"sig":"MEYCIQDr1hU7qD8eYUuYiYz2VMit7wZJ3e85p82GkCBMK5F8RwIhAOq+iCkPpxo7jc2cHpT0A0SEHcBooFcR+KTujG4/zvPG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":227789},"main":"dist/index.js","type":"module","_from":"file:d365portal-d365fo-context-mcp-1.0.0.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx --watch src/index.ts","lint":"eslint src --ext .ts","build":"pnpm clean && tsc --build --force","clean":"rimraf dist","start":"tsx src/index.ts","lint:fix":"eslint src --ext .ts --fix","typecheck":"tsc --noEmit","start:with-env":"OPENAI_API_KEY=${OPENAI_API_KEY:your-api-key-here} MILVUS_ADDRESS=${MILVUS_ADDRESS:localhost:19530} tsx src/index.ts"},"_npmUser":{"name":"staroffire28","email":"eddytejera28@gmail.com"},"_resolved":"C:\\Users\\ejteg\\AppData\\Local\\Temp\\de95622bf5bd92eaf571b9b2335a7fca\\d365portal-d365fo-context-mcp-1.0.0.tgz","_integrity":"sha512-Chs4B/qzMU/bmMWaafxvJd53+zLAS1SiuxTJ9RlWa0m7dAIAMKl6vDKuX05nI9+pU8jSE2+ybO2UePxAGuaHcQ==","repository":{"url":"git+https://github.com/staroffire28/eddy-context.git","type":"git","directory":"packages/mcp"},"_npmVersion":"11.7.0","description":"MCP Server for D365FO Context - Dynamics 365 Finance & Operations semantic search with 60+ specialized tools","directories":{},"_nodeVersion":"24.11.1","dependencies":{"zod":"^3.25.55","@modelcontextprotocol/sdk":"^1.12.1","@d365portal/d365fo-context-core":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/d365fo-context-mcp_1.0.0_1767032446032_0.1055084787999152","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@d365portal/d365fo-context-mcp","version":"1.0.1","license":"MIT","_id":"@d365portal/d365fo-context-mcp@1.0.1","maintainers":[{"name":"staroffire28","email":"eddytejera28@gmail.com"}],"homepage":"https://github.com/staroffire28/eddy-context#readme","bugs":{"url":"https://github.com/staroffire28/eddy-context/issues"},"bin":{"d365fo-context-mcp":"dist/index.js"},"dist":{"shasum":"9d26dc60bd8fbc1274200062b29af86986b26d73","tarball":"https://registry.npmjs.org/@d365portal/d365fo-context-mcp/-/d365fo-context-mcp-1.0.1.tgz","fileCount":39,"integrity":"sha512-1L7TpRWFopw2mtHASxfKRJWF1No70mYhwp01YfxMb4myW2YRqXp0RHl0c0IVm2T0U5AC7rnB2d6+/t2f40KNLQ==","signatures":[{"sig":"MEYCIQCd3G+W2j/oS0Kd67PixiDJT36Nq3qMIty11csNK2kLpgIhAOJki1ZUO4TVsRr9LCXTgiWz/VOR5/jp3tsAJHq2kGlv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":228746},"main":"dist/index.js","type":"module","_from":"file:d365portal-d365fo-context-mcp-1.0.1.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx --watch src/index.ts","lint":"eslint src --ext .ts","build":"pnpm clean && tsc --build --force","clean":"rimraf dist","start":"tsx src/index.ts","lint:fix":"eslint src --ext .ts --fix","typecheck":"tsc --noEmit","start:with-env":"OPENAI_API_KEY=${OPENAI_API_KEY:your-api-key-here} MILVUS_ADDRESS=${MILVUS_ADDRESS:localhost:19530} tsx src/index.ts"},"_npmUser":{"name":"staroffire28","email":"eddytejera28@gmail.com"},"_resolved":"C:\\Users\\ejteg\\AppData\\Local\\Temp\\f3f3eb4892b2c1bb8440e6b9fc5c2f33\\d365portal-d365fo-context-mcp-1.0.1.tgz","_integrity":"sha512-1L7TpRWFopw2mtHASxfKRJWF1No70mYhwp01YfxMb4myW2YRqXp0RHl0c0IVm2T0U5AC7rnB2d6+/t2f40KNLQ==","repository":{"url":"git+https://github.com/staroffire28/eddy-context.git","type":"git","directory":"packages/mcp"},"_npmVersion":"11.7.0","description":"MCP Server for D365FO Context - Dynamics 365 Finance & Operations semantic search with 60+ specialized tools","directories":{},"_nodeVersion":"24.11.1","dependencies":{"zod":"^3.25.55","@modelcontextprotocol/sdk":"^1.12.1","@d365portal/d365fo-context-core":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/d365fo-context-mcp_1.0.1_1767042270498_0.3351913590808202","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@d365portal/d365fo-context-mcp","version":"1.0.2","license":"MIT","_id":"@d365portal/d365fo-context-mcp@1.0.2","maintainers":[{"name":"staroffire28","email":"eddytejera28@gmail.com"}],"homepage":"https://github.com/staroffire28/eddy-context#readme","bugs":{"url":"https://github.com/staroffire28/eddy-context/issues"},"bin":{"d365fo-context-mcp":"dist/index.js"},"dist":{"shasum":"28e70f9897e678249a86aae2be69c3db6492a163","tarball":"https://registry.npmjs.org/@d365portal/d365fo-context-mcp/-/d365fo-context-mcp-1.0.2.tgz","fileCount":39,"integrity":"sha512-EaEXWv6vx5iZXBiZx1UnxfFuYJKsnvBPSSHsjzwplm0p2BMG0am+DDn7qXU00Pmktm+kw0nzWHb8rTDlsDxWaA==","signatures":[{"sig":"MEYCIQDKuzDirq1444C19etYT/7CmsI3ddvpduppPUV+yuIiHgIhAIexGycbrbDApvLfusJUuxaUWOmVIqPNQXTDBLp7jDwq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":228841},"main":"dist/index.js","type":"module","_from":"file:d365portal-d365fo-context-mcp-1.0.2.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx --watch src/index.ts","lint":"eslint src --ext .ts","build":"pnpm clean && tsc --build --force","clean":"rimraf dist","start":"tsx src/index.ts","lint:fix":"eslint src --ext .ts --fix","typecheck":"tsc --noEmit","start:with-env":"OPENAI_API_KEY=${OPENAI_API_KEY:your-api-key-here} MILVUS_ADDRESS=${MILVUS_ADDRESS:localhost:19530} tsx src/index.ts"},"_npmUser":{"name":"staroffire28","email":"eddytejera28@gmail.com"},"_resolved":"C:\\Users\\ejteg\\AppData\\Local\\Temp\\5d3e565767644e358e09ddb840d64339\\d365portal-d365fo-context-mcp-1.0.2.tgz","_integrity":"sha512-EaEXWv6vx5iZXBiZx1UnxfFuYJKsnvBPSSHsjzwplm0p2BMG0am+DDn7qXU00Pmktm+kw0nzWHb8rTDlsDxWaA==","repository":{"url":"git+https://github.com/staroffire28/eddy-context.git","type":"git","directory":"packages/mcp"},"_npmVersion":"11.7.0","description":"MCP Server for D365FO Context - Dynamics 365 Finance & Operations semantic search with 60+ specialized tools","directories":{},"_nodeVersion":"24.11.1","dependencies":{"zod":"^3.25.55","@modelcontextprotocol/sdk":"^1.12.1","@d365portal/d365fo-context-core":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/d365fo-context-mcp_1.0.2_1767047110721_0.4166047294566322","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@d365portal/d365fo-context-mcp","version":"1.0.3","license":"MIT","_id":"@d365portal/d365fo-context-mcp@1.0.3","maintainers":[{"name":"staroffire28","email":"eddytejera28@gmail.com"}],"homepage":"https://github.com/staroffire28/eddy-context#readme","bugs":{"url":"https://github.com/staroffire28/eddy-context/issues"},"bin":{"d365fo-context-mcp":"dist/index.js"},"dist":{"shasum":"e39bf7f6cd34b07cc7f381733cdc6340d20502b0","tarball":"https://registry.npmjs.org/@d365portal/d365fo-context-mcp/-/d365fo-context-mcp-1.0.3.tgz","fileCount":38,"integrity":"sha512-ooDmgRl4x/QUhxAxkS5vpIEhr02GsddMhmumJsgwFNA2fq+MWa+N/nDXFdGGmJgNJ7ut3rWVUpkjrJZdyk3bQw==","signatures":[{"sig":"MEUCIGjbZHVyeoL6mgV1lvkDMssNMfJvducY+NIfAZpp/geVAiEAnieUIR7hwxMIG0rHKwtViW7QIODBIXunVngfuXBID+Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":227453},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"dcac3bfd3f10331d58c67572049501843db58580","scripts":{"dev":"tsx --watch src/index.ts","lint":"eslint src --ext .ts","build":"pnpm clean && tsc --build --force","clean":"rimraf dist","start":"tsx src/index.ts","lint:fix":"eslint src --ext .ts --fix","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build","start:with-env":"OPENAI_API_KEY=${OPENAI_API_KEY:your-api-key-here} MILVUS_ADDRESS=${MILVUS_ADDRESS:localhost:19530} tsx src/index.ts"},"_npmUser":{"name":"staroffire28","email":"eddytejera28@gmail.com"},"repository":{"url":"git+https://github.com/staroffire28/eddy-context.git","type":"git","directory":"packages/mcp"},"_npmVersion":"11.7.0","description":"MCP Server for D365FO Context - Dynamics 365 Finance & Operations semantic search with 60+ specialized tools","directories":{},"_nodeVersion":"24.11.1","dependencies":{"zod":"^3.25.55","@modelcontextprotocol/sdk":"^1.12.1","@d365portal/d365fo-context-core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/d365fo-context-mcp_1.0.3_1769718458587_0.43761093206307033","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@d365portal/d365fo-context-mcp","version":"1.0.4","description":"MCP Server for D365FO Context - Dynamics 365 Finance & Operations semantic search with 60+ specialized tools","type":"module","main":"dist/index.js","types":"dist/index.d.ts","bin":{"d365fo-context-mcp":"dist/index.js"},"scripts":{"build":"pnpm clean && tsc --build --force","dev":"tsx --watch src/index.ts","clean":"rimraf dist","lint":"eslint src --ext .ts","lint:fix":"eslint src --ext .ts --fix","typecheck":"tsc --noEmit","start":"tsx src/index.ts","start:with-env":"OPENAI_API_KEY=${OPENAI_API_KEY:your-api-key-here} MILVUS_ADDRESS=${MILVUS_ADDRESS:localhost:19530} tsx src/index.ts","prepublishOnly":"pnpm build"},"dependencies":{"@d365portal/d365fo-context-core":"^1.0.0","@modelcontextprotocol/sdk":"^1.12.1","zod":"^3.25.55"},"devDependencies":{"@types/node":"^20.0.0","tsx":"^4.19.4","typescript":"^5.0.0"},"repository":{"type":"git","url":"git+https://github.com/staroffire28/eddy-context.git","directory":"packages/mcp"},"license":"MIT","publishConfig":{"access":"public"},"gitHead":"dcac3bfd3f10331d58c67572049501843db58580","_id":"@d365portal/d365fo-context-mcp@1.0.4","bugs":{"url":"https://github.com/staroffire28/eddy-context/issues"},"homepage":"https://github.com/staroffire28/eddy-context#readme","_nodeVersion":"24.11.1","_npmVersion":"11.7.0","dist":{"integrity":"sha512-+ND/it0ZppS19Qswt6Q0VR5tlJahMWjC4IkAttvhFu5pmaJJO2UAiF0XxmvC09r/S+0uOJCDM9Elvk8j+tYoUw==","shasum":"778bfe8a4ec98b0be6fdaaed134043f7a3d8243a","tarball":"https://registry.npmjs.org/@d365portal/d365fo-context-mcp/-/d365fo-context-mcp-1.0.4.tgz","fileCount":38,"unpackedSize":227448,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCt7wTY6Hs7vrAYHs8jTrhOga5cNa02/ZSOqWRFXlqnVAIgGS13KhI3WNNegZdoxsPB7e56f3/KMKGIHYWnh0bEWYs="}]},"_npmUser":{"name":"staroffire28","email":"eddytejera28@gmail.com"},"directories":{},"maintainers":[{"name":"staroffire28","email":"eddytejera28@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/d365fo-context-mcp_1.0.4_1769719391652_0.32861914618527677"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-29T18:20:45.867Z","modified":"2026-01-29T20:43:11.923Z","1.0.0":"2025-12-29T18:20:46.178Z","1.0.1":"2025-12-29T21:04:30.647Z","1.0.2":"2025-12-29T22:25:10.873Z","1.0.3":"2026-01-29T20:27:38.752Z","1.0.4":"2026-01-29T20:43:11.797Z"},"bugs":{"url":"https://github.com/staroffire28/eddy-context/issues"},"license":"MIT","homepage":"https://github.com/staroffire28/eddy-context#readme","repository":{"type":"git","url":"git+https://github.com/staroffire28/eddy-context.git","directory":"packages/mcp"},"description":"MCP Server for D365FO Context - Dynamics 365 Finance & Operations semantic search with 60+ specialized tools","maintainers":[{"name":"staroffire28","email":"eddytejera28@gmail.com"}],"readme":"# @zilliz/claude-context-mcp\r\n\r\n![](../../assets/claude-context.png)\r\nModel Context Protocol (MCP) integration for Claude Context - A powerful MCP server that enables AI assistants and agents to index and search codebases using semantic search.\r\n\r\n[![npm version](https://img.shields.io/npm/v/@zilliz/claude-context-mcp.svg)](https://www.npmjs.com/package/@zilliz/claude-context-mcp)\r\n[![npm downloads](https://img.shields.io/npm/dm/@zilliz/claude-context-mcp.svg)](https://www.npmjs.com/package/@zilliz/claude-context-mcp)\r\n\r\n> 📖 **New to Claude Context?** Check out the [main project README](../../README.md) for an overview and setup instructions.\r\n\r\n## 🚀 Use Claude Context as MCP in Claude Code and others\r\n\r\n![img](https://lh7-rt.googleusercontent.com/docsz/AD_4nXf2uIf2c5zowp-iOMOqsefHbY_EwNGiutkxtNXcZVJ8RI6SN9DsCcsc3amXIhOZx9VcKFJQLSAqM-2pjU9zoGs1r8GCTUL3JIsLpLUGAm1VQd5F2o5vpEajx2qrc77iXhBu1zWj?key=qYdFquJrLcfXCUndY-YRBQ)\r\n\r\nModel Context Protocol (MCP) allows you to integrate Claude Context with your favorite AI coding assistants, e.g. Claude Code.\r\n\r\n## Quick Start\r\n\r\n### Prerequisites\r\n\r\nBefore using the MCP server, make sure you have:\r\n\r\n- API key for your chosen embedding provider (OpenAI, VoyageAI, Gemini, or Ollama setup)\r\n- Milvus vector database (local or cloud)\r\n\r\n> 💡 **Setup Help:** See the [main project setup guide](../../README.md#-quick-start) for detailed installation instructions.\r\n\r\n### Prepare Environment Variables\r\n\r\n#### Embedding Provider Configuration\r\n\r\nClaude Context MCP supports multiple embedding providers. Choose the one that best fits your needs:\r\n\r\n> 📋 **Quick Reference**: For a complete list of environment variables and their descriptions, see the [Environment Variables Guide](../../docs/getting-started/environment-variables.md).\r\n\r\n```bash\r\n# Supported providers: OpenAI, VoyageAI, Gemini, Ollama\r\nEMBEDDING_PROVIDER=OpenAI\r\n```\r\n\r\n<details>\r\n<summary><strong>1. OpenAI Configuration (Default)</strong></summary>\r\n\r\nOpenAI provides high-quality embeddings with excellent performance for code understanding.\r\n\r\n```bash\r\n# Required: Your OpenAI API key\r\nOPENAI_API_KEY=sk-your-openai-api-key\r\n\r\n# Optional: Specify embedding model (default: text-embedding-3-small)\r\nEMBEDDING_MODEL=text-embedding-3-small\r\n\r\n# Optional: Custom API base URL (for Azure OpenAI or other compatible services)\r\nOPENAI_BASE_URL=https://api.openai.com/v1\r\n```\r\n\r\n**Available Models:**\r\nSee `getSupportedModels` in [`openai-embedding.ts`](https://github.com/zilliztech/claude-context/blob/master/packages/core/src/embedding/openai-embedding.ts) for the full list of supported models.\r\n\r\n**Getting API Key:**\r\n\r\n1. Visit [OpenAI Platform](https://platform.openai.com/api-keys)\r\n2. Sign in or create an account\r\n3. Generate a new API key\r\n4. Set up billing if needed\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>2. VoyageAI Configuration</strong></summary>\r\n\r\nVoyageAI offers specialized code embeddings optimized for programming languages.\r\n\r\n```bash\r\n# Required: Your VoyageAI API key\r\nVOYAGEAI_API_KEY=pa-your-voyageai-api-key\r\n\r\n# Optional: Specify embedding model (default: voyage-code-3)\r\nEMBEDDING_MODEL=voyage-code-3\r\n```\r\n\r\n**Available Models:**\r\nSee `getSupportedModels` in [`voyageai-embedding.ts`](https://github.com/zilliztech/claude-context/blob/master/packages/core/src/embedding/voyageai-embedding.ts) for the full list of supported models.\r\n\r\n**Getting API Key:**\r\n\r\n1. Visit [VoyageAI Console](https://dash.voyageai.com/)\r\n2. Sign up for an account\r\n3. Navigate to API Keys section\r\n4. Create a new API key\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>3. Gemini Configuration</strong></summary>\r\n\r\nGoogle's Gemini provides competitive embeddings with good multilingual support.\r\n\r\n```bash\r\n# Required: Your Gemini API key\r\nGEMINI_API_KEY=your-gemini-api-key\r\n\r\n# Optional: Specify embedding model (default: gemini-embedding-001)\r\nEMBEDDING_MODEL=gemini-embedding-001\r\n\r\n# Optional: Custom API base URL (for custom endpoints)\r\nGEMINI_BASE_URL=https://generativelanguage.googleapis.com/v1beta\r\n```\r\n\r\n**Available Models:**\r\nSee `getSupportedModels` in [`gemini-embedding.ts`](https://github.com/zilliztech/claude-context/blob/master/packages/core/src/embedding/gemini-embedding.ts) for the full list of supported models.\r\n\r\n**Getting API Key:**\r\n\r\n1. Visit [Google AI Studio](https://aistudio.google.com/)\r\n2. Sign in with your Google account\r\n3. Go to \"Get API key\" section\r\n4. Create a new API key\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>4. Ollama Configuration (Local/Self-hosted)</strong></summary>\r\n\r\nOllama allows you to run embeddings locally without sending data to external services.\r\n\r\n```bash\r\n# Required: Specify which Ollama model to use\r\nEMBEDDING_MODEL=nomic-embed-text\r\n\r\n# Optional: Specify Ollama host (default: http://127.0.0.1:11434)\r\nOLLAMA_HOST=http://127.0.0.1:11434\r\n```\r\n\r\n**Setup Instructions:**\r\n\r\n1. Install Ollama from [ollama.ai](https://ollama.ai/)\r\n2. Pull the embedding model:\r\n\r\n   ```bash\r\n   ollama pull nomic-embed-text\r\n   ```\r\n\r\n3. Ensure Ollama is running:\r\n\r\n   ```bash\r\n   ollama serve\r\n   ```\r\n\r\n</details>\r\n\r\n#### Get a free vector database on Zilliz Cloud\r\n\r\nClaude Context needs a vector database. You can [sign up](https://cloud.zilliz.com/signup?utm_source=github&utm_medium=referral&utm_campaign=2507-codecontext-readme) on Zilliz Cloud to get an API key.\r\n\r\n![](../../assets/signup_and_get_apikey.png)\r\n\r\nCopy your Personal Key to replace `your-zilliz-cloud-api-key` in the configuration examples.\r\n\r\n```bash\r\nMILVUS_TOKEN=your-zilliz-cloud-api-key\r\n```\r\n\r\n#### Embedding Batch Size\r\n\r\nYou can set the embedding batch size to optimize the performance of the MCP server, depending on your embedding model throughput. The default value is 100.\r\n\r\n```bash\r\nEMBEDDING_BATCH_SIZE=512\r\n```\r\n\r\n#### Custom File Processing (Optional)\r\n\r\nYou can configure custom file extensions and ignore patterns globally via environment variables:\r\n\r\n```bash\r\n# Additional file extensions to include beyond defaults\r\nCUSTOM_EXTENSIONS=.vue,.svelte,.astro,.twig\r\n\r\n# Additional ignore patterns to exclude files/directories\r\nCUSTOM_IGNORE_PATTERNS=temp/**,*.backup,private/**,uploads/**\r\n```\r\n\r\nThese settings work in combination with tool parameters - patterns from both sources will be merged together.\r\n\r\n## Usage with MCP Clients\r\n\r\n<details>\r\n<summary><strong>Claude Code</strong></summary>\r\n\r\nUse the command line interface to add the Claude Context MCP server:\r\n\r\n```bash\r\n# Add the Claude Context MCP server\r\nclaude mcp add claude-context -e OPENAI_API_KEY=your-openai-api-key -e MILVUS_TOKEN=your-zilliz-cloud-api-key -- npx @zilliz/claude-context-mcp@latest\r\n\r\n```\r\n\r\nSee the [Claude Code MCP documentation](https://docs.anthropic.com/en/docs/claude-code/mcp) for more details about MCP server management.\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>OpenAI Codex CLI</strong></summary>\r\n\r\nCodex CLI uses TOML configuration files:\r\n\r\n1. Create or edit the `~/.codex/config.toml` file.\r\n\r\n2. Add the following configuration:\r\n\r\n```toml\r\n# IMPORTANT: the top-level key is `mcp_servers` rather than `mcpServers`.\r\n[mcp_servers.claude-context]\r\ncommand = \"npx\"\r\nargs = [\"@zilliz/claude-context-mcp@latest\"]\r\nenv = { \"OPENAI_API_KEY\" = \"your-openai-api-key\", \"MILVUS_TOKEN\" = \"your-zilliz-cloud-api-key\" }\r\n# Optional: override the default 10s startup timeout\r\nstartup_timeout_ms = 20000\r\n```\r\n\r\n3. Save the file and restart Codex CLI to apply the changes.\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>Gemini CLI</strong></summary>\r\n\r\nGemini CLI requires manual configuration through a JSON file:\r\n\r\n1. Create or edit the `~/.gemini/settings.json` file.\r\n\r\n2. Add the following configuration:\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"claude-context\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"@zilliz/claude-context-mcp@latest\"],\r\n      \"env\": {\r\n        \"OPENAI_API_KEY\": \"your-openai-api-key\",\r\n        \"MILVUS_TOKEN\": \"your-zilliz-cloud-api-key\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n3. Save the file and restart Gemini CLI to apply the changes.\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>Qwen Code</strong></summary>\r\n\r\nCreate or edit the `~/.qwen/settings.json` file and add the following configuration:\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"claude-context\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"@zilliz/claude-context-mcp@latest\"],\r\n      \"env\": {\r\n        \"OPENAI_API_KEY\": \"your-openai-api-key\",\r\n        \"MILVUS_TOKEN\": \"your-zilliz-cloud-api-key\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>Cursor</strong></summary>\r\n\r\nGo to: `Settings` -> `Cursor Settings` -> `MCP` -> `Add new global MCP server`\r\n\r\nPasting the following configuration into your Cursor `~/.cursor/mcp.json` file is the recommended approach. You may also install in a specific project by creating `.cursor/mcp.json` in your project folder. See [Cursor MCP docs](https://docs.cursor.com/context/model-context-protocol) for more info.\r\n\r\n**OpenAI Configuration (Default):**\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"claude-context\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"-y\", \"@zilliz/claude-context-mcp@latest\"],\r\n      \"env\": {\r\n        \"EMBEDDING_PROVIDER\": \"OpenAI\",\r\n        \"OPENAI_API_KEY\": \"your-openai-api-key\",\r\n        \"MILVUS_TOKEN\": \"your-zilliz-cloud-api-key\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n**VoyageAI Configuration:**\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"claude-context\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"-y\", \"@zilliz/claude-context-mcp@latest\"],\r\n      \"env\": {\r\n        \"EMBEDDING_PROVIDER\": \"VoyageAI\",\r\n        \"VOYAGEAI_API_KEY\": \"your-voyageai-api-key\",\r\n        \"EMBEDDING_MODEL\": \"voyage-code-3\",\r\n        \"MILVUS_TOKEN\": \"your-zilliz-cloud-api-key\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n**Gemini Configuration:**\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"claude-context\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"-y\", \"@zilliz/claude-context-mcp@latest\"],\r\n      \"env\": {\r\n        \"EMBEDDING_PROVIDER\": \"Gemini\",\r\n        \"GEMINI_API_KEY\": \"your-gemini-api-key\",\r\n        \"MILVUS_TOKEN\": \"your-zilliz-cloud-api-key\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n**Ollama Configuration:**\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"claude-context\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"-y\", \"@zilliz/claude-context-mcp@latest\"],\r\n      \"env\": {\r\n        \"EMBEDDING_PROVIDER\": \"Ollama\",\r\n        \"EMBEDDING_MODEL\": \"nomic-embed-text\",\r\n        \"OLLAMA_HOST\": \"http://127.0.0.1:11434\",\r\n        \"MILVUS_TOKEN\": \"your-zilliz-cloud-api-key\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>Void</strong></summary>\r\n\r\nGo to: `Settings` -> `MCP` -> `Add MCP Server`\r\n\r\nAdd the following configuration to your Void MCP settings:\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"code-context\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"-y\", \"@zilliz/claude-context-mcp@latest\"],\r\n      \"env\": {\r\n        \"OPENAI_API_KEY\": \"your-openai-api-key\",\r\n        \"MILVUS_ADDRESS\": \"your-zilliz-cloud-public-endpoint\",\r\n        \"MILVUS_TOKEN\": \"your-zilliz-cloud-api-key\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>Claude Desktop</strong></summary>\r\n\r\nAdd to your Claude Desktop configuration:\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"claude-context\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"@zilliz/claude-context-mcp@latest\"],\r\n      \"env\": {\r\n        \"OPENAI_API_KEY\": \"your-openai-api-key\",\r\n        \"MILVUS_TOKEN\": \"your-zilliz-cloud-api-key\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>Windsurf</strong></summary>\r\n\r\nWindsurf supports MCP configuration through a JSON file. Add the following configuration to your Windsurf MCP settings:\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"claude-context\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"-y\", \"@zilliz/claude-context-mcp@latest\"],\r\n      \"env\": {\r\n        \"OPENAI_API_KEY\": \"your-openai-api-key\",\r\n        \"MILVUS_TOKEN\": \"your-zilliz-cloud-api-key\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>VS Code</strong></summary>\r\n\r\nThe Claude Context MCP server can be used with VS Code through MCP-compatible extensions. Add the following configuration to your VS Code MCP settings:\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"claude-context\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"-y\", \"@zilliz/claude-context-mcp@latest\"],\r\n      \"env\": {\r\n        \"OPENAI_API_KEY\": \"your-openai-api-key\",\r\n        \"MILVUS_TOKEN\": \"your-zilliz-cloud-api-key\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>Cherry Studio</strong></summary>\r\n\r\nCherry Studio allows for visual MCP server configuration through its settings interface. While it doesn't directly support manual JSON configuration, you can add a new server via the GUI:\r\n\r\n1. Navigate to **Settings → MCP Servers → Add Server**.\r\n2. Fill in the server details:\r\n   - **Name**: `claude-context`\r\n   - **Type**: `STDIO`\r\n   - **Command**: `npx`\r\n   - **Arguments**: `[\"@zilliz/claude-context-mcp@latest\"]`\r\n   - **Environment Variables**:\r\n     - `OPENAI_API_KEY`: `your-openai-api-key`\r\n     - `MILVUS_TOKEN`: `your-zilliz-cloud-api-key`\r\n3. Save the configuration to activate the server.\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>Cline</strong></summary>\r\n\r\nCline uses a JSON configuration file to manage MCP servers. To integrate the provided MCP server configuration:\r\n\r\n1. Open Cline and click on the **MCP Servers** icon in the top navigation bar.\r\n\r\n2. Select the **Installed** tab, then click **Advanced MCP Settings**.\r\n\r\n3. In the `cline_mcp_settings.json` file, add the following configuration:\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"claude-context\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"@zilliz/claude-context-mcp@latest\"],\r\n      \"env\": {\r\n        \"OPENAI_API_KEY\": \"your-openai-api-key\",\r\n        \"MILVUS_TOKEN\": \"your-zilliz-cloud-api-key\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n4. Save the file.\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>Augment</strong></summary>\r\n\r\nTo configure Claude Context MCP in Augment Code, you can use either the graphical interface or manual configuration.\r\n\r\n#### **A. Using the Augment Code UI**\r\n\r\n1. Click the hamburger menu.\r\n\r\n2. Select **Settings**.\r\n\r\n3. Navigate to the **Tools** section.\r\n\r\n4. Click the **+ Add MCP** button.\r\n\r\n5. Enter the following command:\r\n\r\n   ```\r\n   npx @zilliz/claude-context-mcp@latest\r\n   ```\r\n\r\n6. Name the MCP: **Claude Context**.\r\n\r\n7. Click the **Add** button.\r\n\r\n------\r\n\r\n#### **B. Manual Configuration**\r\n\r\n1. Press Cmd/Ctrl Shift P or go to the hamburger menu in the Augment panel\r\n2. Select Edit Settings\r\n3. Under Advanced, click Edit in settings.json\r\n4. Add the server configuration to the `mcpServers` array in the `augment.advanced` object\r\n\r\n```json\r\n\"augment.advanced\": { \r\n  \"mcpServers\": [ \r\n    { \r\n      \"name\": \"claude-context\", \r\n      \"command\": \"npx\", \r\n      \"args\": [\"-y\", \"@zilliz/claude-context-mcp@latest\"] \r\n    } \r\n  ] \r\n}\r\n```\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>Roo Code</strong></summary>\r\n\r\nRoo Code utilizes a JSON configuration file for MCP servers:\r\n\r\n1. Open Roo Code and navigate to **Settings → MCP Servers → Edit Global Config**.\r\n\r\n2. In the `mcp_settings.json` file, add the following configuration:\r\n\r\n```json\r\n{\r\n  \"mcpServers\": {\r\n    \"claude-context\": {\r\n      \"command\": \"npx\",\r\n      \"args\": [\"@zilliz/claude-context-mcp@latest\"],\r\n      \"env\": {\r\n        \"OPENAI_API_KEY\": \"your-openai-api-key\",\r\n        \"MILVUS_TOKEN\": \"your-zilliz-cloud-api-key\"\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n3. Save the file to activate the server.\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>Zencoder</strong></summary>\r\n\r\nZencoder offers support for MCP tools and servers in both its JetBrains and VS Code plugin versions.\r\n\r\n1. Go to the Zencoder menu (...)\r\n2. From the dropdown menu, select `Tools`\r\n3. Click on the `Add Custom MCP`\r\n4. Add the name (i.e. `Claude Context` and server configuration from below, and make sure to hit the `Install` button\r\n\r\n```json\r\n{\r\n    \"command\": \"npx\",\r\n    \"args\": [\"@zilliz/claude-context-mcp@latest\"],\r\n    \"env\": {\r\n      \"OPENAI_API_KEY\": \"your-openai-api-key\",\r\n      \"MILVUS_ADDRESS\": \"your-zilliz-cloud-public-endpoint\",\r\n      \"MILVUS_TOKEN\": \"your-zilliz-cloud-api-key\"\r\n    }\r\n}\r\n\r\n```\r\n\r\n5. Save the server by hitting the `Install` button.\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>LangChain/LangGraph</strong></summary>\r\n\r\nFor LangChain/LangGraph integration examples, see [this example](https://github.com/zilliztech/claude-context/blob/643796a0d30e706a2a0dff3d55621c9b5d831807/evaluation/retrieval/custom.py#L88).\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>Other MCP Clients</strong></summary>\r\n\r\nThe server uses stdio transport and follows the standard MCP protocol. It can be integrated with any MCP-compatible client by running:\r\n\r\n```bash\r\nnpx @zilliz/claude-context-mcp@latest\r\n```\r\n\r\n</details>\r\n\r\n## Features\r\n\r\n- 🔌 **MCP Protocol Compliance**: Full compatibility with MCP-enabled AI assistants and agents\r\n- 🔍 **Hybrid Code Search**: Natural language queries using advanced hybrid search (BM25 + dense vector) to find relevant code snippets\r\n- 📁 **Codebase Indexing**: Index entire codebases for fast hybrid search across millions of lines of code\r\n- 🔄 **Incremental Indexing**: Efficiently re-index only changed files using Merkle trees for auto-sync\r\n- 🧩 **Intelligent Code Chunking**: AST-based code analysis for syntax-aware chunking with automatic fallback\r\n- 🗄️ **Scalable**: Integrates with Zilliz Cloud for scalable vector search, no matter how large your codebase is\r\n- 🛠️ **Customizable**: Configure file extensions, ignore patterns, and embedding models\r\n- ⚡ **Real-time**: Interactive indexing and searching with progress feedback\r\n\r\n## Available Tools\r\n\r\n### 1. `index_codebase`\r\n\r\nIndex a codebase directory for hybrid search (BM25 + dense vector).\r\n\r\n**Parameters:**\r\n\r\n- `path` (required): Absolute path to the codebase directory to index\r\n- `force` (optional): Force re-indexing even if already indexed (default: false)\r\n- `splitter` (optional): Code splitter to use - 'ast' for syntax-aware splitting with automatic fallback, 'langchain' for character-based splitting (default: \"ast\")\r\n- `customExtensions` (optional): Additional file extensions to include beyond defaults (e.g., ['.vue', '.svelte', '.astro']). Extensions should include the dot prefix or will be automatically added (default: [])\r\n- `ignorePatterns` (optional): Additional ignore patterns to exclude specific files/directories beyond defaults (e.g., ['static/**', '*.tmp', 'private/**']) (default: [])\r\n\r\n### 2. `search_code`\r\n\r\nSearch the indexed codebase using natural language queries with hybrid search (BM25 + dense vector).\r\n\r\n**Parameters:**\r\n\r\n- `path` (required): Absolute path to the codebase directory to search in\r\n- `query` (required): Natural language query to search for in the codebase\r\n- `limit` (optional): Maximum number of results to return (default: 10, max: 50)\r\n- `extensionFilter` (optional): List of file extensions to filter results (e.g., ['.ts', '.py']) (default: [])\r\n\r\n### 3. `clear_index`\r\n\r\nClear the search index for a specific codebase.\r\n\r\n**Parameters:**\r\n\r\n- `path` (required): Absolute path to the codebase directory to clear index for\r\n\r\n### 4. `get_indexing_status`\r\n\r\nGet the current indexing status of a codebase. Shows progress percentage for actively indexing codebases and completion status for indexed codebases.\r\n\r\n**Parameters:**\r\n\r\n- `path` (required): Absolute path to the codebase directory to check status for\r\n\r\n## Contributing\r\n\r\nThis package is part of the Claude Context monorepo. Please see:\r\n\r\n- [Main Contributing Guide](../../CONTRIBUTING.md) - General contribution guidelines  \r\n- [MCP Package Contributing](CONTRIBUTING.md) - Specific development guide for this package\r\n\r\n## Related Projects\r\n\r\n- **[@zilliz/claude-context-core](../core)** - Core indexing engine used by this MCP server\r\n- **[VSCode Extension](../vscode-extension)** - Alternative VSCode integration\r\n- [Model Context Protocol](https://modelcontextprotocol.io/) - Official MCP documentation\r\n\r\n## License\r\n\r\nMIT - See [LICENSE](../../LICENSE) for details\r\n","readmeFilename":"README.md"}