Skip to main content

MCP Server

The intellinode command starts an MCP server that exposes the Gen functions and multi-provider chat as tools. A coding assistant connected to it can route work to OpenAI, Anthropic, Gemini, Mistral, Cohere, NVIDIA, OpenRouter, DeepSeek, Groq, xAI, Together or a local Ollama model.

Start the server​

npx -y intellinode mcp                       # stdio, for Claude Code, Cursor, VS Code
npx -y intellinode mcp --http --port 3210 # Streamable HTTP at http://127.0.0.1:3210/mcp
npx -y intellinode help

HTTP options: --port (default 3210), --host (default 127.0.0.1), --path (default /mcp), --origin <url> (extra allowed browser origin, repeatable), --debug.

Keys​

Keys come from the environment or a .env file in the directory where the server starts:

VariableProvider
OPENAI_API_KEYOpenAI (chat tools and image generation)
ANTHROPIC_API_KEYAnthropic
GEMINI_API_KEYGoogle Gemini (chat, web search, images and speech)
VERTEX_API_KEYGemini on Vertex AI. Add VERTEX_PROJECT_ID and VERTEX_LOCATION for project mode.
MISTRAL_API_KEYMistral
COHERE_API_KEYCohere
NVIDIA_API_KEYNVIDIA
OPENROUTER_API_KEY, OPENROUTER_MODELOpenRouter (default model openai/gpt-5.5)
DEEPSEEK_API_KEY, DEEPSEEK_MODELDeepSeek (default model deepseek-chat)
GROQ_API_KEY and GROQ_MODELGroq
XAI_API_KEY and XAI_MODELxAI
TOGETHER_API_KEY and TOGETHER_MODELTogether
OLLAMA_MODELA local Ollama model, no key needed
STABILITY_API_KEYStability AI images

The default provider is the first configured one in that order; every tool accepts a provider argument to pick another. A missing key returns a tool error naming the variable to set, so the assistant can tell you what to configure.

Install in your assistant​

Claude Code:

claude mcp add intellinode -e OPENAI_API_KEY=sk-... -e ANTHROPIC_API_KEY=sk-ant-... -- npx -y intellinode mcp

Codex:

codex mcp add intellinode --env GEMINI_API_KEY=... -- npx -y intellinode mcp

Or a project .mcp.json (Claude Code) / .cursor/mcp.json (Cursor):

{
"mcpServers": {
"intellinode": {
"command": "npx",
"args": ["-y", "intellinode", "mcp"],
"env": { "OPENAI_API_KEY": "sk-...", "ANTHROPIC_API_KEY": "sk-ant-..." }
}
}
}

VS Code (.vscode/mcp.json):

{
"servers": {
"intellinode": {
"type": "stdio",
"command": "npx",
"args": ["-y", "intellinode", "mcp"],
"env": { "OPENAI_API_KEY": "sk-..." }
}
}
}

For the HTTP transport start npx -y intellinode mcp --http and register { "type": "http", "url": "http://127.0.0.1:3210/mcp" }.

Tools​

ToolArgumentsReturns
ask_modelprompt, provider?, model?, system?text
consensusprompt, providers?the answer of every configured provider side by side
review_codecode, language?, provider?{ summary, score, issues }
fix_codecode, problem?, language?, provider?{ code, explanation, changes }
generate_unit_testscode, framework?, modulePath?, provider?test file
generate_componentdescription, framework?, language?, styling?, provider?code
generate_formdescription, framework?, action?, provider?code
generate_sqldescription, dialect?, schema?, provider?SQL
generate_openapi_specinput, title?, basePath?, provider?OpenAPI document
generate_design_tokensbrand, brandColor?, provider?tokens, CSS variables, Tailwind theme
generate_regexdescription, language?, provider?{ pattern, flags, explanation, matches, nonMatches, verified }
generate_mock_dataschema, count?, provider?{ records, count }
generate_seo_metapage, url?, siteName?, provider?meta fields and rendered HTML
search_webquestion, model?an answer from Google Search with its source links (Gemini)
generate_imageprompt, provider? (openai, stability, gemini or vertex), size?image block
generate_speechtext, voice? (default Kore)WAV audio block (Gemini)
list_providersnoneconfigured providers, defaults and the variables still unset

Build your own server​

MCPServer serves your own tools over stdio or Streamable HTTP, with no extra dependency:

const { MCPServer } = require('intellinode');

const server = new MCPServer({
name: 'my-tools',
version: '1.0.0',
instructions: 'Optional guidance for the model.',
tools: [{
name: 'add',
description: 'Add two numbers',
inputSchema: { type: 'object', properties: { a: { type: 'number' }, b: { type: 'number' } }, required: ['a', 'b'] },
handler: async ({ a, b }) => ({ sum: a + b }),
}],
});

server.startStdio(); // stdio transport
const { url } = await server.startHttp({ port: 3210 }); // or Streamable HTTP, url: http://127.0.0.1:3210/mcp
await server.stop();

A handler may return a string, an object (sent as structuredContent plus a JSON text block), a content block or a full { content, structuredContent, isError } result; a thrown error becomes isError: true with the message. startHttp accepts host, port, path, allowedOrigins and maxBodyBytes.

Registry​

The server is listed in the MCP registry as io.github.intelligentnode/intellinode, so clients that browse the registry can install it directly.

Get the next agent guide in your inbox.

Be the first to read new guides on AI agents, RAG and MCP apps.