{"_id":"@abhishek-0118/jarvis-mcp","_rev":"4-84efc10d8a86c191fdeba378c15d0670","name":"@abhishek-0118/jarvis-mcp","dist-tags":{"latest":"0.2.0"},"versions":{"0.1.1":{"name":"@abhishek-0118/jarvis-mcp","version":"0.1.1","keywords":["mcp","jarvis","cursor","code-intelligence","rag","codebase-search"],"author":{"name":"Orange Health","email":"abhishek.gupta@orangehealth.in"},"license":"MIT","_id":"@abhishek-0118/jarvis-mcp@0.1.1","maintainers":[{"name":"abhishek-0118","email":"abhishek.gupta@orangehealth.in"}],"homepage":"https://github.com/Orange-Health/jarvis-mcp#readme","bugs":{"url":"https://github.com/Orange-Health/jarvis-mcp/issues"},"bin":{"jarvis-mcp":"dist/index.js"},"dist":{"shasum":"8145f7cfab529b817a445014cc9efdb4170ae8a0","tarball":"https://registry.npmjs.org/@abhishek-0118/jarvis-mcp/-/jarvis-mcp-0.1.1.tgz","fileCount":20,"integrity":"sha512-AWTMxKBG8K6Ie94ALQmCznLz83FutrkL0i5Vkw1Sd5MB2iv42PK5jyfy1tqBL0TmIOdusppBxYYFykcmp4SGvA==","signatures":[{"sig":"MEUCIGpOZdyuzQGtKANm2ovI/zSsylzdDdTcTkKGqgm1BFTbAiEAyzbNmRlnKaJXGOQr5YWXcbuOir9RBVCEQd5C24ump3c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":34724},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"f7749ad7acda5dccaca24ecb591b47ba22ca1844","scripts":{"dev":"tsc -w","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","start:sse":"node dist/sse-server.js","prepublishOnly":"npm run clean && npm run build"},"_npmUser":{"name":"abhishek-0118","email":"abhishek.gupta@orangehealth.in"},"repository":{"url":"git+https://github.com/Orange-Health/jarvis-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Jarvis MCP server — connect Cursor (or any MCP client) to the Jarvis code-intelligence engine","directories":{},"_nodeVersion":"25.3.0","dependencies":{"zod":"^4.4.3","chokidar":"^4.0.3","@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jarvis-mcp_0.1.1_1779462759826_0.009969891996566282","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@abhishek-0118/jarvis-mcp","version":"0.2.0","description":"Jarvis MCP server — connect Cursor (or any MCP client) to the Jarvis code-intelligence engine","type":"module","bin":{"jarvis-mcp":"dist/index.js"},"main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"build":"tsc","dev":"tsc -w","start":"node dist/index.js","start:sse":"node dist/sse-server.js","clean":"rm -rf dist","prepublishOnly":"npm run clean && npm run build"},"keywords":["mcp","jarvis","cursor","code-intelligence","rag","codebase-search"],"author":{"name":"Orange Health","email":"abhishek.gupta@orangehealth.in"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/Orange-Health/jarvis-mcp.git"},"homepage":"https://github.com/Orange-Health/jarvis-mcp#readme","bugs":{"url":"https://github.com/Orange-Health/jarvis-mcp/issues"},"dependencies":{"@modelcontextprotocol/sdk":"^1.12.1","chokidar":"^4.0.3","zod":"^4.4.3"},"devDependencies":{"@types/node":"^22.0.0","typescript":"^5.7.0"},"engines":{"node":">=18"},"gitHead":"e8c88a53a7449e088e9dffb1aeb9a4762b37de64","_id":"@abhishek-0118/jarvis-mcp@0.2.0","_nodeVersion":"25.3.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-nkXRinroUw7KUxDRl+pe8xef2MEx920Wh6rVjNcksYBX9RJSEWs/sqrYFouUF15A9KAfvXtq7CogvvghO1HnEg==","shasum":"21e4fa0d4742a5ae1a3ef7c750739a1f4dba853c","tarball":"https://registry.npmjs.org/@abhishek-0118/jarvis-mcp/-/jarvis-mcp-0.2.0.tgz","fileCount":23,"unpackedSize":39736,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHZkJikcA/U/QHtHdLt8cp4s/EA9iZL1NohUPBEA/DNNAiACrTrAsHxo8jV8wlKzHhLGa+xnHMICf7p/gOWqvwurnw=="}]},"_npmUser":{"name":"abhishek-0118","email":"abhishek.gupta@orangehealth.in"},"directories":{},"maintainers":[{"name":"abhishek-0118","email":"abhishek.gupta@orangehealth.in"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/jarvis-mcp_0.2.0_1779464589865_0.6415494986379908"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-22T15:08:01.669Z","modified":"2026-05-22T15:43:10.206Z","0.1.0":"2026-05-22T15:08:01.954Z","0.1.1":"2026-05-22T15:12:39.951Z","0.2.0":"2026-05-22T15:43:10.090Z"},"bugs":{"url":"https://github.com/Orange-Health/jarvis-mcp/issues"},"author":{"name":"Orange Health","email":"abhishek.gupta@orangehealth.in"},"license":"MIT","homepage":"https://github.com/Orange-Health/jarvis-mcp#readme","keywords":["mcp","jarvis","cursor","code-intelligence","rag","codebase-search"],"repository":{"type":"git","url":"git+https://github.com/Orange-Health/jarvis-mcp.git"},"description":"Jarvis MCP server — connect Cursor (or any MCP client) to the Jarvis code-intelligence engine","maintainers":[{"name":"abhishek-0118","email":"abhishek.gupta@orangehealth.in"}],"readme":"# Jarvis MCP\n\nMCP (Model Context Protocol) server that connects [Cursor](https://cursor.com) to the **Jarvis** code-intelligence engine.\n\nJarvis uses a hybrid approach — BM25, AST symbol extraction, dependency graphs (NetworkX), and rerankers — to provide deep codebase context across your organisation's repositories.\n\n---\n\n## Quick Start (Docker) — recommended\n\n### 1. Get an API key\n\nGo to your Jarvis web UI → **Settings → API Keys** → create a key.\n\n### 2. Clone & configure\n\n```bash\ngit clone https://github.com/Orange-Health/jarvis-mcp.git\ncd jarvis-mcp\ncp .env.example .env\n```\n\nEdit `.env`:\n\n```env\nJARVIS_API_KEY=sk-jarvis-xxxxxxxxxxxxx\nJARVIS_URL=https://jarvis.orangehealth.dev\nPORT=3100\n```\n\n### 3. Run\n\n```bash\ndocker compose up -d\n```\n\nThat's it. The MCP server is now running at `http://localhost:3100`.\n\n### 4. Add to Cursor\n\nCreate or edit `.cursor/mcp.json` in your project (or `~/.cursor/mcp.json` for global):\n\n```json\n{\n  \"mcpServers\": {\n    \"jarvis\": {\n      \"url\": \"http://localhost:3100/sse\"\n    }\n  }\n}\n```\n\n### 5. Use it\n\nIn Cursor, just say:\n\n> \"use jarvis — how does authentication work in the cds repo?\"\n\n---\n\n## Alternative: npx (no Docker)\n\nIf you prefer running directly on your machine:\n\n```json\n{\n  \"mcpServers\": {\n    \"jarvis\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@anthropic/jarvis-mcp\"],\n      \"env\": {\n        \"JARVIS_API_KEY\": \"sk-jarvis-...\",\n        \"JARVIS_URL\": \"https://jarvis.orangehealth.dev\",\n        \"JARVIS_WORKSPACE\": \"${workspaceFolder}\"\n      }\n    }\n  }\n}\n```\n\nOr install globally:\n\n```bash\nnpm install -g @anthropic/jarvis-mcp\n```\n\nThen use `\"command\": \"jarvis-mcp\"` instead of npx.\n\n---\n\n## Tools\n\n| Tool | Description |\n|------|-------------|\n| `jarvis_ask` | Full RAG query — retrieval + LLM answer about the codebase |\n| `jarvis_search` | Retrieval only — fast, cheap code search without LLM |\n| `jarvis_list_repos` | List all indexed repositories |\n| `jarvis_invalidate` | Notify that files changed (clears cached context) |\n\n## Environment Variables\n\n| Variable | Required | Default | Description |\n|----------|----------|---------|-------------|\n| `JARVIS_API_KEY` | Yes | — | API key from Jarvis web UI |\n| `JARVIS_URL` | No | `http://localhost:8001` | Jarvis backend URL |\n| `PORT` | No | `3100` | SSE server port (Docker mode) |\n| `JARVIS_WORKSPACE` | No | `cwd()` | Workspace root for file watcher (stdio mode only) |\n\n## Architecture\n\n```\nCursor ──(MCP over SSE)──► jarvis-mcp container ──(HTTP)──► Jarvis backend\n                           localhost:3100                    jarvis.orangehealth.dev\n```\n\n- **Docker mode** — runs an HTTP server with SSE transport. Cursor connects via `\"url\"`.\n- **stdio mode** — `npx` / global install. Cursor connects via `\"command\"`. Includes a local file watcher for cache invalidation.\n\nBoth modes use a local disk cache (1-hour TTL) to avoid repeated calls.\n\n## Development\n\n```bash\ngit clone https://github.com/Orange-Health/jarvis-mcp.git\ncd jarvis-mcp\nnpm install\nnpm run build\nnpm start          # stdio mode\nnpm run start:sse  # SSE server mode\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}