Skip to main content
Glama
drharunyuksel

codex-upwork-mcp-bridge

Codex ↔ Upwork MCP Bridge

Неофициальный мост совместимости для использования MCP-сервера Upwork с OpenAI Codex и настольным приложением ChatGPT.

MCP-сервер Upwork может проходить аутентификацию и работать в некоторых MCP-клиентах, в то время как Codex не может отобразить его инструменты или сообщает об ошибке Unexpected response type. Этот небольшой stdio-мост запускает mcp-remote, отвечает на ping-запросы от сервера к клиенту локально и удаляет две подсказки кэша, обнаруженные в ответах tools/list, перед их передачей в Codex.

Это обходной путь сообщества, а не официальный проект Upwork или OpenAI. Сначала попробуйте напрямую использовать MCP-эндпоинт Upwork. Проблема совместимости может быть исправлена в вышестоящем проекте в любое время.

Статус

Протестировано на macOS с Codex CLI 0.149.0, Bun и https://mcp.upwork.com/mcp. Та же конфигурация MCP для Codex также доступна настольному приложению ChatGPT, когда оба используют общую конфигурацию Codex.

Точное поле, вызывающее сбой, ещё не изолировано с помощью минимального воспроизведения в вышестоящем проекте. Мост нормализует оба различия протокола, наблюдаемые во время сбоя:

  • Он отвечает на JSON-RPC ping-запросы, отправляемые с сервера клиенту.

  • Он удаляет подсказки кэша ttlMs и cacheScope из результатов списка инструментов.

Эти подсказки кэша существуют в более новых черновиках MCP; проблема совместимости заключается в том, что они возвращались при согласовании более старой версии протокола, а не в том, что эти поля универсально недопустимы.

Related MCP server: harness_to_mcp

Установка

Предварительные требования:

  • Bun 1.2 или новее

  • Codex CLI

  • Веб-браузер для OAuth-авторизации Upwork

Клонируйте репозиторий и установите зависимости:

git clone https://github.com/drharunyuksel/codex-upwork-mcp-bridge.git
cd codex-upwork-mcp-bridge
bun install --frozen-lockfile

Зарегистрируйте мост в Codex, заменив пример пути на абсолютный путь к вашему клону:

codex mcp add upwork -- bun run /absolute/path/to/codex-upwork-mcp-bridge/src/index.ts

Если у вас уже есть MCP-сервер с именем upwork, удалите или переименуйте эту запись перед выполнением команды. Перезапустите Codex и ChatGPT после изменения конфигурации MCP. При первом использовании mcp-remote откроет OAuth-авторизацию Upwork в вашем браузере.

Вы также можете добавить его вручную в ~/.codex/config.toml:

[mcp_servers.upwork]
command = "/absolute/path/to/bun"
args = ["run", "/absolute/path/to/codex-upwork-mcp-bridge/src/index.ts"]
startup_timeout_sec = 60

Найдите абсолютный путь к Bun с помощью command -v bun.

Проверка

codex mcp list
codex mcp get upwork

Затем попросите Codex перечислить доступные инструменты Upwork или выполнить действие только для чтения, например показать ваш профиль Upwork. Избегайте публикации вывода приватных инструментов при сообщении о проблеме.

Удаление

codex mcp remove upwork

Удаление записи из Codex не удаляет локальную OAuth-сессию mcp-remote. Обратитесь к документации mcp-remote, если вы также хотите очистить эту сессию.

Как это работает

Codex / ChatGPT  <-- stdio JSON-RPC -->  this bridge
                                             |
                                             v
                                        mcp-remote
                                             |
                                             v
                                 https://mcp.upwork.com/mcp

Мост изменяет только две наблюдаемые точки совместимости. Остальные JSON-RPC-сообщения проходят без изменений. Трафик протокола остаётся в stdout; диагностика идёт в stderr, чтобы не повредить поток MCP.

Связанные отчёты Codex

Этот репозиторий решает проблему Upwork, но аналогичные отчёты описывают, как Codex отклоняет или не отображает результаты MCP-инструментов, которые работают в других клиентах:

Разработка

bun install --frozen-lockfile
bun test

Лицензия

MIT

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    A universal server that enables MCP-compatible clients (like Claude Desktop, Cursor, VS Code) to access OpenAI's APIs for chat completions, image generation, embeddings, and model listing through a standardized interface.
    17 npm
    7
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    Extended MCP server for OpenAI with support for GPT-5 family, Codex models, and automatic API endpoint selection, enabling chat interactions via the openai_chat tool.
    1
    10 npm
    MIT