OpenCode MCP 서버: opencode.json에 Sume 추가

opencode.json에 원격 항목으로 Sume 호스팅 MCP 서버를 OpenCode에 추가한 뒤, OAuth로 로그인하거나 API 키를 보내고, 유료 도구는 통제하세요.

읽는 시간 5분Sume
전체 글

OpenCode에 MCP 서버를 추가하려면 opencode.json의 mcp 아래에 "type": "remote"와 서버의 url을 넣으세요. Sume의 URL은 https://mcp.sume.com/mcp입니다. 자격 증명을 넣지 않으면 OpenCode가 Sume 서버가 현재 제공하는 동적 클라이언트 등록을 통해 OAuth를 직접 실행하며, Write를 켜기 전까지 세션은 읽기 전용입니다. 아니면 headers로 Sume API 키를 보내 전체 도구 세트를 쓰세요.

OpenCode 쪽 내용은 MCP 서버와 설정 문서에서, Sume 쪽 내용은 MCP 빠른 시작, OAuth와 API 키, MCP 도구와 게이트에서 가져왔으며, 모두 2026-09-27에 확인했습니다. Sume에는 OpenCode 전용 커넥터가 없으며, 이 방식은 일반적인 원격 MCP 연결입니다. Sume 기초 페이지는 호스팅 MCP가 여전히 동작하지만 현재 주 연동 경로는 아니라고 설명합니다.

opencode.json에 Sume를 어떻게 추가하나요?

모든 프로젝트에는 전역 파일 ~/.config/opencode/opencode.json을 쓰거나, 프로젝트 루트에 opencode.json을 두세요. 프로젝트 루트의 파일이 전역 파일을 덮어씁니다. 서버에는 고유한 이름을 붙이세요. OpenCode는 서버의 도구마다 그 이름을 접두사로 붙입니다. 아래 항목은 OAuth를 씁니다.

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "sume": {
      "type": "remote",
      "url": "https://mcp.sume.com/mcp",
      "enabled": true
    }
  }
}

OpenCode는 Sume에 어떻게 로그인하나요?

OpenCode는 401 응답을 감지해 OAuth 플로를 시작하고, 서버가 지원하면 동적 클라이언트 등록을 씁니다. Sume 서버는 현재 이를 알리고 있으므로 클라이언트 ID가 필요 없습니다. 서버를 처음 쓸 때 OpenCode가 로그인을 요청하며, opencode mcp auth sume을 직접 실행해도 됩니다. 토큰은 ~/.local/share/opencode/mcp-auth.json에 저장됩니다.

Sume 동의 페이지에서 Read는 켜진 채 고정되고 Write는 기본적으로 꺼져 있습니다. Read만 있으면 세션에는 읽기 전용 도구가 보이고, generate_image 같은 유료 도구는 insufficient_scope를 반환합니다. 유료 도구를 쓰려면 동의 단계에서 Write를 켜세요. 현재 코드에서 Sume 토큰은 한 시간 동안 유효하고 리프레시 토큰 없이 발급되므로, 다시 로그인할 일이 생긴다고 생각하세요. opencode mcp debug sume은 인증 상태를 보여 주고, 연결을 테스트하고, OAuth 디스커버리를 시도합니다.

대신 API 키를 쓰려면 어떻게 하나요?

브라우저를 열 수 없는 자동화라면 키를 보내세요. Sume는 Authorization: Bearer나 x-api-key를 받으며, API 키 세션에는 쓰기·유료 도구를 포함한 전체 호스팅 도구 세트가 보입니다. OpenCode 문서는 API 키를 쓰는 서버에 "oauth": false를 쓰는 예를 보여 주며, {env:VAR} 치환을 쓰면 키를 환경 변수에 둘 수 있습니다. 설정되지 않은 변수는 빈 문자열이 됩니다.

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "sume": {
      "type": "remote",
      "url": "https://mcp.sume.com/mcp",
      "oauth": false,
      "headers": { "Authorization": "Bearer {env:SUME_API_KEY}" }
    }
  }
}

어떤 옵션이 중요하고, 도구 타임아웃이 있나요?

OpenCode의 timeout은 도구 호출이 아니라 도구 목록을 가져올 때 쓰이며, OpenCode MCP 페이지에는 도구 호출 제한이 나와 있지 않습니다. 긴 Sume Job은 호출 하나를 계속 열어 두지 않습니다. jobs_wait는 호출당 최대 55초(기본 50초) 동안 대기하므로, 에이전트는 같은 id로 나눠서 기다리고 유료 create를 다시 제출하지 않습니다. 이 패턴은 MCP 도구 호출 타임아웃: 긴 영상 Job은 jobs_wait로에 있습니다.

OpenCode MCP 서버 문서와 Sume Job과 결과 (영문) 기준, 2026-09-27 확인.
옵션OpenCode 문서 설명Sume에서는
type"remote"여야 함"remote"
url원격 MCP 서버의 URLhttps://mcp.sume.com/mcp
headers요청과 함께 보낼 헤더API 키 세션에서만
oauthOAuth 설정, 또는 OAuth 자동 감지를 끄는 falseOAuth라면 생략. 키를 쓰면 false
enabled시작할 때 서버 활성화 또는 비활성화false면 삭제하지 않고 Sume를 끔
timeout도구를 가져올 때의 타임아웃(ms). 기본값 5000도구 호출 제한이 아님

Sume 유료 도구는 어떻게 통제하나요?

  • 탐색할 때는 OAuth로 로그인하고 Write를 꺼 두세요. jobs_list, catalog_list 같은 읽기 도구는 동작하고, 유료 도구는 거부됩니다.
  • Write를 켜거나 키를 쓰면 Sume 자체 게이트가 적용됩니다. 모든 쓰기·유료 호출에는 idempotency_key가 필요하고, dry_run=true는 제출하지 않고 접수 여부와 비용을 미리 보여 줍니다. 나머지는 유료 API를 호출하는 AI 에이전트의 안전한 자동화에서 다룹니다.
  • OpenCode는 MCP 서버가 컨텍스트를 늘린다고 경고하므로, Sume가 필요 없을 때는 enabled를 false로 설정하세요. 세션을 확인하려면 에이전트에게 mcp_health를 호출한 다음 tools_list를 호출해 달라고 하세요.

출처

관련 글

연동 카테고리의 다른 글

연동 글 전체 보기

작성자 Sume