{"_id":"@dav1lex/server-llm-bridge","_rev":"8-15978e4778aacae90df2c504c345c5b4","name":"@dav1lex/server-llm-bridge","dist-tags":{"latest":"1.0.10"},"versions":{"1.0.0":{"name":"@dav1lex/server-llm-bridge","version":"1.0.0","keywords":["mcp","llm","openrouter","gemini","ai"],"author":{"name":"dav1lex"},"license":"MIT","_id":"@dav1lex/server-llm-bridge@1.0.0","maintainers":[{"name":"dav1lex","email":"zedxurl@gmail.com"}],"bin":{"mcp-server-llm-bridge":"dist/index.js"},"dist":{"shasum":"e2458399cf76fc6d5731fab83d575ffee10df18b","tarball":"https://registry.npmjs.org/@dav1lex/server-llm-bridge/-/server-llm-bridge-1.0.0.tgz","fileCount":10,"integrity":"sha512-e+KgTaW2/AGgm6f0qQgd9lyo57hpHIgvcuDO0ArCP80tLkx0wXYYnGkgxzUg7BVMq2nlraHKcS1Jhk8MVDaL7g==","signatures":[{"sig":"MEYCIQCbACf5zaNOClzxL8H0G+ut5u3COPZKY2tVTL0Nk0S4vwIhAJnbhj+vFTCThtoIoW1/GMMs1wVABcGhXI9xNg0Umj5h","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39022},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"e29a239a4c8ff31297d464139355ce179ff50f77","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"dav1lex","email":"zedxurl@gmail.com"},"_npmVersion":"10.9.2","description":"MCP server for LLM-to-LLM communication via OpenRouter and Google Gemini","directories":{},"_nodeVersion":"22.16.0","dependencies":{"axios":"^1.6.0","dotenv":"^16.3.0","@modelcontextprotocol/sdk":"^0.4.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/server-llm-bridge_1.0.0_1757275609555_0.17220109688917873","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@dav1lex/server-llm-bridge","version":"1.0.4","keywords":["mcp","llm","openrouter","gemini","ai"],"author":{"name":"dav1lex"},"license":"MIT","_id":"@dav1lex/server-llm-bridge@1.0.4","maintainers":[{"name":"dav1lex","email":"zedxurl@gmail.com"}],"bin":{"mcp-server-llm-bridge":"dist/index.js"},"dist":{"shasum":"e6bc02d70835ef369c31a15cb40a3aaf0a161a1b","tarball":"https://registry.npmjs.org/@dav1lex/server-llm-bridge/-/server-llm-bridge-1.0.4.tgz","fileCount":10,"integrity":"sha512-R3RvnFp2DbJDkQH5ngUrKrPMun6AwGzLU8ykITMrNThtZ2F3MVnj8Y7q38+w3Z9OcKGLyN39ePnK+81RibQ8mg==","signatures":[{"sig":"MEYCIQDzx7ipF7Z/N/fPTZ9LUR6SNU/b0XYx5/EUaDP2CHQSqAIhAKGvv7Qyp0mdHJIsRcRxb6rPeYfQ8a2j88dwk76VdYvi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39049},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"b9abdd9900e202ac7874d0a13cf0973b44926ac3","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"dav1lex","email":"zedxurl@gmail.com"},"_npmVersion":"10.9.2","description":"MCP server for LLM-to-LLM communication via OpenRouter and Google Gemini","directories":{},"_nodeVersion":"22.16.0","dependencies":{"axios":"^1.6.0","dotenv":"^16.3.0","@modelcontextprotocol/sdk":"^0.4.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/server-llm-bridge_1.0.4_1757276000596_0.9497723141170351","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@dav1lex/server-llm-bridge","version":"1.0.5","keywords":["mcp","llm","openrouter","gemini","ai"],"author":{"name":"dav1lex"},"license":"MIT","_id":"@dav1lex/server-llm-bridge@1.0.5","maintainers":[{"name":"dav1lex","email":"zedxurl@gmail.com"}],"bin":{"mcp-server-llm-bridge":"dist/index.js"},"dist":{"shasum":"d79dedd5729a0826784ba83126abc1cdbe1b869c","tarball":"https://registry.npmjs.org/@dav1lex/server-llm-bridge/-/server-llm-bridge-1.0.5.tgz","fileCount":10,"integrity":"sha512-UMnz45YvFuci8GAD/A+OLKypdMQJ/Es3Se/7LzPxS/Y3nQ/lOiJDOCrMN/eKiUBJNSVafPYaWpOd51pXuDeg4w==","signatures":[{"sig":"MEUCIF5L0htpsbqCu0NpH3KDk7LKDSegcfkzI+pXCKjdegrTAiEA2ZDQYm7YWdSrkDObBxGfcRwfsOTthctHqchSDDUws18=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39156},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"0373b6f4465a49fe8ec81caf6f3f3e010e15182b","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"dav1lex","email":"zedxurl@gmail.com"},"_npmVersion":"10.9.2","description":"MCP server for LLM-to-LLM communication via OpenRouter and Google Gemini","directories":{},"_nodeVersion":"22.16.0","dependencies":{"axios":"^1.6.0","dotenv":"^16.3.0","@modelcontextprotocol/sdk":"^0.4.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/server-llm-bridge_1.0.5_1757276450680_0.26999558389588674","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@dav1lex/server-llm-bridge","version":"1.0.6","keywords":["mcp","llm","openrouter","gemini","ai"],"author":{"name":"dav1lex"},"license":"MIT","_id":"@dav1lex/server-llm-bridge@1.0.6","maintainers":[{"name":"dav1lex","email":"zedxurl@gmail.com"}],"bin":{"mcp-server-llm-bridge":"dist/index.js"},"dist":{"shasum":"e97000381b36855b50409ef00dd5094d14cb4d85","tarball":"https://registry.npmjs.org/@dav1lex/server-llm-bridge/-/server-llm-bridge-1.0.6.tgz","fileCount":10,"integrity":"sha512-R2Hp4l8bOm2s+56swrlbjNbeVIDDEDaSXwszn+mYivkvrWDnle1P4haHJJEjkxAPyzwhxYJVc5mKCCGYnDQDhA==","signatures":[{"sig":"MEYCIQDxzZIKBVKgDSKLUkJT9UzLsVk37U1AqAMlIPs80Ha+HAIhALCq/1CT/q6xXJGPK0LXlrYLtz703pkmyZp9yRpLKVXt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":40304},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"d86f164b89268a0b8121bc6e855d4d84b996d982","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"dav1lex","email":"zedxurl@gmail.com"},"_npmVersion":"10.9.2","description":"MCP server for LLM-to-LLM communication via OpenRouter and Google Gemini","directories":{},"_nodeVersion":"22.16.0","dependencies":{"axios":"^1.6.0","dotenv":"^16.3.0","@modelcontextprotocol/sdk":"^0.4.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/server-llm-bridge_1.0.6_1757276605284_0.2557681075817726","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"@dav1lex/server-llm-bridge","version":"1.0.7","keywords":["mcp","llm","openrouter","gemini","ai"],"author":{"name":"dav1lex"},"license":"MIT","_id":"@dav1lex/server-llm-bridge@1.0.7","maintainers":[{"name":"dav1lex","email":"zedxurl@gmail.com"}],"bin":{"mcp-server-llm-bridge":"dist/index.js"},"dist":{"shasum":"64bd81e61ff9f1ad8e562a279005efde90a2a78d","tarball":"https://registry.npmjs.org/@dav1lex/server-llm-bridge/-/server-llm-bridge-1.0.7.tgz","fileCount":10,"integrity":"sha512-zbnXZ5qgQFaRkqnydfLMkmVSTtGii/tw7KDUuAQMGtb+v94HC7qSrXg/acstu/xMVN7FUkHGdvFwXwoAUpZSEg==","signatures":[{"sig":"MEUCIAJoIodGq3Lw/V4nALXtR0rIt190lrM0dLaf4M+LazPFAiEA2RVKDCyunsHNPvDTZC6AyHtglghMRipk6bxiQPyWi2E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42583},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"269f44f1bf69924c67b4ebca299d8dd4a9705b40","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"dav1lex","email":"zedxurl@gmail.com"},"_npmVersion":"10.9.2","description":"MCP server for LLM-to-LLM communication via OpenRouter and Google Gemini","directories":{},"_nodeVersion":"22.16.0","dependencies":{"axios":"^1.6.0","dotenv":"^16.3.0","@modelcontextprotocol/sdk":"^0.4.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/server-llm-bridge_1.0.7_1757276804243_0.9203542025075471","host":"s3://npm-registry-packages-npm-production"}},"1.0.8":{"name":"@dav1lex/server-llm-bridge","version":"1.0.8","keywords":["mcp","llm","openrouter","gemini","ai"],"author":{"name":"dav1lex"},"license":"MIT","_id":"@dav1lex/server-llm-bridge@1.0.8","maintainers":[{"name":"dav1lex","email":"zedxurl@gmail.com"}],"bin":{"mcp-server-llm-bridge":"dist/index.js"},"dist":{"shasum":"67720ecf6730da1b4f125dd1fc88085955ce6448","tarball":"https://registry.npmjs.org/@dav1lex/server-llm-bridge/-/server-llm-bridge-1.0.8.tgz","fileCount":10,"integrity":"sha512-GZ5OEiuJxYak6PdMgFWgo48diAntGMG/5uHYpcMVzgINFr62IjVaFh1FvsmcU2GD7+3/UPyQ1J76vmHpvd+1Lg==","signatures":[{"sig":"MEYCIQCcFBQqBzRd+2BrTTpGeWc3gOBOh+b57tbWA49OeKlX0AIhAJmRllYbcXyWlPh97tDkYUPyZ8qDcL+kzJstLY2kSayW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48790},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"bbee776c4519d747285cefa35cd50cc39c83d62c","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"dav1lex","email":"zedxurl@gmail.com"},"_npmVersion":"10.9.2","description":"MCP server for LLM-to-LLM communication via OpenRouter and Google Gemini","directories":{},"_nodeVersion":"22.16.0","dependencies":{"axios":"^1.6.0","dotenv":"^16.3.0","@modelcontextprotocol/sdk":"^0.4.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/server-llm-bridge_1.0.8_1757277797941_0.44411768379169003","host":"s3://npm-registry-packages-npm-production"}},"1.0.9":{"name":"@dav1lex/server-llm-bridge","version":"1.0.9","keywords":["mcp","llm","openrouter","gemini","ai"],"author":{"name":"dav1lex"},"license":"MIT","_id":"@dav1lex/server-llm-bridge@1.0.9","maintainers":[{"name":"dav1lex","email":"zedxurl@gmail.com"}],"bin":{"mcp-server-llm-bridge":"dist/index.js"},"dist":{"shasum":"145d3a2f4b799f7401a55ebb86c2da6f254f9f8b","tarball":"https://registry.npmjs.org/@dav1lex/server-llm-bridge/-/server-llm-bridge-1.0.9.tgz","fileCount":10,"integrity":"sha512-3hDglFtmc+7ycZ78q100lqO6/V+E3LDiwL8n2DCi+nZoTBaphguCj83PqAmfQ9UU7za07hOcY9k4VnMg5RIV2w==","signatures":[{"sig":"MEQCIEdrc/GhNhBAANctgeHILH0KM64Pdnd1eF7Lj7VhZowrAiAcqXuSo6S+MoY6+TK+pOqGSCs4nOGVzeWDvE+cuifPqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49032},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"ad6edc237b4a9f878d20d8125a2b0b01a9967fdb","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"dav1lex","email":"zedxurl@gmail.com"},"_npmVersion":"10.9.2","description":"MCP server for LLM-to-LLM communication via OpenRouter and Google Gemini","directories":{},"_nodeVersion":"22.16.0","dependencies":{"axios":"^1.6.0","dotenv":"^16.3.0","@modelcontextprotocol/sdk":"^0.4.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/server-llm-bridge_1.0.9_1757282361845_0.3294197537928145","host":"s3://npm-registry-packages-npm-production"}},"1.0.10":{"name":"@dav1lex/server-llm-bridge","version":"1.0.10","description":"MCP server for LLM-to-LLM communication via OpenRouter and Google Gemini","main":"dist/index.js","type":"module","bin":{"mcp-server-llm-bridge":"dist/index.js"},"scripts":{"build":"tsc","dev":"tsc --watch","start":"node dist/index.js"},"keywords":["mcp","llm","openrouter","gemini","ai"],"author":{"name":"dav1lex"},"license":"MIT","dependencies":{"@modelcontextprotocol/sdk":"^0.4.0","axios":"^1.6.0","dotenv":"^16.3.0"},"devDependencies":{"@types/node":"^20.0.0","typescript":"^5.0.0"},"_id":"@dav1lex/server-llm-bridge@1.0.10","gitHead":"0af30846f53941fb24d8d97039c7cb0b7e779c3e","types":"./dist/index.d.ts","_nodeVersion":"22.17.1","_npmVersion":"11.5.2","dist":{"integrity":"sha512-u6Rgl3+54+btkUNdWPiDwY2Y5D0o7GqBK6WGpi8659zvnggbnUBXUNirlqbF/L7fQuxKQHqVQvmsC1oe8XhvTw==","shasum":"7ac25cf2baaa76af50cd96dad0189091dbdf2ce8","tarball":"https://registry.npmjs.org/@dav1lex/server-llm-bridge/-/server-llm-bridge-1.0.10.tgz","fileCount":10,"unpackedSize":30024,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCsLjzzWhcmaCx8fRZLd8BVGtuSmgxJj/NT/3MmIv0gcwIhANSpNZPCcD+yjCg7ubkwVF9Xw/MmdHUdi6j4VaXTnzPH"}]},"_npmUser":{"name":"dav1lex","email":"zedxurl@gmail.com"},"directories":{},"maintainers":[{"name":"dav1lex","email":"zedxurl@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/server-llm-bridge_1.0.10_1758447352857_0.47086907875374173"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-07T20:06:49.476Z","modified":"2025-09-21T09:35:53.274Z","1.0.0":"2025-09-07T20:06:49.785Z","1.0.4":"2025-09-07T20:13:20.790Z","1.0.5":"2025-09-07T20:20:50.853Z","1.0.6":"2025-09-07T20:23:25.476Z","1.0.7":"2025-09-07T20:26:44.447Z","1.0.8":"2025-09-07T20:43:18.142Z","1.0.9":"2025-09-07T21:59:22.018Z","1.0.10":"2025-09-21T09:35:53.077Z"},"author":{"name":"dav1lex"},"license":"MIT","keywords":["mcp","llm","openrouter","gemini","ai"],"description":"MCP server for LLM-to-LLM communication via OpenRouter and Google Gemini","maintainers":[{"name":"dav1lex","email":"zedxurl@gmail.com"}],"readme":"# LLM Bridge MCP Server\n[![GitHub](https://img.shields.io/badge/GitHub-Repository-blue?logo=github)](https://github.com/dav1lex/LLM-Bridge)\n[![npm version](https://img.shields.io/npm/v/@dav1lex/server-llm-bridge.svg)](https://www.npmjs.com/package/@dav1lex/server-llm-bridge)\n\nAn MCP (Model Context Protocol) server that enables LLM-to-LLM communication through OpenRouter and Google Gemini APIs.\n\n## 🚀 Features\n\n- **Dual Provider Support**: Integrates with both OpenRouter and Google Gemini.\n- **Multi-Turn Conversations**: Maintains context for extended dialogues.\n- **Configurable Presets**: Easily switch between settings optimized for `general` use and `coding`.\n- **High Token Limits**: Supports up to 8192 tokens for handling large codebases and complex discussions.\n\n## 📦 Quick Start\n\n### How to Use\n\nAfter attaching to your terminal/code editor, you can basically send a prompt like this `call llm-bridge mcp server to ask another LLM about his opinion, use [modelname](optional), find the most optional solution`. The LLM will decide what tool to use if not guided. \n\n### 1. Configure Your MCP Client\n\nAdd the server to your MCP client's configuration. The recommended way is to use `npx` to run the latest version directly from npm.\n\n**Example for RovoDev / RooCode:**\n\n```json\n{\n  \"llm-bridge\": {\n    \"command\": \"npx\",\n    \"args\": [\n      \"-y\",\n      \"@dav1lex/server-llm-bridge\"\n    ]\n  }\n}\n```\n\n**For local development:**\n\n```json\n{\n  \"llm-bridge\": {\n    \"command\": \"node\",\n    \"args\": [\n      \"/path/to/your/llm-bridge/dist/index.js\"\n    ]\n  }\n}\n```\n\n### 2. Set Up API Keys (Required)\n\n**Important**: You need at least one API key (OpenRouter or Gemini) for the server to be functional. The server will start without keys but all tools will return errors. You can provide API keys in several ways:\n\n**Option A: Create a `.env` file in your project root:**\n\n```env\n# OpenRouter Configuration\nOPENROUTER_API_KEY=your_openrouter_api_key_here\nOPENROUTER_HTTP_REFERER=http://localhost:3000\nOPENROUTER_X_TITLE=LLM Bridge MCP\n\n# Google Gemini Configuration\nGEMINI_API_KEY=your_gemini_api_key_here\n```\n\n**Option B: Set system environment variables:**\n\n```bash\n# Windows\nset OPENROUTER_API_KEY=your_openrouter_api_key_here\nset GEMINI_API_KEY=your_gemini_api_key_here\n\n# Linux/Mac\nexport OPENROUTER_API_KEY=your_openrouter_api_key_here\nexport GEMINI_API_KEY=your_gemini_api_key_here\n```\n\n**Option C: Set in your shell profile (permanent):**\n\nAdd to your `.bashrc`, `.zshrc`, or equivalent:\n```bash\nexport OPENROUTER_API_KEY=your_openrouter_api_key_here\nexport GEMINI_API_KEY=your_gemini_api_key_here\n```\n## 🛠️ Available Tools\n\n### 1. `ask_openrouter_llm`\n\nSend a single prompt to an OpenRouter model.\n\n-   **`prompt`** (required): The text to send.\n-   **`model`** (optional): e.g., `deepseek/deepseek-chat-v3.1:free`.\n-   **`preset`** (optional): Use a predefined configuration (`general` or `coding`).\n\n### 2. `ask_gemini_llm`\n\nSend a single prompt to a Gemini model.\n\n-   **`prompt`** (required): The text to send.\n-   **`model`** (optional): e.g., `gemini-2.5-pro`.\n-   **`preset`** (optional): Use a predefined configuration (`general` or `coding`).\n\n### 3. `conversation_with_llm`\n\nHave a multi-turn conversation, maintaining context.\n\n-   **`messages`** (required): An array of the conversation history.\n-   **`provider`** (optional): `openrouter` or `gemini`.\n-   **`model`** (optional): The model to use.\n\n**Example:**\n\n```json\n{\n  \"messages\": [\n    {\n      \"role\": \"user\", \n      \"content\": \"What is the capital of France?\"\n    },\n    {\n      \"role\": \"assistant\",\n      \"content\": \"The capital of France is Paris.\"\n    },\n    {\n      \"role\": \"user\",\n      \"content\": \"What is a famous landmark there?\"\n    }\n  ],\n  \"provider\": \"openrouter\",\n  \"model\": \"deepseek/deepseek-chat-v3.1:free\"\n}\n```\n\n## 🔧 Development\n\nIf you've cloned this repository and want to run your local version:\n\n1.  **Install dependencies**: `npm install`\n2.  **Build the code**: `npm run build`\n3.  **Run in development mode**: `npm run dev` (auto-rebuilds on changes)\n\nThen, update your MCP client to run the local version with `node`:\n\n```json\n{\n  \"llm-bridge\": {\n    \"command\": \"node\",\n    \"args\": [\n      \"c:/Users/admin/LLM-Bridge/dist/index.js\"\n    ]\n  }\n}\n```\n\n## 📄 License\n\nMIT License.","readmeFilename":"README.md"}