Grok Chat

io.github.codeChapPublished by GitHub account codeChapv0.2.0Updated Oct 24, 2026

MCP server for the xAI Grok API — chat, vision, search, and embeddings

The publisher's own server: Surface

VerifiedSTDIODesktop onlyWeb Search & ScrapingAI & ML

Overview

AI-generated overview

Wraps the xAI Grok API so an assistant can run chat, vision, live web/X search, and embedding requests as MCP tools.

What you can do
Exposes five tools: chat for completions with multi-turn history, system prompts, JSON-schema structured output, temperature and model selection; chat_with_vision for analysing an image from an http or https URL; chat_with_search for responses grounded in live web and/or X search; embedding for text embeddings; and list_models for available Grok model IDs, cached for five minutes. Multi-agent model IDs are routed through the Responses API, where reasoning_effort controls how many research agents run in parallel.
When to use it
Useful when an assistant should call Grok models directly, including image analysis, search-grounded answers, or embeddings, without a separate integration. It suits users who already have xAI API access and want Grok available as a local MCP tool.
Requirements
Runs locally over stdio as a compiled Rust binary (Rust edition 2024 to build). Needs an xAI API key from console.x.ai, placed in a config file at ~/.config/mcp-server-grok-chat/config.toml, and network access to the xAI API. Desktop only; no web executable.
Before you install
The xAI API key is stored in plain text in config.toml, so protect that file. Prompts, image URLs, and embedded text are sent to the xAI API, and chat_with_search sends queries to live web and X search. API usage is billed by xAI, and multi-agent requests with high reasoning_effort can consume substantially more tokens.

Installation

In SourceWeft

  1. Open Grok Chat in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

mcp-server-grok-chat

An MCP (Model Context Protocol) server for the xAI Grok API. Built in Rust, exposes chat completions, vision, web/X search, embeddings, and model listing as MCP tools.

Communicates via stdio using JSON-RPC 2.0, like all MCP servers.

Tools

ToolDescription
chatSend a chat completion request to Grok with optional multi-turn history, system prompt, structured output (JSON schema), model selection, and multi-agent research
chat_with_visionAnalyse an image with Grok's vision capabilities given an image URL and text prompt
chat_with_searchChat with Grok using live web search and/or X (Twitter) search to ground responses
embeddingGenerate text embeddings using Grok's embedding model
list_modelsList all available Grok models and their IDs (cached for 5 minutes)

chat

Send a chat completion request. Supports multi-turn conversations via a JSON message history array, system prompts, structured output via JSON schema, temperature control, model selection, and multi-agent research.

When using a multi-agent model (any model ID containing multi-agent), the request is automatically routed through the Responses API. The multi-agent model dispatches your query to multiple agents that research in parallel, then synthesizes their findings. Use reasoning_effort to control agent count. Call the list_models tool to see which multi-agent models are currently available.

Parameters:

NameTypeRequiredDescription
promptstringyesThe user message to send
modelstringnoModel ID (default: grok-4.3). Call list_models for the current set.
system_promptstringnoSystem prompt to set context
messagesstringnoFull conversation history as JSON array of {role, content} objects
temperaturefloatnoSampling temperature (0.0 - 2.0)
max_tokensintegernoMaximum tokens to generate
response_schemastringnoJSON schema string to enforce structured output
reasoning_effortstringnoOn grok-4.3: low/medium/high controls native reasoning depth. On multi-agent models: low/medium = 4 agents, high/xhigh = 16 agents (xhigh is multi-agent-only).

chat_with_vision

Analyse an image using Grok's vision capabilities.

Parameters:

NameTypeRequiredDescription
promptstringyesText prompt describing what to analyse
image_urlstringyesURL of the image (must be http:// or https://)
modelstringnoModel ID (default: grok-4.3). Must be a vision-capable model. Call list_models for the current set.
detailstringnoImage detail level: low or high (default: high)
temperaturefloatnoSampling temperature (0.0 - 2.0)
max_tokensintegernoMaximum tokens to generate

chat_with_search

Chat with Grok using live web search and/or X (Twitter) search. The model automatically searches the internet to ground its response.

Parameters:

NameTypeRequiredDescription
promptstringyesThe user message to send
search_typestringnoSearch type: web, x, or both (default: both)
modelstringnoModel ID (default: grok-4.3). Call list_models for the current set.
system_promptstringnoSystem prompt to set context
temperaturefloatnoSampling temperature (0.0 - 2.0)
max_tokensintegernoMaximum tokens to generate
reasoning_effortstringnoOn grok-4.3: low/medium/high controls native reasoning depth. On multi-agent models: low/medium = 4 agents, high/xhigh = 16 agents (xhigh is multi-agent-only).

embedding

Generate text embeddings.

Parameters:

NameTypeRequiredDescription
inputstringyesText to embed as JSON: a single string or array of strings
modelstringnoEmbedding model to use (default: grok-2-text-embedding)

list_models

List all available Grok models. No parameters. Results are cached for 5 minutes.

Prerequisites

Setup

Create the config file:

bash
mkdir -p ~/.config/mcp-server-grok-chat

Create ~/.config/mcp-server-grok-chat/config.toml:

toml
api_key = "xai-..."

Build

bash
cargo build --release

This produces target/release/grok-chat.

For development:

bash
cargo build              # debug buildcargo run                # run in dev modeRUST_LOG=debug cargo run # run with debug logging

MCP Configuration

Add to your Claude Desktop config (~/.config/Claude/claude_desktop_config.json):

json
{  "mcpServers": {    "grok-chat": {      "command": "/path/to/grok-chat"    }  }}

Project Structure

src/  main.rs    - entry point, config loading, stdio transport setup  server.rs  - MCP tool definitions (chat, chat_with_vision, chat_with_search, embedding, list_models)  api.rs     - xAI HTTP client, request/response types, response formatters  params.rs  - tool parameter types with serde and JSON Schema derives  config.rs  - TOML config loading

License

MIT

Source: README.md at commit c9fc6b1

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.2.0LatestSep 16, 2026

Score

40% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.

Other Grok integrations