Grok MCP Plugin
Mentioned only as the repository location, not as a service the MCP integrates with
Used for code examples, but not a service the MCP integrates with
Required as a runtime environment for the MCP server, but not a service the MCP integrates with
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Grok MCP Pluginanalyze this screenshot and explain what the error message means"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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
Related MCP server: Grok MCP Server
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-mcpInstall dependencies:
npm installBuild the project:
npm run buildAdd 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 buildRunning
XAI_API_KEY="your-grok-api-key" node build/index.jsLicense
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgements
Available Tools
3 toolschat_completionC
Generate a response using Grok AI chat completion
| Name | Required | Description | Default |
|---|---|---|---|
| max_tokens | No | Maximum number of tokens to generate | |
| messages | Yes | Array of message objects with role and content | |
| model | No | Grok model to use (e.g., grok-2-latest, grok-3, grok-3-reasoner, grok-3-deepsearch, grok-3-mini-beta) | grok-3-mini-beta |
| temperature | No | Sampling temperature (0-2) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure but offers minimal information. It states what the tool does but doesn't describe rate limits, authentication requirements, response formats, error conditions, or any operational constraints. For a generative AI tool with significant behavioral implications, this is inadequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that states the core purpose without unnecessary elaboration. It's appropriately sized for a tool with comprehensive schema documentation and gets straight to the point with zero wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a generative AI tool with no annotations and no output schema, the description is insufficient. It doesn't explain what kind of response is generated, how to interpret results, error handling, or operational constraints. The agent lacks crucial context about this tool's behavior and outputs despite the comprehensive input schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all 4 parameters. The description adds no parameter-specific information beyond what's already in the schema. According to scoring rules, when schema coverage is high (>80%), the baseline is 3 even with no param info in description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Generate a response') and the resource/technology ('using Grok AI chat completion'), which is specific and unambiguous. However, it doesn't differentiate this tool from its sibling tools (function_calling, image_understanding) - all three appear to be different Grok AI capabilities, but the description doesn't explain how chat completion differs from function calling or image understanding.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus its siblings. There's no mention of appropriate contexts for chat completion versus function calling or image understanding, nor any prerequisites or constraints. The agent must infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
function_callingC
Use Grok AI to call functions based on user input
| Name | Required | Description | Default |
|---|---|---|---|
| messages | Yes | Array of message objects with role and content | |
| model | No | Grok model to use (e.g., grok-2-latest, grok-3, grok-3-reasoner, grok-3-deepsearch, grok-3-mini-beta) | grok-3-mini-beta |
| tool_choice | No | Tool choice mode (auto, required, none) | auto |
| tools | Yes | Array of tool objects with type, function name, description, and parameters |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but only states the basic action without disclosing behavioral traits like rate limits, authentication needs, error handling, or output format. It mentions Grok AI but doesn't explain what that entails operationally, leaving significant gaps in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste, front-loading the core purpose. It's appropriately sized for the tool's complexity, making it easy to parse without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (4 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain the return values, error conditions, or how function calling integrates with user input, leaving the agent under-informed for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all 4 parameters. The description adds no meaning beyond what the schema provides, not explaining how parameters like messages or tools relate to function calling. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool 'call[s] functions based on user input' using Grok AI, which gives a general purpose but lacks specificity about what functions are called or how this differs from sibling tools like chat_completion. It's vague about the exact verb+resource combination beyond invoking AI capabilities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like chat_completion or image_understanding. The description implies it's for function calling but doesn't specify contexts, prerequisites, or exclusions, leaving the agent without clear usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
image_understandingC
Analyze images using Grok AI vision capabilities (Note: Grok 3 may support image creation)
| Name | Required | Description | Default |
|---|---|---|---|
| base64_image | No | Base64-encoded image data (without the data:image prefix) | |
| image_url | No | URL of the image to analyze | |
| model | No | Grok vision model to use (e.g., grok-2-vision-latest, potentially grok-3 variants) | grok-2-vision-latest |
| prompt | Yes | Text prompt to accompany the image |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool analyzes images but does not describe what the analysis entails (e.g., object detection, captioning, OCR), potential limitations (e.g., image size restrictions, rate limits), or authentication needs. The note about Grok 3 adds confusion rather than transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief but includes a parenthetical note that is speculative and not directly relevant to the tool's current functionality, reducing efficiency. It is front-loaded with the core purpose, but the extra sentence detracts from conciseness without adding value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no annotations and no output schema, the description is incomplete. It lacks details on what the analysis returns (e.g., text descriptions, structured data), error conditions, or behavioral traits like rate limits. The note about Grok 3 does not compensate for these gaps, leaving the agent with insufficient context for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all four parameters thoroughly. The description adds no additional meaning about parameters beyond what the schema provides, such as explaining interactions between base64_image and image_url or elaborating on model options. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as 'Analyze images using Grok AI vision capabilities' with a specific verb ('Analyze') and resource ('images'), distinguishing it from sibling tools like chat_completion and function_calling. However, it includes a parenthetical note about Grok 3 potentially supporting image creation, which slightly dilutes the clarity by introducing unrelated future capabilities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like chat_completion or function_calling. It mentions Grok 3 may support image creation, but this is speculative and not actionable for current usage decisions. No explicit when/when-not scenarios or prerequisites are included.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
v1.0.0- First observed
chat_completion - First observed
function_calling - First observed
image_understanding
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: chat_completion handles text generation, function_calling manages function execution, and image_understanding focuses on visual analysis. There is no overlap in functionality, making tool selection straightforward for an agent.
The tools follow a consistent snake_case naming convention, but the pattern is not strictly verb_noun (e.g., chat_completion, function_calling, image_understanding). The naming is readable and logical, with only minor deviations from a perfect pattern.
With only 3 tools, the set feels thin for a general-purpose AI plugin, potentially lacking operations like text summarization, translation, or audio processing. However, it covers core AI functionalities adequately for basic use cases.
The tools cover key AI areas (text, functions, images), but there are notable gaps such as missing text analysis tools (e.g., sentiment analysis, summarization) and no explicit support for audio or video processing. The surface is functional but not comprehensive for a full AI suite.
Maintenance
Related MCP Connectors
Share one project context across ChatGPT, Claude, Telegram and any MCP client.
- QuallaaOAuthcom.quallaa
Talk to your public-facing AI from any MCP client — Claude, ChatGPT, Cursor, Cline, Windsurf.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Persistent context for Claude. Your AI always knows your projects and next actions across sessions.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceA custom Model Context Protocol implementation that integrates Perplexity AI with Claude Desktop, allowing users to access Perplexity's AI models for both single questions and multi-turn conversations.24 npm15ISC
- AlicenseBqualityDmaintenanceEnables interaction with the Grok AI through an MCP server, supporting chat completions, text completions, embeddings, and model operations with streaming capabilities.526 npm7MIT
- AlicenseBqualityDmaintenanceProvides seamless access to Grok AI models through the Model Context Protocol by wrapping the official Grok CLI, offering tools for general queries, multi-turn conversations, and code generation.38MIT
- AlicenseBqualityFmaintenanceEnables chat completions using x.ai's Grok API with support for multiple Grok models (grok-beta, grok-2-latest, grok-4-latest) and configurable parameters like temperature and max tokens.14 npmMIT