Skip to main content
Glama
README.md
# CCG-MCP v0.2.0

三个 stdio MCP server,让 Claude Code Desktop 通过 API 直接调用 OpenAI Codex/GPT-5、Gemini、Claude,**不依赖本地 CLI**,支持第三方 API 代理网关。

| Server | 入口 | 默认模型 |
|--------|------|---------|
| `codex-api` | `codex-api-mcp` | `gpt-5-Users\useredb6858d\projectsx` |
| `gemini-api` | `gemini-api-mcp` | `gemini-3.1-pro-preview` |
| `claude-api` | `claude-api-mcp` | `claude-sonnet-4-6` |

---

## 快速启动(uvx)

```bash
# 从 GitHub 直接拉起(无需 clone)
uvx --from git+https://github.com/Erenshkigal111/ccg-mcp codex-api-mcp
uvx --from git+https://github.com/Erenshkigal111/ccg-mcp gemini-api-mcp
uvx --from git+https://github.com/Erenshkigal111/ccg-mcp claude-api-mcp
```

---

## settings.json — 直连官方 API

### Windows

```json
{
  "mcpServers": {
    "codex-api": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/Erenshkigal111/ccg-mcp", "codex-api-mcp"],
      "env": {
        "OPENAI_API_KEY": "${env:OPENAI_API_KEY}"
      }
    },
    "gemini-api": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/Erenshkigal111/ccg-mcp", "gemini-api-mcp"],
      "env": {
        "GOOGLE_API_KEY": "${env:GOOGLE_API_KEY}"
      }
    },
    "claude-api": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/Erenshkigal111/ccg-mcp", "claude-api-mcp"],
      "env": {
        "ANTHROPIC_API_KEY": "${env:ANTHROPIC_API_KEY}"
      }
    }
  }
}
```

### macOS / Linux

```json
{
  "mcpServers": {
    "codex-api": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/Erenshkigal111/ccg-mcp", "codex-api-mcp"],
      "env": {
        "OPENAI_API_KEY": "$OPENAI_API_KEY"
      }
    },
    "gemini-api": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/Erenshkigal111/ccg-mcp", "gemini-api-mcp"],
      "env": {
        "GOOGLE_API_KEY": "$GOOGLE_API_KEY"
      }
    },
    "claude-api": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/Erenshkigal111/ccg-mcp", "claude-api-mcp"],
      "env": {
        "ANTHROPIC_API_KEY": "$ANTHROPIC_API_KEY"
      }
    }
  }
}
```

---

## settings.json — 第三方 API 代理网关

当所有 API(OpenAI、Claude、Gemini)经由同一第三方代理(如 `https://hk1.augmunt.com`)转发时,使用以下模板。**API Key 只写系统环境变量,不硬编码进 settings.json。**

### Windows(第三方网关)

```json
{
  "mcpServers": {
    "codex-api": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/Erenshkigal111/ccg-mcp", "codex-api-mcp"],
      "env": {
        "OPENAI_API_KEY": "${env:OPENAI_API_KEY}",
        "OPENAI_BASE_URL": "https://hk1.augmunt.com/v1"
      }
    },
    "gemini-api": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/Erenshkigal111/ccg-mcp", "gemini-api-mcp"],
      "env": {
        "GOOGLE_API_KEY": "${env:GOOGLE_API_KEY}",
        "GEMINI_API_ENDPOINT": "hk1.augmunt.com"
      }
    },
    "claude-api": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/Erenshkigal111/ccg-mcp", "claude-api-mcp"],
      "env": {
        "ANTHROPIC_API_KEY": "${env:ANTHROPIC_API_KEY}",
        "ANTHROPIC_BASE_URL": "https://hk1.augmunt.com"
      }
    }
  }
}
```

> **注意**:`OPENAI_BASE_URL` 需要 `/v1` 后缀;`GEMINI_API_ENDPOINT` 只填主机名(无协议前缀);`ANTHROPIC_BASE_URL` 填完整 URL(无路径后缀)。
>
> 若 Gemini 代理为 OpenAI-compatible 模式,将 `gemini-api` 改为使用 `codex-api-mcp`,并将 `OPENAI_BASE_URL` 指向代理,model 填 `gemini-3.1-pro-preview`。

---

## 代理相关环境变量一览

| 变量 | Server | 说明 |
|------|--------|------|
| `OPENAI_API_KEY` | Users\useredb6858d\projectsx-api | OpenAI / 代理 key |
| `OPENAI_BASE_URL` | Users\useredb6858d\projectsx-api | 自定义端点,如 `https://proxy.example.com/v1`(默认 OpenAI 官方) |
| `GOOGLE_API_KEY` | gemini-api | Gemini key |
| `GEMINI_API_ENDPOINT` | gemini-api | 自定义 API 主机名,如 `hk1.augmunt.com`(默认 Google 官方) |
| `ANTHROPIC_API_KEY` | claude-api | Anthropic / 代理 key |
| `ANTHROPIC_BASE_URL` | claude-api | 自定义端点,如 `https://proxy.example.com`(默认 Anthropic 官方) |
| `CCG_MCP_TIMEOUT` | 全部 | 超时秒数,默认 `600` |

---

## Tool schema

### codex-api.exec

```text
exec(
  prompt: str,
  role: str = "",
  model: str = "gpt-5-codex",
  reasoning_effort: str = "medium",
  workdir: str = ""
) -> str
```

### gemini-api.exec

```text
exec(
  prompt: str,
  role: str = "",
  model: str = "gemini-3.1-pro-preview",
  workdir: str = ""
) -> str
```

### claude-api.exec

```text
exec(
  prompt: str,
  role: str = "",
  model: str = "claude-sonnet-4-6",
  workdir: str = ""
) -> str
```

---

## 烟测

```bash
git clone https://github.com/Erenshkigal111/ccg-mcp
cd ccg-mcp
pip install -e .
python tests/smoke_test.py
```

---

## 已知限制

- **速率限制**:API 返回 429 时,server 以 JSON 字符串返回错误,调用方决定重试。
- **模型可用性**:默认模型取决于账号权限和代理供应商发布状态;入参 `model` 可随时覆盖。
- **Gemini 原生 SDK**:`GEMINI_API_ENDPOINT` 只支持 google-genai 原生协议;若代理为 OpenAI-compatible,改用 `codex-api-mcp` + `OPENAI_BASE_URL`。
- **文件访问**:三个 server 均不直接读取本地工作区文件,仅调用远程 API。