
Grok
STDIOMCP plugin providing Grok AI capabilities through chat, image analysis and function calling
MCP plugin providing Grok AI capabilities through chat, image analysis and function calling
A Model Context Protocol (MCP) plugin that provides seamless access to Grok AI's powerful capabilities directly from Cline.
This plugin exposes three powerful tools through the MCP interface:
Clone this repository:
git clone https://github.com/Bob-lance/grok-mcp.git cd grok-mcp
Install dependencies:
npm install
Build the project:
npm run build
Add the MCP server to your Cline MCP settings:
For VSCode Cline extension, edit the file at:
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
Add the following configuration:
{ "mcpServers": { "grok-mcp": { "command": "node", "args": ["/path/to/grok-mcp/build/index.js"], "env": { "XAI_API_KEY": "your-grok-api-key" }, "disabled": false, "autoApprove": [] } } }
Replace /path/to/grok-mcp
with the actual path to your installation and your-grok-api-key
with your Grok AI API key.
Once installed and configured, the Grok MCP plugin provides three tools that can be used in Cline:
Generate text responses using Grok's language models:
<use_mcp_tool> <server_name>grok-mcp</server_name> <tool_name>chat_completion</tool_name> <arguments> { "messages": [ { "role": "system", "content": "You are a helpful assistant." }, { "role": "user", "content": "Hello, what can you tell me about Grok AI?" } ], "temperature": 0.7 } </arguments> </use_mcp_tool>
Analyze images with Grok's vision capabilities:
<use_mcp_tool> <server_name>grok-mcp</server_name> <tool_name>image_understanding</tool_name> <arguments> { "image_url": "https://example.com/image.jpg", "prompt": "What is shown in this image?" } </arguments> </use_mcp_tool>
You can also use base64-encoded images:
<use_mcp_tool> <server_name>grok-mcp</server_name> <tool_name>image_understanding</tool_name> <arguments> { "base64_image": "base64-encoded-image-data", "prompt": "What is shown in this image?" } </arguments> </use_mcp_tool>
Use Grok to call functions based on user input:
<use_mcp_tool> <server_name>grok-mcp</server_name> <tool_name>function_calling</tool_name> <arguments> { "messages": [ { "role": "user", "content": "What's the weather like in San Francisco?" } ], "tools": [ { "type": "function", "function": { "name": "get_weather", "description": "Get the current weather in a given location", "parameters": { "type": "object", "properties": { "location": { "type": "string", "description": "The city and state, e.g. San Francisco, CA" }, "unit": { "type": "string", "enum": ["celsius", "fahrenheit"], "description": "The unit of temperature to use" } }, "required": ["location"] } } } ] } </arguments> </use_mcp_tool>
Generate a response using Grok AI chat completion.
Parameters:
messages
(required): Array of message objects with role and contentmodel
(optional): Grok model to use (defaults to grok-3-mini-beta)temperature
(optional): Sampling temperature (0-2, defaults to 1)max_tokens
(optional): Maximum number of tokens to generate (defaults to 16384)Analyze images using Grok AI vision capabilities.
Parameters:
prompt
(required): Text prompt to accompany the imageimage_url
(optional): URL of the image to analyzebase64_image
(optional): Base64-encoded image data (without the data:image prefix)model
(optional): Grok vision model to use (defaults to grok-2-vision-latest)Note: Either image_url
or base64_image
must be provided.
Use Grok AI to call functions based on user input.
Parameters:
messages
(required): Array of message objects with role and contenttools
(required): Array of tool objects with type, function name, description, and parameterstool_choice
(optional): Tool choice mode (auto, required, none, defaults to auto)model
(optional): Grok model to use (defaults to grok-3-mini-beta)src/index.ts
- Main server implementationsrc/grok-api-client.ts
- Grok API client implementationnpm run build
XAI_API_KEY="your-grok-api-key" node build/index.js
This project is licensed under the MIT License - see the LICENSE file for details.