Grok AI API桥接服务

一个基于Node.js/TypeScript的MCP服务器,提供与Grok AI API(X/Twitter的AI模型)的接口,支持X搜索、通用搜索、图像生成和视频生成功能。

  • by 1WorldCapture
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 1WorldCapture/grok2api-mcp

使用说明

grok2api mcp

基于Node.js/TypeScript的 MCP(模型上下文协议)服务器 它为 格罗克AI API (X/Twitter的人工智能模型)。该服务器运行在stdio上,充当MCP客户端(如Claude Desktop)和Grok的OpenAI兼容API端点之间的桥梁。

中文文档

特性

  • X搜索 -使用Grok搜索和总结X(推特)内容
  • 常规搜索 -一般网络搜索和摘要
  • 图像生成 -通过Grok的图像API生成图像
  • 视频生成 -通过Grok的视频API生成视频

需求

  • Node.js>=18
  • Grok API访问(来自X.AI的API令牌)

安装

npx快速入门

npx grok2api-mcp

全球安装

npm install -g grok2api-mcp
grok2api-mcp

来源

git clone https://github.com/1WorldCapture/grok2api-mcp.git
cd grok2api-mcp
npm install
npm run build

配置

所需的环境变量

变量 描述
GROK_BASE_URL Grok API基础URL(例如。, https://api.x.ai)
GROK_API_TOKEN 您的Grok API身份验证令牌

可选环境变量

变量 默认值 描述
GROK_REQUEST_TIMEOUT_MS 120000 全局请求超时(ms)
GROK_X_SEARCH_TIMEOUT_MS (全局) x_search工具超时
GROK_GENERAL_SEARCH_TIMEOUT_MS (全局) 通用搜索工具超时
GROK_IMAGE_TIMEOUT_MS (全局) 图像生成工具超时
GROK_VIDEO_TIMEOUT_MS (全局) 视频生成工具超时
GROK_SEARCH_MODEL grok-4.20-beta 搜索工具模型
GROK_IMAGE_MODEL grok-imagine-1.0 图像生成模型
GROK_VIDEO_MODEL grok-imagine-1.0-video 视频生成模型

基本URL注释

这 GROK_BASE_URL 支持以下格式:

  • https://api.example.com
  • https://api.example.com/v1
  • https://api.example.com/proxy
  • https://api.example.com/proxy/v1

服务器自动处理 /v1 路径规范化以避免重复的路径段。

用法

运行服务器

GROK_BASE_URL=https://api.x.ai GROK_API_TOKEN=your-token npx grok2api-mcp

开发模式

npm run dev

与Claude Desktop集成

将以下内容添加到您的Claude Desktop配置文件中:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 视窗: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "grok": {
      "command": "npx",
      "args": ["-y", "grok2api-mcp"],
      "env": {
        "GROK_BASE_URL": "https://api.x.ai",
        "GROK_API_TOKEN": "your-api-token"
      }
    }
  }
}

或者全局安装:

{
  "mcpServers": {
    "grok": {
      "command": "grok2api-mcp",
      "env": {
        "GROK_BASE_URL": "https://api.x.ai",
        "GROK_API_TOKEN": "your-api-token"
      }
    }
  }
}

MCP工具

1.x_搜索

搜索并总结X(推特)内容。

  • 模型: grok-4.20-beta (默认)
  • 端点: POST /v1/chat/completions
  • 流:已禁用(stream=false)

2.一般搜索

执行一般网络搜索和摘要。

  • 模型: grok-4.20-beta (默认)
  • 端点: POST /v1/chat/completions
  • 流:已禁用(stream=false)

3.图像生成

使用Grok的图像生成API生成图像。

  • 模型: grok-imagine-1.0 (默认)
  • 端点: POST /v1/images/generations
  • 流:已禁用(stream=false)

4.视频生成

使用Grok的视频生成API生成视频。

  • 模型: grok-imagine-1.0-video (默认)
  • 端点: POST /v1/chat/completions
  • 流:已禁用(stream=false)

项目结构

grok2api-mcp/
├── src/
│   ├── index.ts        # Main entry point - MCP server setup
│   ├── config.ts       # Environment variable loading and validation
│   ├── tools.ts        # MCP tool definitions and handlers
│   ├── grokClient.ts   # Grok API client wrapper
│   ├── httpClient.ts   # HTTP client with timeout/abort handling
│   ├── errors.ts       # Error types and normalization
│   ├── logger.ts       # Simple stderr logger
│   └── utils.ts        # Utility functions
├── dist/               # Compiled JavaScript output
├── package.json
├── tsconfig.json
└── README.md

建筑

MCP Client (stdio)
        │
        ▼
┌─────────────────────────────────────────┐
│  index.ts - MCP Server                  │
│  - ListToolsRequestSchema handler       │
│  - CallToolRequestSchema handler        │
└─────────────────────────────────────────┘
        │
        ▼
┌─────────────────────────────────────────┐
│  tools.ts - Tool Definitions            │
│  - Zod schema validation                │
│  - x_search, general_search, etc.       │
└─────────────────────────────────────────┘
        │
        ▼
┌─────────────────────────────────────────┐
│  grokClient.ts - Grok API Client        │
│  - chatCompletions()                    │
│  - imageGenerations()                   │
└─────────────────────────────────────────┘
        │
        ▼
┌─────────────────────────────────────────┐
│  httpClient.ts - HTTP Client            │
│  - Bearer token auth                    │
│  - Timeout & AbortController            │
│  - URL path normalization               │
└─────────────────────────────────────────┘

错误处理

  • 参数验证:所有工具参数都使用Zod模式进行验证
  • 统一HTTP客户端:单个客户端处理超时、中止信号和错误规范化
  • 启动验证:启动时检查所需的环境变量
  • 丰富的错误上下文:错误包括超时阈值、URL、已用时间和提示
  • SSE检测:如果服务器返回SSE而不是JSON,则出现显式错误

发展

脚本

命令 描述
npm run clean 删除dist目录
npm run build 清理并编译TypeScript
npm run dev 热装开发模式
npm start 运行已编译的服务器

构建

npm run build

依赖项

许可证

ISC

贡献

欢迎投稿!请随时提交拉取请求。