Skip to main content
Glama
theWDY

office-editor-mcp

by theWDY

Office Document MCP 서버

EN CN

MCP Server Python License

Office 문서 처리를 위한 MCP(Model Context Protocol) 서버로, AI 어시스턴트 환경을 벗어나지 않고 MCP 클라이언트 내에서 Word, Excel, PowerPoint 문서를 생성하고 편집할 수 있게 해줍니다.

개요

Office-Editor-MCP는 Model Context Protocol 표준을 구현하여 Office 문서 작업을 도구와 리소스로 노출합니다. AI 어시스턴트와 Microsoft Office 문서 사이의 다리 역할을 하며, AI 어시스턴트를 통해 다양한 Office 문서를 생성, 편집, 서식 지정, 분석할 수 있습니다.

Related MCP server: word-doc-mcp

기능

Word 문서 작업

문서 관리

  • 메타데이터(제목, 작성자 등)가 포함된 새 Word 문서 생성

  • 텍스트 내용 추출 및 문서 구조 분석

  • 문서 속성 및 통계 보기

  • 디렉토리 내 사용 가능한 문서 목록 표시

  • 문서 복사본 생성

콘텐츠 생성

  • 다양한 수준의 제목 추가

  • 선택적 서식이 적용된 단락 삽입

  • 사용자 지정 데이터로 표 만들기

  • 비율 조정이 가능한 이미지 추가

  • 페이지 나누기 삽입

텍스트 서식

  • 특정 텍스트 섹션 서식 지정(굵게, 기울임꼴, 밑줄)

  • 텍스트 색상 및 글꼴 속성 변경

  • 텍스트 요소에 사용자 지정 스타일 적용

  • 문서 전체에서 텍스트 검색 및 바꾸기

Excel 작업

통합 문서 관리

  • 새 Excel 통합 문서 생성

  • 기존 Excel 파일 열기

  • 워크시트 추가/삭제/이름 변경

데이터 처리

  • 셀 내용 읽기 및 쓰기

  • 행/열 삽입 및 삭제

  • 데이터 정렬 및 필터링

  • 수식 및 함수 적용

PowerPoint 작업

프레젠테이션 관리

  • 새 PowerPoint 프레젠테이션 생성

  • 슬라이드 추가/삭제/재배열

  • 슬라이드 테마 및 배경 설정

콘텐츠 편집

  • 텍스트 및 그래픽 요소 추가

  • 표 및 차트 삽입

  • 애니메이션 및 전환 효과 추가

고급 기능

  • OCR 인식(이미지에서 텍스트 추출)

  • 문서 비교(문서 간 차이점 비교)

  • 문서 번역

  • 문서 암호화 및 복호화

  • 표 데이터 가져오기/내보내기(데이터베이스 연동)

설치 가이드

사전 요구 사항

  • Python 3.10 이상

  • pip 패키지 관리자

  • Microsoft Office는 PDF 내보내기, 애니메이션, 레거시 형식 등 Windows COM 기능에만 필요합니다.

  • ocr_recognize_text 사용 시 Tesseract OCR이 필요합니다.

기본 설치

# Clone the repository
git clone https://github.com/theWDY/office-editor-mcp.git
cd office-editor-mcp

# Install dependencies
pip install -r requirements.txt

저장소는 word_server.py, excel_server.py, powerpoint_server.py, general_server.py라는 4개의 독립적인 MCP 서버를 제공합니다. 필요한 서버만 구성하세요. 체크인된 .cursor/mcp.json에는 완전한 4-서버 예시가 포함되어 있습니다.

구성

Cursor에서의 구성

방법 1: UI 구성

  1. Cursor 열기

  2. 설정 > 기능 > MCP로 이동

  3. "+ 새 MCP 서버 추가" 클릭

  4. 구성 정보 입력:

    • 이름: Office Assistant(원하는 대로 수정)

    • 유형: stdio 선택

    • 명령: 서버를 실행할 전체 경로 입력, 예:

      python /path/to/office-editor-mcp/word_server.py

      참고: 실제 파일 경로로 바꾸세요.

방법 2: JSON 구성 파일(권장)

  1. 프로젝트 디렉토리에 .cursor 폴더 생성(없는 경우)

  2. 해당 폴더에 다음 내용으로 mcp.json 파일 생성:

{
  "mcpServers": {
    "office-assistant": {
      "command": "python",
      "args": ["/path/to/office-editor-mcp/word_server.py"],
      "env": {"OFFICE_EDIT_PATH": "/path/to/output"}
    }
  }
}

Claude Desktop에서의 구성

  1. Claude 구성 파일 편집:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

    • Windows: %APPDATA%\Claude\claude_desktop_config.json

  2. 다음 구성을 추가:

{
  "mcpServers": {
    "office-document-server": {
      "command": "python",
      "args": [
        "/path/to/office-editor-mcp/word_server.py"
      ]
    }
  }
}
  1. 구성을 적용하려면 Claude를 다시 시작합니다.

general_server.py가 처리하는 모든 경로는 OFFICE_EDIT_PATH 내에 있어야 합니다. OFFICE_ALLOW_DESTRUCTIVE=true가 명시적으로 설정되지 않은 한 이동 및 삭제 작업은 비활성화됩니다.

새 암호화 파일은 임의의 솔트와 Scrypt 암호 파생을 사용하는 버전 관리된 Fernet 컨테이너를 사용합니다. 기존 암호화 파일은 계속 읽을 수 있으며, 다시 암호화하여 업그레이드할 수 있습니다. 일괄 작업은 요청당 100개 파일과 16개 워커로 제한됩니다.

사용 예시

구성 후 AI 어시스턴트에 다음과 같은 명령을 내릴 수 있습니다:

Word 문서 작업

  • "제목 페이지가 포함된 'quarterly_report.docx'라는 새 문서를 만들어 줘"

  • "문서에 제목 하나와 단락 세 개를 추가해 줘"

  • "판매 데이터가 포함된 4x4 표를 삽입해 줘"

  • "2번째 단락의 'important'라는 단어를 굵고 빨간색으로 만들어 줘"

  • "'old term'의 모든 인스턴스를 'new term'으로 검색하여 바꿔 줘"

Excel 작업

  • "'financial_analysis.xlsx'라는 새 Excel 통합 문서를 만들어 줘"

  • "A1 셀에 'Quarterly Sales'를 제목으로 삽입해 줘"

  • "부서별 판매 데이터로 표를 만들고 합계를 계산해 줘"

  • "판매 데이터로 막대 차트를 만들어 줘"

  • "B열 데이터를 내림차순으로 정렬해 줘"

PowerPoint 작업

  • "'project_presentation.pptx'라는 새 프레젠테이션을 만들어 줘"

  • "'Project Overview'라는 제목의 새 슬라이드를 추가해 줘"

  • "2번째 슬라이드에 회사 로고를 삽입해 줘"

  • "제목에 플라이인 애니메이션을 추가해 줘"

API 참조

Word 문서 작업

# Document Creation and Properties
create_document(filename, title=None, author=None)
get_document_info(filename)
get_document_text(filename)
get_document_outline(filename)
list_available_documents(directory=".")
copy_document(source_filename, destination_filename=None)

# Content Addition
add_heading(filename, text, level=1)
add_paragraph(filename, text, style=None)
add_table(filename, rows, cols, data=None)
add_picture(filename, image_path, width=None)
add_page_break(filename)

# Text Formatting
format_text(filename, paragraph_index, start_pos, end_pos, bold=None, 
            italic=None, underline=None, color=None, font_size=None, font_name=None)
search_and_replace(filename, find_text, replace_text)
delete_paragraph(filename, paragraph_index)
create_custom_style(filename, style_name, bold=None, italic=None, 
                    font_size=None, font_name=None, color=None, base_style=None)

Excel 작업

# Workbook Operations
create_workbook(filename)
open_workbook(filename)
save_workbook(filename, new_filename=None)
add_worksheet(filename, sheet_name=None)
list_worksheets(filename)

# Cell Operations
read_cell(filename, sheet_name, cell_reference)
write_cell(filename, sheet_name, cell_reference, value)
format_cell(filename, sheet_name, cell_reference, **format_args)

PowerPoint 작업

# Presentation Operations
create_presentation(filename)
open_presentation(filename)
save_presentation(filename, new_filename=None)
add_slide(filename, layout=None)

문제 해결

일반적인 문제

  1. 스타일 누락

    • 일부 문서에는 제목 및 표 작업에 필요한 스타일이 없을 수 있습니다.

    • 서버는 누락된 스타일을 만들거나 직접 서식을 사용하려고 시도합니다.

    • 가장 좋은 결과를 얻으려면 표준 Office 스타일이 포함된 템플릿을 사용하세요.

  2. 권한 문제

    • 서버에 문서 경로에 대한 읽기/쓰기 권한이 있는지 확인하세요.

    • 잠긴 문서의 편집 가능한 복사본을 만들려면 copy_document 함수를 사용하세요.

    • 작업이 실패하면 파일 소유권과 권한을 확인하세요.

  3. 이미지 삽입 문제

    • 이미지 파일에는 절대 경로를 사용하세요.

    • 이미지 형식 호환성을 확인하세요(JPEG, PNG 권장).

    • 이미지 파일 크기와 권한을 확인하세요.

디버깅

환경 변수를 설정하여 상세 로깅을 활성화하세요:

export MCP_DEBUG=1  # Linux/macOS
set MCP_DEBUG=1     # Windows

구현 진행 상황

  • ✅ MCP 서버 기본 프레임워크 구축

  • ✅ AI 어시스턴트와의 성공적인 통합

  • ✅ 기본 Word 문서 작업

  • ✅ 기본 Excel 통합 문서 작업

  • ✅ 기본 PowerPoint 프레젠테이션 작업

  • ✅ 고급 기능 강화

  • ✅ 성능 최적화

  • ✅ 크로스 플랫폼 호환성 테스트

기여

기여는 환영합니다! Pull Request를 자유롭게 제출하세요.

  1. 저장소를 포크합니다.

  2. 기능 브랜치를 만듭니다(git checkout -b feature/amazing-feature).

  3. 변경 사항을 커밋합니다(git commit -m 'Add some amazing feature').

  4. 브랜치에 푸시합니다(git push origin feature/amazing-feature).

  5. Pull Request를 엽니다.

라이선스

이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.

감사의 말


참고: 이 서버는 시스템의 문서 파일과 상호 작용합니다. AI 어시스턴트나 다른 MCP 클라이언트에서 작업을 확인하기 전에 요청된 작업이 적절한지 항상 검증하세요.

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • An MCP server that integrates with Discord to provide AI-powered features.

  • MCP server for generating rough-draft project plans from natural-language prompts.

  • Presentations.AI MCP server — create designed slide decks from a topic, text, or document.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/theWDY/office-editor-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server