Skip to main content
Glama

ask-chat-mcp

Claude가 ChatGPT와 직접 협의할 수 있게 해주는 MCP 서버 — 전문가와 전문가가 만나는 구조로, 실제 파일에 근거하며, 읽기 전용이고, 양방향 모두 크기 제한이 없습니다.

검토가 아닌 위임을 위해 만들어졌습니다. 문제가 진정으로 기술적인 경우 — 모델 뒤의 수학, 유도가 성립하는지 여부, 절충점을 따져야 하는 설계 — 유용한 방법은 두 유능한 모델을 함께 붙여서 그들이 내린 결론을 보고하게 하는 것입니다. 모든 교환을 사람을 거쳐 중재하게 하는 것이 아니라, 어느 쪽도 그 사람을 향해 던지지 않는 주제를 중재해야 하는 사람을 통과시키는 것이 아닙니다.

그래서 양쪽 모두 전체 기술 깊이로 대화합니다. 방관자를 위해 설명을 낮추지 않습니다. 그 자리에 방관자가 없기 때문입니다. 질문을 위임한 사람은 정확히 그 질문의 중간에 앉지 않아도 되도록 위임한 것입니다.

flowchart TD
    You([You]) -->|"'Ask Chat'"| Claude[Claude]
    Claude -->|"the problem + file PATHS"| MCP["ask-chat MCP server"]
    MCP -->|"codex exec --sandbox read-only"| Codex[Codex CLI]
    Codex -->|"opens the files itself"| Repo[("your repo, read-only")]
    Codex <-->|"one thread, kept open"| GPT["ChatGPT (your subscription)"]
    GPT -->|"answer + what context it still needs"| Codex
    Codex -->|"full answer, nothing truncated"| MCP
    MCP -->|"arrives as if YOU wrote it"| Claude
    Claude -->|"what Claude makes of it"| You

그 다이어그램이 명확히 보여주려는 세 가지:

  • 경로는 경계를 넘지만, 파일 내용은 넘지 않습니다. ChatGPT가 파일을 직접 열기 때문에, 페이로드를 예산에 맞출 필요도, 잘릴 것도 없습니다.

  • 모든 답변은 여전히 필요했던 맥락을 밝힙니다. 그것을 보충하고 다시 묻는 것이 오류가 아니라 정상적인 경로입니다. 조용한 가정 위에 놓인 자신 있는 답변이 이 설계가 막는 실패입니다.

  • 답변은 보고서가 아니라 당신의 차례로 돌아옵니다. Claude는 당신에게 답하듯 그 답변에 답합니다.

목차

왜 ChatGPT 데스크톱 앱을 자동화하지 않는가

가장 확실한 접근 — 데스크톱 앱의 창을 조작하고, 프롬프트를 붙여넣고, 답변을 긁어내는 것 — 이 이 분야의 잘 알려진 MCP 서버들이 하는 방식입니다. 이 사용 사례에는 막다른 길이며, 그 이유를 명시적으로 밝힐 가치가 있습니다. 직접 만들어 보기 전에는 그 이유가 분명하지 않기 때문입니다:

  • 프롬프트에는 실질적인 상한이 있습니다. 클립보드 붙여넣기로 컴포저에 들어가며, 큰 붙여넣기는 조용히 잘립니다. 대략 12k 문자가 안전한 예산입니다. 실제 질문과 그것이 의존하는 문서를 담기에는 충분하지 않습니다.

  • 답변도 잘리는데, 더 나쁘게도 보이지 않게 잘립니다. 앱의 접근성 트리에서 다시 읽어내야 하는데, 가상화된 스크롤 컨테이너는 화면 밖의 콘텐츠를 거기에 유지하지 않습니다. 긴 답변은 부분적으로만 돌아오는데 그렇게 되었다는 표시가 없습니다.

  • 화면을 점유합니다. 창에 포커스가 있어야 하고 키 입력을 보내야 합니다. 실행되는 동안 타이핑할 수 없고, 한 번에 하나의 호출이 하드 한계입니다.

  • UI 변경에 취약합니다. 렌더링된 접근성 트리는 누구도 안정적으로 유지하겠다고 약속한 인터페이스가 아니기 때문입니다.

대신 Codex CLI를 구동하면 네 가지가 모두 제거됩니다. 헤드리스로 실행되고, 디스크에서 직접 파일을 읽고, stdout으로 답변을 반환합니다. 결정적으로 ChatGPT 구독으로 인증하므로, 토큰당 과금되는 OpenAI API가 아니라 이미 지불하고 있는 요금제입니다.

요구 사항

  • Node.js 18+

  • Codex CLI, ChatGPT 계정으로 로그인된 상태:

npm install -g @openai/codex
codex login          # choose "Sign in with ChatGPT"

설치

git clone https://github.com/spe-investigator/ask-chat-mcp.git c:\src\ask-chat-mcp
cd c:\src\ask-chat-mcp
.\install.ps1 -DefaultCwd c:\src\YourProject

install.ps1은 사전 요구 사항을 확인하고, 빌드하고, Codex가 설치되어 로그인되어 있는지 보고하며, 서버를 Claude Code에 등록합니다. 멱등적입니다 — pull 후 다시 실행하세요.

Claude Code를 다시 시작하고 /mcp로 확인하세요.

도구

ask_chatgpt

매개변수

필수

의미

question

이 코드베이스를 본 적 없는 사람에게도 독립적으로 서도록 구성된 문제. 전체 기술 깊이로 작성하세요 — 독자는 또 다른 전문가입니다

files

아니요

ChatGPT가 참조할 cwd 기준 상대 경로. 전체 파일을 자유롭게 참조하세요 — 붙여넣는 것이 아니라 읽는 것입니다

cwd

아니요

읽어들이는 디렉터리. 파일 접근은 이 트리에 한정됩니다

session

아니요

스레드 제어 — 아래 참조. 일반적인 경우에는 생략

model

아니요

예: gpt-5.5. Codex 기본값을 사용하려면 생략

timeout_seconds

아니요

기본값 300

내용이 아니라 경로를 전달하세요. 그것이 핵심입니다. 페이로드 예산을 쓸 필요가 없으므로 실제 파일을 보내세요.

files는 화이트리스트가 아니라 포인터입니다. 여기서 시작하라는 뜻이며, ChatGPT는 cwd 내에서 필요한 다른 것은 무엇이든 열 수 있고, 열었을 때 알려줍니다. 따라서 불완전한 목록은 잘못된 답변을 만들기보다는 우아하게 저하됩니다 — cwd가 실제 경계입니다.

스레드

기본적으로 세션의 첫 호출은 Codex 스레드를 시작하고 이후의 모든 호출은 그 스레드를 계속하므로, ChatGPT는 각 질문을 차갑게 맞이하는 대신 이미 논의한 맥락을 유지합니다.

세션 경계는 서버 프로세스입니다. MCP 클라이언트는 세션당 stdio 서버를 생성하므로, 스레드는 메모리에 보관되며 저장소나 클라이언트별 레지스트리 키가 필요 없습니다. 새 세션은 깨끗하게 시작하고, 두 개의 동시 세션은 공유 스레드를 짓밟는 대신 독립적인 스레드를 얻습니다.

session

효과

생략

이 세션의 스레드를 계속하고, 없으면 새로 시작

new

의도적으로 깨끗한 스레드 시작

last

이전 세션에서 이 디렉터리에서 가장 최근 스레드를 이어받기

스레드 id

해당 특정 스레드 재개

last는 디렉터리 범위로 한정됩니다. Codex는 달리 지시하지 않는 한 작업 디렉터리로 기록된 세션을 필터링하기 때문입니다.

chatgpt_status

Codex가 설치되어 로그인되어 있는지, 이 세션이 어떤 스레드에 있는지 보고합니다. ask_chatgpt에 의존하기 전에 확인하고, 실패를 추측 없이 설명하는 데 사용하세요.

구성

변수

기본값

목적

ASK_CHAT_DEFAULT_CWD

서버의 cwd

호출이 디렉터리를 지정하지 않을 때 사용되는 디렉터리

ASK_CHAT_TIMEOUT_SECONDS

300

기본 타임아웃

ASK_CHAT_MODEL

Codex 기본값

기본 모델

ASK_CHAT_CODEX_BIN

codex

Codex 바이너리 경로

CODEX_HOME

~/.codex

Codex가 자격 증명을 보관하는 위치

설계 노트

읽기 전용. Codex는 파일을 편집할 수 있는 코딩 에이전트입니다. 작업 트리를 다시 쓸 수 있는 컨설팅 전문가는 기능이 아니라 책임입니다. codex exec는 이미 기본적으로 읽기 전용 샌드박스이며, 새 스레드에서는 명시적인 --sandbox read-only도 함께 전달되므로, 보장이 기본값이 유지되는 것에 의존하지 않습니다. 재개된 스레드에서는 해당 플래그를 사용할 수 없습니다 — 아래 참고.

모든 답변은 자신의 충분성을 보고합니다. 프롬프트는 ChatGPT에게 받은 맥락이 충분했는지 명시적으로 밝히고, 여전히 원하는 것이 무엇인지 — 파일, 정의, 측정값, 제약 조건 — 정확히 이름을 밝히고, 답변의 어떤 부분이 만들어야 했던 가정에 의존하는지 표시하도록 요청합니다. 이것은 들리는 것보다 중요합니다. 잘 브리핑된 모델의 실패 모드는 답변을 거부하는 것이 아니라, 아무도 모르는 틈을 중심으로 자신 있게 답변하는 것입니다. 틈에 이름을 붙이면 다음 호출은 사소해집니다. 파일을 보급하는 데 경로 하나만 들기 때문입니다.

어떤 플래그도 맹목적으로 전달되지 않습니다. 설치된 빌드는 한 번 프로브되고, 선택적 플래그는 그것이 광고할 때만 사용됩니다. Codex는 빠르게 움직이고 있습니다. 인터페이스를 추측하는 것은 이점 없이 취약하게 만들 것입니다.

execexec resume는 별도로 프로브됩니다. 동일한 옵션을 받지 않기 때문입니다 — resume--sandbox--cd를 완전히 거부합니다. 두 가지에 동일한 플래그 세트를 가정하면 인수 파싱에서 죽는 호출이 만들어지며, 이것이 발견된 방식입니다. 따라서 재개된 스레드에서 읽기 전용 보장은 codex exec의 기본값과 스레드가 생성된 정책에 의존하며, 두 번째 명시적 플래그에 의존하지 않습니다. 작업 디렉터리는 어느 쪽이든 생성된 프로세스에서 옵니다.

어느 방향에도 길이 제한이 없습니다. 프롬프트는 codex exec -를 사용하여 stdin으로 들어가므로 명령줄에 닿지 않으며 ~32k 인수 상한에 걸리지 않습니다. 답변은 --output-last-message를 통해 파일에서 읽혀지며, 진행 출력도 함께 나르는 스트림에서 파싱되지 않습니다. 진행은 stderr로 가며 진단용으로 유지됩니다.

Windows shim 처리. npm은 codex.cmd shim으로 설치하며, Node는 2024년 인수 주입 수정 이후 직접 스폰을 거부합니다. 실패한 직접 스폰은 셸을 통해 재시도됩니다. 프롬프트가 argv가 아닌 stdin으로 이동하므로, 그 재시도는 임의 텍스트인 유일한 입력에 대한 인용 위험이 아닙니다.

한계

  • Codex는 로그인되어 있어야 합니다. codex login은 대화형 브라우저 흐름입니다. 자동화할 수 없으며, chatgpt_status가 만료되었을 때 알려줍니다.

  • 파일 접근은 cwd에 한정됩니다. 의도적입니다. 검토하려는 저장소 루트를 가리키세요.

  • 빠르지 않습니다. 실제 파일에 대한 실질적인 답변은 수십 초가 걸립니다. 기본 타임아웃은 5분입니다.

  • 스레드는 세션과 함께 살고 죽습니다. 클라이언트를 다시 시작하면 새 스레드가 시작됩니다. session: "last"는 이전 스레드를 다시 이어받지만, 선택할 수 있는 이전 스레드 목록은 없습니다.

  • 스레드는 ChatGPT에 표시되지 않습니다. Codex는 ~/.codex/sessions/ 아래에 JSONL로 기록합니다. ChatGPT 사이드바나 프로젝트에는 나타나지 않습니다. 이 설계로는 그 점을 바꿀 수 없습니다 (openai/codex#21079).

-
license - not tested
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • An MCP server that gives your AI access to the source code and docs of all public github repos

  • Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer

  • Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/spe-investigator/ask-chat-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server