MCP 문서 관리

메뉴

Excel

Excel

Excel MCP 서버는 Microsoft Excel 스프레드시트와의 통합을 제공하여 데이터 조작, 분석, 시각화 기능을 LLM에 제공합니다. 이 서버를 통해 스프레드시트의 데이터를 읽고 쓰며, 수식 적용, 서식 지정, 차트 생성, 피벗 테이블 조작 등 Excel의 다양한 기능을 활용할 수 있습니다. 특히 데이터 기반 분석, 재무 모델링, 보고서 자동화 등의 작업에 유용합니다.

특징

  • 파일 관리: Excel 파일 생성, 열기, 저장 및 내보내기
  • 데이터 읽기/쓰기: 셀, 범위, 워크시트 단위의 데이터 접근 및 조작
  • 워크시트 관리: 워크시트 추가, 삭제, 복사, 이름 변경 등
  • 수식 작업: 수식 적용, 계산, 함수 사용 지원
  • 서식 지정: 셀 서식, 조건부 서식, 스타일 적용
  • 차트 생성: 다양한 유형의 차트 생성 및 수정
  • 피벗 테이블: 데이터 분석을 위한 피벗 테이블 생성 및 조작
  • 데이터 필터링: 데이터 필터링, 정렬, 고급 필터 적용
  • 매크로 지원: VBA 매크로 실행 및 자동화 작업
  • 템플릿 관리: 보고서 및 분석 템플릿 생성 및 적용

API

도구

파일 관리 도구

  • create_workbook: 새 Excel 워크북 생성
  • 입력: 파일 이름, 템플릿(선택적)
  • 출력: 생성된 워크북 ID 및 경로

  • open_workbook: 기존 Excel 파일 열기

  • 입력: 파일 경로
  • 출력: 로드된 워크북 ID 및 메타데이터

  • save_workbook: 현재 워크북 저장

  • 입력: 워크북 ID, 저장 경로(선택적), 형식(xlsx, csv 등)
  • 출력: 저장 결과 및 파일 정보

데이터 조작 도구

  • read_range: 셀 범위 데이터 읽기
  • 입력: 워크북 ID, 워크시트 이름, 범위(e.g. "A1:D10")
  • 출력: 셀 데이터 배열

  • write_range: 셀 범위에 데이터 쓰기

  • 입력: 워크북 ID, 워크시트 이름, 범위, 데이터 배열
  • 출력: 쓰기 작업 결과

  • apply_formula: 수식 적용

  • 입력: 워크북 ID, 워크시트 이름, 범위, 수식
  • 출력: 수식 적용 결과

워크시트 관리 도구

  • add_worksheet: 새 워크시트 추가
  • 입력: 워크북 ID, 워크시트 이름
  • 출력: 생성된 워크시트 ID

  • rename_worksheet: 워크시트 이름 변경

  • 입력: 워크북 ID, 현재 이름, 새 이름
  • 출력: 이름 변경 결과

  • delete_worksheet: 워크시트 삭제

  • 입력: 워크북 ID, 워크시트 이름
  • 출력: 삭제 상태

서식 도구

  • apply_formatting: 셀 서식 적용
  • 입력: 워크북 ID, 워크시트 이름, 범위, 서식 옵션(폰트, 색상, 테두리 등)
  • 출력: 서식 적용 결과

  • apply_conditional_format: 조건부 서식 적용

  • 입력: 워크북 ID, 워크시트 이름, 범위, 조건, 서식
  • 출력: 조건부 서식 적용 결과

차트 및 분석 도구

  • create_chart: 차트 생성
  • 입력: 워크북 ID, 워크시트 이름, 데이터 범위, 차트 유형, 옵션
  • 출력: 생성된 차트 ID 및 정보

  • create_pivot_table: 피벗 테이블 생성

  • 입력: 워크북 ID, 소스 데이터 범위, 대상 위치, 행/열/값 필드
  • 출력: 생성된 피벗 테이블 정보

  • apply_data_filter: 데이터 필터 적용

  • 입력: 워크북 ID, 워크시트 이름, 범위, 필터 기준
  • 출력: 필터 적용 결과

사용 방법

설치

# npm을 통한 설치
npm install -g excel-mcp-server

# 또는 GitHub 저장소에서 직접 설치
git clone https://github.com/author/excel-mcp-server
cd excel-mcp-server
npm install

필요 조건

  • Windows 환경: Microsoft Excel이 설치되어 있어야 합니다.
  • macOS/Linux 환경: Excel Online API 연결을 위한 Microsoft 계정 또는 ExcelJS와 같은 라이브러리 사용

구성

Claude Desktop에서 이 서버를 사용하려면 다음과 같이 설정할 수 있습니다:

{
  "mcpServers": {
    "excel": {
      "command": "npx",
      "args": ["-y", "excel-mcp-server"],
      "env": {
        "EXCEL_API_KEY": "YOUR_API_KEY",
        "WORKBOOKS_DIRECTORY": "/path/to/workbooks"
      }
    }
  }
}

사용 예시

// 새 워크북 생성
const workbook = await create_workbook({
  filename: "sales_analysis.xlsx"
});

// 데이터 작성
await write_range({
  workbookId: workbook.id,
  worksheet: "Sheet1",
  range: "A1:D1",
  data: <a href="/document/"Date", "Product", "Quantity", "Price"" class="internal-link">"Date", "Product", "Quantity", "Price"</a>
});

await write_range({
  workbookId: workbook.id,
  worksheet: "Sheet1",
  range: "A2:D6",
  data: [
    ["2025-01-15", "Laptop", 5, 1200],
    ["2025-01-16", "Monitor", 10, 300],
    ["2025-01-17", "Keyboard", 15, 80],
    ["2025-01-18", "Mouse", 20, 25],
    ["2025-01-19", "Headset", 8, 100]
  ]
});

// 수식 적용
await apply_formula({
  workbookId: workbook.id,
  worksheet: "Sheet1",
  range: "E1",
  formula: "Total"
});

await apply_formula({
  workbookId: workbook.id,
  worksheet: "Sheet1",
  range: "E2:E6",
  formula: "=C{row}*D{row}"
});

// 차트 생성
await create_chart({
  workbookId: workbook.id,
  worksheet: "Sheet1",
  dataRange: "A1:E6",
  chartType: "column",
  chartOptions: {
    title: "Sales by Product",
    xAxis: { title: "Product" },
    yAxis: { title: "Total Sales" }
  },
  position: {
    sheet: "Sheet1",
    topLeft: "G2"
  }
});

// 워크북 저장
await save_workbook({
  workbookId: workbook.id,
  path: "/path/to/sales_analysis.xlsx"
});

연결된 구성 요소