mcp-pandoc

MIT License
104
  • Apple

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Integrates with GitHub for issue tracking and contributions, with references to the GitHub Issues page for bug reports and feature requests.

  • Enables conversion of content to and from LaTeX format, preserving formatting and structure when transforming documents.

  • Provides specific installation and configuration instructions for macOS users, including TeX Live installation via Homebrew.

mcp-pandoc: 문서 변환 MCP 서버

공식적으로 모델 컨텍스트 프로토콜 서버 오픈 소스 프로젝트에 포함되었습니다. 🎉

개요

pandoc을 사용하여 문서 형식을 변환하는 모델 컨텍스트 프로토콜 서버입니다. 이 서버는 서식과 구조를 유지하면서 서로 다른 문서 형식 간에 콘텐츠를 변환하는 도구를 제공합니다.

mcp-pandoc은 현재 초기 개발 단계에 있습니다. PDF 지원은 개발 중이며, 서버 개선을 위해 기능 및 사용 가능한 도구가 변경 및 확장될 수 있습니다.

출처: 이 프로젝트에서는 문서 변환을 위해 Pandoc Python 패키지를 사용하여 이 프로젝트의 기반을 형성했습니다.

데모

🎥 YouTube에서 시청하세요

더 많은 내용이 나올 예정입니다...

도구

  1. convert-contents
    • 지원되는 형식 간에 콘텐츠를 변환합니다.
    • 입력:
      • contents (문자열): 변환할 소스 콘텐츠(input_file이 제공되지 않은 경우 필수)
      • input_file (문자열): 입력 파일의 전체 경로(내용이 제공되지 않은 경우 필수)
      • input_format (문자열): 콘텐츠의 소스 형식(기본값은 마크다운)
      • output_format (문자열): 대상 형식(기본값은 마크다운)
      • output_file (문자열): 출력 파일의 전체 경로(pdf, docx, rst, latex, epub 형식에 필요)
    • 지원되는 입출력 형식:
      • 가격 인하
      • HTML
      • PDF
      • docx
      • 첫 번째
      • 유액
      • 이펍
      • 텍스트
    • 참고: 고급 형식(pdf, docx, rst, latex, epub)의 경우 output_file 경로가 필요합니다.

지원되는 형식

현재 지원되는 형식:

기본 형식(직접 변환):

  • 일반 텍스트(.txt)
  • 마크다운(.md)
  • HTML(.html)

고급 형식(전체 파일 경로 필요):

  • PDF(.pdf) - TeX Live 설치가 필요합니다.
  • DOCX(.docx)
  • RST(.rst)
  • LaTeX(.tex)
  • EPUB(.epub)

참고: 고급 형식의 경우:

  1. 파일 이름과 확장자를 포함한 전체 파일 경로가 필요합니다.
  2. PDF 변환에는 TeX Live 설치가 필요합니다 (중요 요구 사항 섹션 참조 -> macOS의 경우: brew install texlive )
  3. 출력 경로가 지정되지 않은 경우:
    • 기본 형식: 변환된 콘텐츠를 채팅에 표시합니다.
    • 고급 형식: 시스템 임시 디렉토리(Unix 시스템의 경우 /tmp/)에 저장할 수 있습니다.

사용법 및 구성

게시된 것을 사용하려면

지엑스피1

⚠️ 중요 참고 사항

중요 요구 사항

  1. PDF 변환 전제 조건
    • PDF 변환을 시도하기 전에 TeX Live를 설치해야 합니다.
    • 설치 명령어:
      # Ubuntu/Debian sudo apt-get install texlive-xetex # macOS brew install texlive # Windows # Install MiKTeX or TeX Live from: # https://miktex.org/ or https://tug.org/texlive/
  2. 파일 경로 요구 사항
    • 파일을 저장하거나 변환할 때 파일 이름과 확장자를 포함한 전체 파일 경로를 제공해야 합니다.
    • 이 도구는 자동으로 파일 이름이나 확장자를 생성하지 않습니다.

예시

✅ 올바른 사용법:

# Converting content to PDF "Convert this text to PDF and save as /path/to/document.pdf" # Converting between file formats "Convert /path/to/input.md to PDF and save as /path/to/output.pdf"

❌ 잘못된 사용:

# Missing filename and extension "Save this as PDF in /documents/" # Missing complete path "Convert this to PDF" # Missing extension "Save as /documents/story"

일반적인 문제 및 솔루션

  1. PDF 변환 실패
    • 오류: "xelatex를 찾을 수 없습니다"
    • 해결 방법: 먼저 TeX Live를 설치하세요(위의 설치 명령 참조)
  2. 파일 변환 실패
    • 오류: "잘못된 파일 경로"
    • 해결 방법: 파일 이름과 확장자를 포함한 전체 경로를 제공하세요.
    • 예: /path/to/document.pdf 대신 /path/to/
  3. 형식 변환 실패
    • 오류: "지원되지 않는 형식입니다"
    • 해결 방법: 지원되는 형식만 사용하세요.
      • 기본: txt, html, markdown
      • 고급: pdf, docx, rst, latex, epub

빠른 시작

설치하다

옵션 1: claude_desktop_config.json 구성 파일을 통해 수동으로 설치

  • MacOS의 경우: open ~/Library/Application\ Support/Claude/claude_desktop_config.json
  • Windows의 경우: %APPDATA%/Claude/claude_desktop_config.json

ℹ️ 로컬로 복제한 프로젝트 경로로 바꾸세요

"mcpServers": { "mcp-pandoc": { "command": "uv", "args": [ "--directory", "<DIRECTORY>/mcp-pandoc", "run", "mcp-pandoc" ] } }
"mcpServers": { "mcp-pandoc": { "command": "uvx", "args": [ "mcp-pandoc" ] } }

옵션 2: Smithery를 통해 게시된 서버 구성을 자동으로 설치하려면

Smithery를 통해 Claude Desktop용으로 게시된 mcp-pandoc pypi를 자동으로 설치하려면 다음 bash 명령을 실행하세요.

npx -y @smithery/cli install mcp-pandoc --client claude

참고 : 로컬로 구성된 mcp-pandoc을 사용하려면 위의 "개발/미공개 서버 구성" 단계를 따르세요.

개발

건축 및 출판

배포를 위해 패키지를 준비하려면:

  1. 종속성 동기화 및 잠금 파일 업데이트:
uv sync
  1. 패키지 배포 빌드:
uv build

이렇게 하면 dist/ 디렉토리에 소스와 휠 배포판이 생성됩니다.

  1. PyPI에 게시:
uv publish

참고: 환경 변수나 명령 플래그를 통해 PyPI 자격 증명을 설정해야 합니다.

  • 토큰: --token 또는 UV_PUBLISH_TOKEN
  • 또는 사용자 이름/비밀번호: --username / UV_PUBLISH_USERNAME--password / UV_PUBLISH_PASSWORD

디버깅

MCP 서버는 stdio를 통해 실행되므로 디버깅이 어려울 수 있습니다. 최상의 디버깅 환경을 위해서는 MCP Inspector 사용을 강력히 권장합니다.

다음 명령을 사용하여 npm 통해 MCP Inspector를 시작할 수 있습니다.

npx @modelcontextprotocol/inspector uv --directory /Users/vivekvells/Desktop/code/ai/mcp-pandoc run mcp-pandoc

Inspector를 실행하면 브라우저에서 접근하여 디버깅을 시작할 수 있는 URL이 표시됩니다.


기여하다

mcp-pandoc 개선을 위한 여러분의 참여를 환영합니다! 참여 방법은 다음과 같습니다.

  1. 문제 보고 : 버그를 발견하셨거나 기능 요청이 있으신가요? GitHub 문제 페이지에서 문제를 등록해 주세요.
  2. 풀 리퀘스트 제출 : 풀 리퀘스트를 생성하여 코드베이스를 개선하거나 기능을 추가합니다.

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Pandoc을 사용하여 원활하게 문서 형식을 변환할 수 있는 MCP 서버로, Markdown, HTML, PDF, DOCX(.docx), csv 등을 지원합니다.

  1. Overview
    1. Demo
      1. Tools
        1. Supported Formats
      2. Usage & configuration
        1. ⚠️ Important Notes
      3. Quickstart
        1. Install
      4. Development
        1. Building and Publishing
        2. Debugging
      5. Contributing
        ID: xyzzgaj9bk