Skip to main content
Glama
README.md
# Development MCP Servers (`dev-mcp-servers`)

This repository provides high-quality Model Context Protocol (MCP) servers for third-party AI services:
- **ElevenLabs MCP Server** (`elevenlabs`): Text-to-speech, sound effect generation, listing available voices, and user character usage limits.
- **Meshy.ai MCP Server** (`meshy`): Text-to-3D preview & refine, Text-to-Image concept art, Image-to-3D, Rigging, Animation, Animation Library browsing (`list_animation_library`), and Model downloading.
- **Gemini MCP Server** (`gemini`): Image generation and editing (`generate_image`, via Gemini's image model), text generation (`generate_text`), and model listing (`list_models`).
- **Codex Delegation MCP Server** (`codex`): Delegating bounded tasks to local Codex CLI agents in isolated git worktrees with structured handoffs, originally developed for Thera (Craft-Realm) refactoring.

## Features

### Request Preview Mode (Dry-Run / Token Cost Prevention)
All tools support **Request Preview Mode** so you can inspect the precise HTTP target URL, method, headers, request payload, or CLI delegation commands *without* triggering remote API calls, spawning workers, or burning credits/tokens.

Request Preview mode can be activated in two ways:
1. **Tool Argument**: Pass `"preview": true` in the tool input arguments when invoking any tool.
2. **Environment Variable**: Set `REQUEST_PREVIEW=1` (or `PREVIEW_MODE=1` / `DRY_RUN=1`) in your environment.

When active, the tool response returns a structured JSON summary of the request instead of executing the remote call or spawning subprocesses.

## Setup & Installation

```bash
git clone /home/gemini/repos/dev-mcp-servers
cd dev-mcp-servers
npm install
```

## Running Tests

Run the full test suite using Node's native test runner:

```bash
npm test
```

Or test individual MCP servers:

```bash
npm run test:elevenlabs
npm run test:meshy
npm run test:gemini
npm run test:codex
```

## Antigravity Integration

In `~/.gemini/config/mcp_config.json`:

```json
{
  "mcpServers": {
    "elevenlabs": {
      "command": "node",
      "args": ["/home/gemini/repos/dev-mcp-servers/elevenlabs/server.js"],
      "env": {
        "ELEVENLABS_API_KEY": "your_api_key_here"
      }
    },
    "meshy": {
      "command": "node",
      "args": ["/home/gemini/repos/dev-mcp-servers/meshy/server.js"],
      "env": {
        "MESHY_API_KEY": "your_api_key_here"
      }
    },
    "gemini": {
      "command": "node",
      "args": ["/home/gemini/repos/dev-mcp-servers/gemini/server.js"],
      "env": {
        "GEMINI_API_KEY": "your_api_key_here"
      }
    },
    "codex": {
      "command": "node",
      "args": ["/home/gemini/repos/dev-mcp-servers/codex/server.js"]
    }
  }
}
```

## Codex CLI Integration

In `~/.codex/config.toml` or `<project-root>/.codex/config.toml`:

```toml
[mcp_servers.codex]
command = "node"
args = ["/home/gemini/repos/dev-mcp-servers/codex/server.js"]
```

### Prompting the AI to use `generate_image`

Antigravity/Gemini clients pass each tool's `name`, `description`, and `inputSchema` to the model when deciding which tool to call — there's no separate "hint" channel. The `generate_image` tool's description explicitly says it is "the primary image-generation tool of this server" and should be preferred for AI image generation/editing requests, which is normally enough for the model to pick it up automatically when a user asks for an image. If you want to force it, you can also just say "use the generate_image tool" in your prompt.