보안이 제대로 된 에이전트 연결을 실패로 오판하지 않는 법
에이전트가 웹사이트를 읽고 기능을 호출할 수 있는지 확인하려면 단순히 정해진 주소 몇 개만 열어보면 안 된다. 사이트는 안에 문서와 MCP 주소를 적어둘 수 있고, 그 주소는 다른 도메인에 있거나 .json 또는 .yaml 형식일 수 있다. 그래서 점검 도구는 를 읽고 그 안의 안내를 따라가야 한다.
MCP는 그냥 웹주소를 여는 방식으로 확인할 수 없고, 없이 initialize 요청을 보내야 한다. 보안 설정이 제대로 된 서버는 일반 GET 요청이나 브라우저 이 붙은 요청을 거절할 수 있으며, 이것을 실패로 보면 잘못된 판단이 된다. 가 익명 서버 요청을 막을 수도 있으므로 점검 도구는 이름이 있는 사용자 에이전트로 자신을 밝혀야 하고, 차단된 경우에는 실패가 아니라 확인 불가로 처리해야 한다.
도구가 output를 내세우면서 structuredContent를 돌려주지 않으면, 표준을 따르는 클라이언트는 /call 요청을 -32600 오류로 거절할 수 있지만 서버 로그에는 정상 200 응답처럼 보일 수 있다.
핵심 포인트
- 안에 실제 문서와 MCP 주소가 적혀 있을 수 있으므로 그 내용을 읽고 따라가야 한다.
- MCP 확인은 일반 GET 요청이 아니라 initialize 요청으로 해야 한다.
- 보안 서버가 이 있는 요청이나 단순 요청을 거절하는 것은 정상일 수 있다.
- 같은 차단 때문에 확인이 안 되면 실패가 아니라 확인 불가로 분류하는 편이 정확하다.
- output와 structuredContent가 맞지 않으면 서버는 200을 기록해도 표준 클라이언트는 호출을 거절할 수 있다.