Skip to main content
Glama

kobis-mcp — 영화진흥위원회(KOBIS) 오픈 API MCP 서버

영화진흥위원회 영화관입장권 통합전산망(KOBIS) 오픈 API를 Claude, Cursor 같은 MCP 클라이언트에서 쓸 수 있게 해 주는 MCP 서버입니다. FastMCP로 만들었습니다.

연결하면 이런 질문에 실제 집계 데이터로 답합니다.

  • "어제 박스오피스 1~10위 알려줘"

  • "지난주 주말 한국영화 박스오피스는?"

  • "봉준호 감독 영화 목록 보여줘"

  • "기생충 상영시간이랑 출연 배우 알려줘"

  • "서울 지역 일별 박스오피스는?"

API 키는 이 저장소에 들어 있지 않습니다. 각자 KOBIS에서 무료로 키를 발급받아 자신의 MCP 클라이언트 설정이나 .env 파일에 넣어야 합니다.

도구

도구

하는 일

주요 인자

get_daily_box_office

일별 박스오피스

target_date (기본: 어제), items (1~10), movie_type (all/diversity/commercial), nation (all/korean/foreign), area_code

get_weekly_box_office

주간·주말 박스오피스

target_date (기본: 7일 전), week_type (weekly 월일 / weekend 금일 / weekdays 월~목), 나머지는 일별과 같음

search_movies

영화 검색

movie_name, director_name, open_start_year/open_end_year, production_start_year/production_end_year, nation_code, movie_type_codes, page, per_page

get_movie_info

영화 상세 (상영시간, 장르, 감독, 배우, 관람등급, 제작·배급사)

movie_cd

search_people

영화인 검색

name, filmography, page, per_page

get_person_info

영화인 상세 (필모그래피)

people_cd

search_companies

영화사 검색

company_name, ceo_name, part_code, page, per_page

get_company_info

영화사 상세

company_cd

get_code_list

공통코드 조회 (지역·국적·영화유형 코드 찾기)

com_code — 예: 0105000000 광역지역, 2204 국적, 2201 영화유형

  • 모든 도구는 읽기 전용입니다 (readOnlyHint).

  • 날짜는 20261113, 2026-11-13 둘 다 됩니다. 일별 박스오피스는 어제까지만 집계됩니다.

  • 상세 조회는 검색 → 코드 → 상세 순서입니다. 예: search_movies("기생충") → movie_cd → get_movie_info(movie_cd).

  • 박스오피스 결과는 숫자를 정수로 바꾸고 키를 읽기 쉽게 정리합니다 (audience, audience_total, sales, sales_share_pct, rank_change, is_new 등).

Related MCP server: kosis-mcp

1. API 키 발급

  1. https://www.kobis.or.kr/kobisopenapi 에 접속해 회원가입·로그인합니다.

  2. 키 발급/관리 메뉴에서 키를 발급받습니다 (무료, 기본 하루 3,000회 호출).

2. 설치

Python 3.10 이상이 필요합니다. 둘 중 편한 방법을 고르세요.

방법 A: uvx로 바로 실행 (설치 없이)

uv가 있으면 저장소를 내려받지 않아도 됩니다.

uvx --from git+https://github.com/myungwoon/kobis-mcp kobis-mcp

방법 B: 저장소 클론

git clone https://github.com/myungwoon/kobis-mcp.git
cd kobis-mcp
python -m venv .venv
# Windows
.venv\Scripts\pip install -e .
# macOS / Linux
.venv/bin/pip install -e .

3. API 키 설정

서버는 아래 순서로 KOBIS_API_KEY를 찾고, 먼저 찾은 값을 씁니다.

  1. 환경변수 KOBIS_API_KEY — MCP 클라이언트 설정의 env 블록에 넣는 방법 (권장)

  2. KOBIS_ENV_FILE 환경변수 또는 --env-file 옵션이 가리키는 .env 파일

  3. 서버를 실행한 작업 디렉터리(또는 상위)의 .env

  4. 저장소 루트의 .env (방법 B로 클론한 경우)

.env를 쓰려면 예시 파일을 복사해 값을 채웁니다. .env는 .gitignore에 들어 있어 커밋되지 않습니다.

cp .env.example .env
KOBIS_API_KEY=발급받은_키

키 없이도 서버는 뜨지만, 도구를 호출하면 [CONFIG_ERROR]와 설정 방법을 돌려줍니다.

4. MCP 클라이언트에 연결

Claude Desktop

claude_desktop_config.json (Windows: %APPDATA%\Claude\, macOS: ~/Library/Application Support/Claude/)에 추가합니다.

uvx 사용 시:

{
  "mcpServers": {
    "kobis": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/myungwoon/kobis-mcp", "kobis-mcp"],
      "env": { "KOBIS_API_KEY": "발급받은_키" }
    }
  }
}

클론한 경우 (경로는 자신의 위치로 바꾸세요):

{
  "mcpServers": {
    "kobis": {
      "command": "C:\\path\\to\\kobis-mcp\\.venv\\Scripts\\python.exe",
      "args": ["C:\\path\\to\\kobis-mcp\\server.py"],
      "env": { "KOBIS_API_KEY": "발급받은_키" }
    }
  }
}

클론한 경우 env 블록 대신 저장소 루트의 .env에 키를 넣어도 됩니다.

Claude Code

claude mcp add kobis -e KOBIS_API_KEY=발급받은_키 -- uvx --from git+https://github.com/myungwoon/kobis-mcp kobis-mcp

Cursor 등 다른 클라이언트

command/args/env 형식은 위 Claude Desktop 예시와 같습니다. 클라이언트의 MCP 설정 파일(예: Cursor는 ~/.cursor/mcp.json)에 넣으세요.

HTTP로 실행

kobis-mcp --transport http --port 8000   # http://127.0.0.1:8000/mcp

기본은 로컬(127.0.0.1)에만 바인드합니다. 인증 기능이 없으므로 외부에 공개하려면 앞단에 인증 프록시를 두세요.

응답과 에러

실패하면 첫 줄이 대괄호 코드로 시작하고, 다음에 해볼 일을 번호로 붙입니다.

[CONFIG_ERROR] KOBIS API 키가 설정되지 않았습니다 (환경변수 KOBIS_API_KEY).
제안:
  1. https://www.kobis.or.kr/kobisopenapi 에서 키를 발급받으세요.
  2. MCP 클라이언트 설정의 "env" 에 "KOBIS_API_KEY": "발급받은키" 를 추가하거나, .env 파일에 KOBIS_API_KEY=발급받은키 를 적으세요.
  3. 설정 후 MCP 클라이언트를 재시작하세요.

코드

뜻

CONFIG_ERROR

API 키가 설정되지 않음

AUTH_ERROR

키가 틀렸거나 하루 호출 한도 초과 (KOBIS 오류 320010 등)

INVALID_PARAMETER

날짜·코드 등 인자 형식 오류

NOT_FOUND

코드에 해당하는 영화·영화인·영화사가 없음

UPSTREAM_ERROR

KOBIS 서버 장애. 대상이 없다는 뜻이 아닙니다

  • 네트워크 오류와 5xx 응답은 최대 3번까지 재시도합니다.

  • 같은 요청은 10분 동안 캐시해서 하루 호출 한도를 아낍니다.

  • API 키는 에러 메시지와 로그에 남기지 않습니다.

개발

pip install -e ".[dev]"
pytest

테스트는 KOBIS API를 목킹하므로 키 없이 돌아갑니다.

데이터 출처와 이용 조건

모든 데이터는 영화진흥위원회 KOBIS 오픈 API에서 옵니다. 데이터 이용 시 KOBIS 오픈 API 이용약관을 따르고 출처를 표기하세요. 이 프로젝트는 영화진흥위원회와 관련이 없는 비공식 도구입니다.

라이선스

MIT

Available Tools

9 tools
get_code_listGet Code ListA
Read-onlyIdempotent

KOBIS 공통코드(광역지역, 국적, 영화유형 등)를 조회합니다. 다른 도구의 코드 인자에 넣을 값을 찾을 때 씁니다.

Inputs: com_code (required). Returns: object

get_company_infoGet Company InfoB
Read-onlyIdempotent

영화사 상세 정보(대표자, 분류, 필모그래피 등)를 조회합니다.

Inputs: company_cd (required). Returns: object

get_daily_box_officeGet Daily Box OfficeA
Read-onlyIdempotent

일별 박스오피스 순위(관객수, 매출액, 누적관객 등)를 조회합니다. 기본값은 어제(KST)입니다. 오늘 이후 날짜는 집계되지 않습니다.

Inputs: items, nation, area_code, movie_type, +1 more. Returns: object

get_movie_infoGet Movie InfoB
Read-onlyIdempotent

영화 상세 정보(상영시간, 개봉일, 장르, 감독, 배우, 관람등급, 제작/배급사 등)를 조회합니다.

Inputs: movie_cd (required). Returns: object

get_person_infoGet Person InfoA
Read-onlyIdempotent

영화인 상세 정보(성별, 대표 분야, 필모그래피 등)를 조회합니다.

Inputs: people_cd (required). Returns: object

get_weekly_box_officeGet Weekly Box OfficeA
Read-onlyIdempotent

주간/주말 박스오피스 순위를 조회합니다. target_date 가 속한 주의 결과를 돌려주며, 기본값은 지난주(오늘-7일)입니다.

Inputs: items, nation, area_code, week_type, +2 more. Returns: object

search_companiesSearch CompaniesA
Read-onlyIdempotent

영화사(제작사, 배급사 등)를 검색합니다. 결과의 company_cd 로 get_company_info 를 호출할 수 있습니다.

Inputs: page, ceo_name, per_page, part_code, +1 more. Returns: object

search_moviesSearch MoviesA
Read-onlyIdempotent

영화를 검색합니다 (영화명·감독·개봉/제작연도·국적·유형). 결과의 movie_cd 로 get_movie_info 를 호출할 수 있습니다.

Inputs: page, per_page, movie_name, nation_code, +6 more. Returns: object

search_peopleSearch PeopleA
Read-onlyIdempotent

영화인(감독, 배우, 스태프)을 검색합니다. 결과의 people_cd 로 get_person_info 를 호출할 수 있습니다.

Inputs: name, page, per_page, filmography. Returns: object

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.9/5.0

    Scored across 9 tools

    Disambiguation5/5

    Each tool targets a distinct resource plus action: daily vs weekly box office are clearly separated by aggregation period, and each entity (movie, person, company) has a paired search vs detail lookup that is unambiguous. get_code_list is a clearly scoped reference tool that does not overlap with anything else.

    Naming Consistency5/5

    All nine tools follow a strict snake_case verb_noun pattern with only two verbs (get_*/search_*) used consistently by intent: search_ for discovery, get_ for detail/list retrieval. No mixed conventions or vague verbs.

    Tool Count5/5

    Nine tools is well within the ideal 3-15 range and each earns its place, forming three symmetric search/detail pairs plus box office and code lookups. Nothing appears redundant or missing from the set structurally.

    Completeness4/5

    Coverage of the KOBIS domain is solid: box office rankings, movie/person/company search and detail, and code lookup all form closed workflows with explicit ID handoffs. Minor gaps exist, such as regional box office, advance ticket/reservation stats, or monthly aggregations, but core agent workflows are not blocked.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables querying Korean official statistics from KOSIS via natural language in MCP clients like Claude Desktop, wrapping the KOSIS OpenAPI for search, data retrieval, and metadata exploration.
      MIT
    • F
      license
      Not graded
      quality
      D
      maintenance
      MCP server wrapping the Korean Film Council (KOFIC) Box Office API, enabling retrieval of daily/weekly box office data, movie search, and detailed movie information for use with Claude via a custom connector.
      -