# PAL MCP (formerly Zen MCP) (MCP Server)

> Orchestrate multiple AI models from Claude Code, Gemini CLI or Codex

- Type: MCP server
- Publisher: Beehive Innovations
- Categories: AI & ML, Development
- Website: https://github.com/BeehiveInnovations/pal-mcp-server
- Source: https://github.com/BeehiveInnovations/pal-mcp-server
- Transport: stdio
- Launch command: uvx --from git+https://github.com/BeehiveInnovations/pal-mcp-server.git pal-mcp-server
- Sign-in: api-key
- Environment variables: GEMINI_API_KEY, OPENAI_API_KEY, OPENROUTER_API_KEY
- GitHub stars: 11763
- Listed: 2025-06-08

## About

PAL (Provider Abstraction Layer), formerly Zen MCP, connects your AI CLI to models from Gemini, OpenAI, OpenRouter, Azure, Grok, Ollama and others. Provides workflow tools for multi-model chat, code review, debugging, planning, consensus and CLI-to-CLI subagents via clink.

## Install

1. **Add the server to Codex**

   Codex CLI:

   ```bash
   codex mcp add pal --env GEMINI_API_KEY=YOUR_GEMINI_API_KEY --env OPENAI_API_KEY=YOUR_OPENAI_API_KEY --env OPENROUTER_API_KEY=YOUR_OPENROUTER_API_KEY -- uvx --from git+https://github.com/BeehiveInnovations/pal-mcp-server.git pal-mcp-server
   ```

   config.toml:

   ```toml
   [mcp_servers.pal]
   command = "uvx"
   args = ["--from", "git+https://github.com/BeehiveInnovations/pal-mcp-server.git", "pal-mcp-server"]
   
   [mcp_servers.pal.env]
   GEMINI_API_KEY = "YOUR_GEMINI_API_KEY"
   OPENAI_API_KEY = "YOUR_OPENAI_API_KEY"
   OPENROUTER_API_KEY = "YOUR_OPENROUTER_API_KEY"
   ```

   Agents SDK:

   ```python
   from agents import Agent, Runner
   from agents.mcp import MCPServerStdio
   
   async with MCPServerStdio(
       name="PAL MCP (formerly Zen MCP)",
       params={"command": "uvx", "args": ["--from", "git+https://github.com/BeehiveInnovations/pal-mcp-server.git", "pal-mcp-server"]},
   ) as server:
       agent = Agent(name="Assistant", mcp_servers=[server])
       result = await Runner.run(agent, "Get a consensus from Gemini and GPT on this architecture")
       print(result.final_output)
   ```

## Tools

- `chat`
- `thinkdeep`
- `planner`
- `consensus`
- `codereview`
- `precommit`
- `debug`
- `clink`
- `analyze`
- `refactor`
- `testgen`
- `secaudit`

## Example prompts

- "Get a consensus from Gemini and GPT on this architecture"
- "Do a code review of my staged changes with o3"
- "Use thinkdeep to analyze this race condition"
- "Ask Codex via clink to hunt bugs in src/"

## Related

- [Chrome DevTools MCP](https://chatgptplugins.directory/mcp/chrome-devtools.md): Let coding agents control and debug a live Chrome browser
- [Playwright MCP](https://chatgptplugins.directory/mcp/playwright.md): Browser automation for agents via Playwright accessibility snapshots
- [GitHub](https://chatgptplugins.directory/mcp/github.md): Manage repos, issues, pull requests and Actions from your AI agent
- [Context7](https://chatgptplugins.directory/mcp/context7.md): Pull up-to-date, version-specific library docs into your coding agent
- [Supabase](https://chatgptplugins.directory/mcp/supabase.md): Manage Supabase databases, migrations, edge functions and logs
- [Stripe](https://chatgptplugins.directory/mcp/stripe.md): Query and act on your Stripe account and search Stripe docs from any agent

---
Source: https://chatgptplugins.directory/mcp/pal · Index: https://chatgptplugins.directory/llms.txt · Independent and community-run. Not affiliated with or endorsed by OpenAI. ChatGPT is a trademark of OpenAI.
