Lm vs MCP Server

A side-by-side look at the Lm and MCP Server MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

Lm logoLmConversational AI · Local subprocess (stdio)Connect Claude to any OpenAI-compatible LLM endpoint and offload routine work to a local model.61GoodAuth: not declaredMCP Server logoMCP ServerConversational AI · Local subprocess (stdio)Build AI voice assistants and phone agents with Vapi through the Model Context Protocol68GreatAuth: api key required

Verdict: choose Lm for conversational ai work as a local process; choose MCP Server for conversational ai as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

Lm logoChoose Lm when

  • You need dedicated capabilities in the Conversational AI domain.
  • You prefer a local stdio subprocess transport.
  • You have the keys it needs: HOUTINI_LM_ENDPOINT_URL, HOUTINI_LM_API_KEY, HOUTINI_LM_MODEL, HOUTINI_LM_SERIALISE.
  • You want tools like chat, custom_prompt, code_task.
Explore Lm

MCP Server logoChoose MCP Server when

  • You need dedicated capabilities in the Conversational AI domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: API key required.
  • You have the keys it needs: VAPI_TOKEN.
  • You want tools like list_assistants, create_assistant, get_assistant.
Explore MCP Server

Feature & specification comparison

Rows where the two servers differ are marked.

SpecLm logoLmMCP Server logoMCP Server
CategoryConversational AIConversational AI
Quality signal61/100 · Good68/100 · Great
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthNot declaredAPI key required
PricingNot declaredBYOK (pay the provider)
Required env varsHOUTINI_LM_ENDPOINT_URLHOUTINI_LM_API_KEYHOUTINI_LM_MODELHOUTINI_LM_SERIALISEVAPI_TOKEN
Verified ownerCommunity listingCommunity listing
GitHub stars12158
Directory activity 0 views 0 installs 0 upvotes 1 views 0 installs 0 upvotes
Tools813

Tools & capabilities

Lm tools 8

  • chatThe workhorse. Send a task, get an answer. The description includes planning triggers that nudge Claude to identify offloadable work when it's starting a big task.
  • custom_promptThree-part prompt: system, context, instruction. Keeping them separate prevents context bleed - consistently outperforms stuffing everything into one message, especially with local models. I tested this properly one weekend - took the same batch of review tasks and ran them both ways. Splitting thi…
  • code_taskBuilt for code analysis. Pre-configured system prompt with temperature and output constraints tuned per model family via the routing layer.
  • code_task_filesLike `code_task`, but the local LLM reads files directly from disk — source never passes through the MCP client's context window. Use this when reviewing multiple related files, or a single large file that's awkward to paste. Files are read in parallel with `Promise.allSettled`, so one unreadable f…
  • embedGenerate text embeddings via the OpenAI-compatible `/v1/embeddings` endpoint. Requires an embedding model to be available - Nomic Embed is a solid choice. Returns the vector, dimension count, and usage stats.
  • discoverHealth check and speed readout. Returns model name, context window, capability profile, connection latency (labelled explicitly — this is the `/v1/models` fetch round-trip, *not* inference speed), and the active model's measured tok/s and TTFT averaged over the session. Before any real call has run…
  • list_modelsLists everything on the LLM server - loaded and downloaded - with full metadata: architecture, quantisation, context window, capabilities, and HuggingFace enrichment data. Shows capability profiles describing what each model is best at, so Claude can make informed delegation decisions.
  • statsCompact markdown dump of your offload stats — session and lifetime totals, per-model performance history, reasoning-token overhead — without the model catalog that `discover` prints. Cheap to call repeatedly to watch the 💰 counter climb.

MCP Server tools 13

  • list_assistantsLists all Vapi assistants
  • create_assistantCreates a new Vapi assistant
  • get_assistantGets a Vapi assistant by ID
  • update_assistantUpdates an existing Vapi assistant
  • list_callsLists all Vapi calls
  • create_callCreates a outbound call
  • get_callGets details of a specific call
  • list_phone_numbersLists all Vapi phone numbers
  • get_phone_numberGets details of a specific phone number
  • list_toolsLists all Vapi tools
  • get_toolGets details of a specific tool
  • create_toolCreates a new Vapi tool
  • +1 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

Lm

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "lm": {
      "command": "npx",
      "args": [
        "-y",
        "@houtini/lm"
      ],
      "env": {
        "HOUTINI_LM_ENDPOINT_URL": "YOUR_HOUTINI_LM_ENDPOINT_URL_HERE",
        "HOUTINI_LM_API_KEY": "YOUR_HOUTINI_LM_API_KEY_HERE",
        "HOUTINI_LM_MODEL": "YOUR_HOUTINI_LM_MODEL_HERE",
        "HOUTINI_LM_SERIALISE": "YOUR_HOUTINI_LM_SERIALISE_HERE"
      }
    }
  }
}

MCP Server

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "vapi-ai-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@vapi-ai/mcp-server"
      ],
      "env": {
        "VAPI_TOKEN": "YOUR_VAPI_TOKEN_HERE"
      }
    }
  }
}

Frequently asked questions

Lm is categorized under Conversational AI and uses a local stdio subprocess. MCP Server belongs to Conversational AI and uses a local stdio subprocess. Pick Lm for conversational ai work and MCP Server for conversational ai.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

Lm has no declared pricing — check the project's own site. MCP Server is bring-your-own-key: usage is billed by the API provider you supply a key for. Auth: api key required. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add lm and vapi-ai-mcp-server as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, Lm has a quality signal of 61/100 (Good) with 0 views, 0 installs and 121 GitHub stars. MCP Server has 68/100 (Great) with 1 views, 0 installs and 58 GitHub stars.