Copilot Studio 에이전트가 SharePoint의 Word 문서를 편집할 수 있도록 설정하기
요약
Copilot Studio 에이전트가 MCP(Model Context Protocol) 서버인 OfficeAgent를 통해 SharePoint의 Word 문서를 직접 편집할 수 있도록 설정하는 방법을 설명합니다. 스타일, 메모, 변경 내용 추적을 유지하며 기존 문서를 수정하는 구체적인 연결 과정을 다룹니다.
핵심 포인트
- OfficeAgent MCP 서버를 사용하여 Word 문서의 스타일과 변경 내용을 유지하며 편집 가능
- Copilot Studio의 생성형 오케스트레이션 기능을 활용하여 MCP 도구 연결
- OAuth 2.0 인증을 위한 Entra 앱 등록 및 클라이언트 ID/비밀 설정 필요
- Azure에 배포된 MCP 엔드포인트를 에이전트의 도구로 추가하는 절차 안내
Copilot Studio를 사용하면 맞춤형 AI 에이전트를 쉽게 구축할 수 있습니다. 아주 짧은 시간 안에, 예를 들어 몇 가지 세부 사항만으로 표준 고객 계약서 초안을 작성하는 에이전트를 만들 수 있습니다. 하지만 작업이 단순히 빈칸을 채우는 것 이상이 되면 어려워집니다. 고객마다 다른 조항을 선택하거나, 새 문서를 만드는 대신 기존 문서를 편집하는 것은 추가 도구 없이는 쉽지 않습니다. 바로 이 지점에서 OfficeAgent가 도움이 됩니다. MCP 서버로서, 이 도구는 에이전트에게 스타일, 메모(comments), 변경 내용 추적(tracked changes)을 그대로 유지하면서 실제 Word 문서를 편집할 수 있는 도구를 제공합니다.
이전 기사에서는 OfficeAgent MCP 서버를 Azure에 배포하는 방법을 설명했습니다. 이 기사에서는 Copilot Studio 에이전트를 이에 연결하여 기존 Word 문서를 수정할 수 있도록 하는 방법을 다룹니다.
시작하기 전에 필요한 사항
1. 이전 기사에서 생성한 호스팅된 MCP 엔드포인트(endpoint). 해당 배포로부터 **테넌트 ID (tenant id)**와 **Easy Auth 앱의 클라이언트 ID (client id)**가 필요합니다.
2. Copilot Studio 에이전트 - 기존 에이전트 또는 새로운 빈 에이전트.
3. Copilot Studio가 로그인할 때 사용할 앱 등록 (app registration). Copilot Studio는 엔드포인트에 연결하기 위한 Entra 토큰을 얻기 위해 자체적인 신원(identity)이 필요합니다:
- Entra 관리 센터 (Entra admin center)에서 **앱 등록 (App registrations)**을 열고 새 등록을 생성합니다. 이름을 지정하고(예:
officeagent-copilot), 기본 설정을 유지한 채 등록합니다. **애플리케이션(클라이언트) ID (Application (client) ID)**를 복사합니다. - 앱의 인증서 및 비밀(Certificates & secrets) 페이지에서 새 클라이언트 비밀(client secret)을 생성하고 즉시 그 **값 (Value)**을 복사하세요. 이 값은 한 번만 표시됩니다.
- 나중에 이 등록에 리디렉션 URL(redirect URL)을 추가하게 됩니다. Copilot Studio가 연결 설정 중에 이를 보여줍니다.
에이전트에 MCP 서버 추가하기
- Copilot Studio에서 에이전트를 열고 **생성형 오케스트레이션 (generative orchestration)**을 사용 중인지 확인합니다 (에이전트의 설정 (Settings) 페이지 내 생성형 AI (Generative AI) 항목). MCP 도구는 클래식 오케스트레이션 (classic orchestration)에서는 사용할 수 없습니다.
- 도구 (Tools) 페이지를 열고, **도구 추가 (Add a tool)**를 클릭한 다음 Model Context Protocol을 선택합니다.
- 이름(
OfficeAgent), 짧은 설명 ("검증된 변경 계획을 통해 SharePoint의 Word 문서를 편집함"), 그리고 배포된 컨테이너 앱의 루트인 서버 URL (server URL):https://<app-url>/을 입력합니다. - 인증을 위해 OAuth 2.0을 선택합니다.
OAuth 값
이 모든 값은 배포 과정에서 생성됩니다:
| 필드 (Field) | 값 (Value) |
|---|---|
| 클라이언트 ID (Client ID) | officeagent-copilot 앱의 클라이언트 ID |
| ... |
연결 완료하기
- 마법사를 완료합니다. 이제 Copilot Studio에 이 연결에 대한 **리디렉션 URL (redirect URL)**이 표시됩니다. 이를 복사한 후, Entra 관리 센터의
officeagent-copilot등록 페이지로 돌아가 인증 (Authentication) 항목 아래에 웹 (Web) 리디렉션 URI로 추가합니다. - Copilot Studio에서 로그인을 요청하면 연결을 생성합니다. 이 단계에서 OAuth 루프가 완성됩니다. 로그인을 하고 동의하면 도구가 연결된 상태로 표시됩니다.
도구 목록에서 다음 7가지 도구를 확인할 수 있어야 합니다: inspect_document, find_in_document, preview_plan, apply_plan, register_document, remove_document, 그리고 list_connections.
첫 번째 편집
도구가 추가되었으므로, 에이전트에게 구체적인 요청을 할 수 있습니다:
https://contoso.sharepoint.com/sites/legal/Shared%20Documents/msa-draft.docx 에 있는 결제 조건(payment terms)을 30일에서 45일로 업데이트해줘.
내부적으로 에이전트는 OfficeAgent MCP 서버에 문서를 등록하고, "30일"이 나타나는 모든 위치를 찾은 다음, 수정 계획을 준비하고 이를 적용합니다.
결과는 SharePoint에 문서의 새 버전으로 저장되며, 편집 자체는 Word 변경 내용 추적 (Word tracked change) 방식으로 이루어집니다. 문서를 열면 동료의 편집 내용을 검토하듯이 내용을 확인하고, 수락하거나 거부할 수 있습니다. 에이전트가 변경 사항을 제안하면, 최종적으로 문서에 무엇을 남길지는 사용자가 결정합니다.
어떤 권한이 적용되는가
배포(deployment) 문서의 설정에 따르면, 서버는 사용자가 권한을 부여한 사이트에 대해 Sites.Selected 범위로 제한된 하나의 애플리케이션 ID (appOnly)를 사용합니다. 에이전트의 모든 사용자는 동일한 문서에 접근하게 되며, 이는 백오피스 자동화(back-office automation)에 적합합니다. 또한 제공업체는 서버가 로그인한 사용자를 대신하여 동작하고 SharePoint 권한이 사용자별로 적용되는 on-behalf-of 모드도 지원합니다. 이는 여러 사람이 공유하는 어시스턴트(assistant)를 위한 올바른 선택입니다. 배포 가이드의 ID 테이블에서 해당 모드에 필요한 사항을 확인할 수 있습니다.
이 글이 유용했다면 댓글로 알려주세요. GitHub에서 스타(star)를 눌러주시면 다른 개발자들이 이 글을 찾는 데 큰 도움이 됩니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기