Install
pip install markitdown-mcp누구에게 맞나
이 머신에서 문서나 웹페이지를 Markdown으로 바꿔 신뢰할 수 있는 에이전트에 넘기려는 사람에게 맞다. 근거는 이렇게 적혀 있다: markitdown-mcp는 가벼운 STDIO, Streamable HTTP, SSE 서버를 제공하고 도구는 convert_to_markdown(uri) 하나뿐이며, uri는 http:, https:, file:, data:일 수 있다.
설계상 로컬의 신뢰할 수 있는 에이전트용이다. 인증이 없고 프로세스 권한은 시작한 사용자와 같다. convert_to_markdown는 그 사용자가 읽을 수 있는 어떤 파일이든 읽을 수 있고 네트워크 데이터도 가져온다. 공유 머신에서 신뢰할 수 없는 클라이언트에 열지 마라.
근거는 클라이언트 목록을 적지 않았다. 위험을 이해하지 못했다면 HTTP/SSE를 localhost가 아닌 곳에 바인드하지 마라.
3분 만에 첫 시도
pip 주 경로를 쓰고 Docker를 주 설치로 두지 마라:
pip install markitdown-mcp
markitdown-mcp
기본은 STDIO다. HTTP/SSE가 필요할 때 근거가 주는 것은 다음과 같다:
markitdown-mcp --http --host 127.0.0.1 --port 3001
처음에는 STDIO를 쓰고 바인딩은 이 머신에 둔다.
전제: 로컬 Python/pip가 된다. 처음에는 공개 접근 권한이 있는 https: 페이지만 변환하고, 먼저 키 파일이나 내부망 file:을 넣지 마라. 지정한 URI를 읽으며 밖으로 나갈 수 있다.
설정 위치: 클라이언트 MCP의 command를 markitdown-mcp(stdio)로 둔다. HTTP는 「이 머신의 어떤 프로세스든 접근할 수 있다」를 이해한 뒤에만 연다.
낮은 위험의 첫 호출: convert_to_markdown(uri)의 uri에 공개 https:를 쓴다. 홈 디렉터리나 키를 가리키는 file:을 쓰지 말고 --host를 바꾸지 마라.
성공 신호: 도구가 그 URI에서 변환한 Markdown을 반환한다. 프로세스가 뜨지 않으면 먼저 pip 패키지 이름을 확인하고 Docker로 바꾸지 마라.
사용 사례
사례 1: 공개 웹페이지를 Markdown으로 바꾼다. convert_to_markdown를 호출하고 uri는 https:다. 근거는 이런 URI를 받는다는 것만 보장하고, 출력 양식, 크기 상한, 로그인 장벽 처리는 쓰지 않는다. 따라서 확인할 수 있는 것은 변환 텍스트를 보는 것까지다.
사례 2: 로컬 파일을 Markdown으로 바꾼다. uri는 file:이다. 서버 사용자 권한으로 디스크를 읽으며, HTTP/SSE 모드에서는 이 머신의 다른 프로세스도 같은 읽기를 유발할 수 있다. 먼저 경로에 키가 없는지 확인하라. data: URI도 변환에 들어가며 근거는 길이 제한을 쓰지 않는다. Docker 빌드는 docker build -t markitdown-mcp:latest . 다음 docker run -it --rm markitdown-mcp:latest이며 pip와 같은 주 경로가 아니다.
사용 경계
인증이 없고 권한은 시작한 사용자와 같다. HTTP/SSE는 기본으로 localhost에 바인드되지만 이 머신의 다른 프로세스나 사용자는 여전히 접근할 수 있다. 다른 NIC에 바인드하지 마라. 도구는 convert_to_markdown뿐이다. 사용자가 읽을 수 있는 파일과 네트워크 데이터를 읽을 수 있어 제로 리스크가 아니며, 되돌릴 수 있는 쓰기도 아니다. 근거에 undo는 없다. Docker와 pip를 병렬 주 설치로 두지 마라.