Grok MCP Plugin
Integrate with the Grok AI API to access its powerful language models.
Grok MCP Plugin
A Model Context Protocol (MCP) plugin that provides seamless access to Grok AI's powerful capabilities directly from Cline.
Features
This plugin exposes three powerful tools through the MCP interface:
- Chat Completion - Generate text responses using Grok's language models
- Image Understanding - Analyze images with Grok's vision capabilities
- Function Calling - Use Grok to call functions based on user input
Prerequisites
- Node.js (v16 or higher)
- A Grok AI API key (obtain from console.x.ai)
- Cline with MCP support
Installation
-
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.jsonAdd 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-mcpwith the actual path to your installation andyour-grok-api-keywith your Grok AI API key.
Usage
Once installed and configured, the Grok MCP plugin provides three tools that can be used in Cline:
Chat Completion
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>
Image Understanding
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>
Function Calling
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>
API Reference
Chat Completion
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)
Image Understanding
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.
Function Calling
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)
Development
Project Structure
src/index.ts- Main server implementationsrc/grok-api-client.ts- Grok API client implementation
Building
npm run build
Running
XAI_API_KEY="your-grok-api-key" node build/index.js
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgements
Related Servers
Claude Desktop
An MCP server for managing Kubernetes clusters, configured via an external JSON file.
Brex
Interact with the Brex API to manage financial data and resources.
Kubernetes MCP Server
Provides safe, read-only access to Kubernetes cluster resources for debugging and inspection.
Namecheap
Manage domains using the Namecheap API.
Exoscale
An MCP server for interacting with the Exoscale cloud platform.
AWS MCP
A natural language interface to manage AWS services like RDS, S3, EC2, and VPC.
Modal
Deploy Python scripts to Modal, a serverless platform for running code in the cloud.
CloudStack MCP Server
Integrate with Apache CloudStack to manage cloud resources directly from your desktop.
Waldur MCP server
Integrates Waldur instances with Claude Desktop using the Model Context Protocol (MCP).
Salesforce Lite
A simple and lightweight server for connecting AI assistants to Salesforce data.