Skip to main content
Glama
maxparez

mcp-consultant

by maxparez
README.md
# mcp-consultant

Simplified fork of PAL MCP Server for uctoteka project. Supports only **Gemini** and **OpenAI** providers with predefined model configurations.

## Features

- **Gemini CLI integration**: `gemini-3-pro-preview` (default), `gemini-3-flash-preview` (fast)
- **OpenAI/Codex integration**: `gpt-5.2` with `xhigh` thinking mode
- **Removed providers**: Azure OpenAI, XAI, DIAL, OpenRouter, Custom API
- **Fixed model mode**: No "auto" mode - models are explicitly configured
- **MCP protocol**: Full Model Context Protocol support for Claude Code

## Installation

```bash
cd /home/pavel/vyvoj_sw/mcp-consultant
pip install --break-system-packages -e .
```

## Configuration

### CLI Clients

Located in `conf/cli_clients/`:

**Gemini** (`gemini.json`):
```json
{
  "name": "gemini",
  "command": "gemini",
  "roles": {
    "default": {"role_args": ["--model", "gemini-3-pro-preview"]},
    "flash": {"role_args": ["--model", "gemini-3-flash-preview"]}
  }
}
```

**Codex** (`codex.json`):
```json
{
  "name": "codex",
  "command": "codex",
  "additional_args": ["exec", "--json", "--model", "gpt-5.2"],
  "roles": {
    "default": {"role_args": ["--config", "model_reasoning_effort=\"xhigh\""]}
  }
}
```

### Environment Variables

```bash
# Required for actual API calls (optional for listmodels/version)
export GEMINI_API_KEY="your_key_here"
export OPENAI_API_KEY="your_openai_key_here"
```

## Usage

### Standalone

```bash
mcp-consultant
```

### Via Claude Code

The server is registered in uctoteka-clink-consult plugin at:
```
/home/pavel/vyvoj_sw/uctoteka_app/claude-marketplace/uctoteka-clink-consult/mcp/pal.mcp.json
```

Configuration:
```json
{
  "mcpServers": {
    "pal": {
      "command": "/home/pavel/.local/bin/mcp-consultant",
      "env": {
        "CLI_CLIENTS_CONFIG_PATH": "${CLAUDE_PLUGIN_ROOT}/cli_clients",
        "DEFAULT_MODEL": "gemini-3-pro-preview"
      }
    }
  }
}
```

## Available Tools

- `clink` - Bridge to external AI CLIs (Gemini, Codex)
- `listmodels` - List available models per provider
- `version` - Show server version and configuration

## Model Comparison

| Model | Thinking | Latence | Use case |
|-------|----------|---------|----------|
| `gemini-3-pro-preview` | high | ~47s | Complex analysis |
| `gemini-3-flash-preview` | - | ~13s | Quick queries |
| `gpt-5.2` (codex) | xhigh | ~31s | Max reasoning, code + web |

## Development

**Project structure:**
```
mcp-consultant/
├── clink/           # CLI integration (agents, parsers, registry)
├── providers/       # Model providers (Gemini, OpenAI)
├── tools/           # MCP tools (clink, listmodels, version)
├── conf/            # Configuration files
├── systemprompts/   # System prompts for CLIs
├── server.py        # Main MCP server
├── config.py        # Configuration constants
└── pyproject.toml   # Package definition
```

**Original project:** [PAL MCP Server](https://github.com/BeehiveInnovations/pal-mcp-server)

**Fork changes:**
- Removed Azure OpenAI, XAI, DIAL, OpenRouter, Custom providers
- Fixed DEFAULT_MODEL to `gemini-3-pro-preview`
- Disabled auto mode (IS_AUTO_MODE = False)
- Server starts without API keys (for listmodels/version)
- Simplified to 2 CLI clients: gemini, codex

## Version

1.0.0 - Initial fork for uctoteka