WIQD로 Agent Builder 선언적 에이전트 만들기 약 60분
부동산 MCP · Outlook · 보고서 Skill 추가하기
캡처를 따라 부동산 MCP 4개, WorkIQOutlook의 메일·일정 연결, HTML 비교 보고서 Skill을 구성해요.
이번에 만들 업무 순서
부동산 자료 조회 → 매물 비교 보고서 → 고객에게 보낼 메일 초안 → 승인 후 발송 → 별도 승인 후 상담 일정 순서예요. 휴대폰의 지도·메일·달력 앱을 연결하고, 자주 쓰는 업무 순서를 저장하는 것처럼 생각해요.
PPT에는 처음부터 성공한 화면만 있는 것이 아니에요. 중간의 Graph 방식 시도와 도구 미연결 → WorkIQOutlook MCP로 전환도 순서대로 살펴봐요. Graph 앱을 만드는 과정을 모든 사람이 추가로 해야 한다는 뜻은 아니에요.
부동산 MCP 4개를 연결해요
빨간 네모의 MCP 추가 요청을 입력해요
기존 real-estate-by-wiqd 프로젝트를 열고 Copilot Chat에서 아래 내용을 요청해요. 서버 이름과 주소는 슬라이드 노트와 제공된 주소를 기준으로 정리했어요.
각 MCP가 제공하는 도구 목록과 인증 방식을 확인한 뒤 연결해요. 이름만 보고 기능을 단정하거나 임의의 로그인 정보를 넣지 않아요.
서버 목록과 추가 요청
KoreaRealtyMCP
https://realty.sallim.app/mcp
ArchHubMCP
https://mcp.gomdori.app/archhub
KoreanLawMCP
https://mcp.gomdori.app/law
GoyoRealEstateMCP
https://realestate-api.goyostudio.io/mcp
WIQD를 이용해서 MCP 서버를 이 에이전트에 추가해줘
빨간 네모의 사전 확인 내용을 읽어요
- Copilot이 프로젝트 구조, WIQD 규칙, MCP 연결 요구 사항을 확인하는 작업 내역을 읽어요.
- 기존 연결을 지우거나 다른 프로젝트를 수정하려는 것은 아닌지 확인해요.
- 서버가 요구하는 인증과 실제 제공 도구를 확인해요. URL을 안다고 모든 기능이 자동 허용되는 것은 아니에요.
- 오류가 나오면 어느 서버에서 어떤 오류가 났는지 구분해서 확인해요. 실패한 서버를 조용히 빼고 완료로 처리하지 않아요.

플러그인 이름을 구분하고 Submit을 눌러요
- 오른쪽 플러그인 이름 구분 질문을 읽어요.
- 빨간 네모의 네, 추천 이름으로 구분(권장)을 선택해요.
- Submit을 눌러 응답해요. 각 서버의 표시 이름·설명·내부 식별자를 구분하는 목적이에요.
- 이름을 정리하더라도 서버 URL과 제공자가 요구하는 인증은 임의로 바꾸지 않아요.

파일과 서버 주소를 하나씩 맞춰 봐요
- 빨간 네모의 Explorer에서 생성된 ai-plugin.json, ai-plugin_1.json, ai-plugin_2.json, ai-plugin_3.json을 확인해요. 이 파일명은 PPT 예시이며 현재 생성 방식에 따라 달라질 수 있어요.
- 가운데 파일에서 RemoteMCPServer 주소와 인증 설정을 확인하고 오른쪽 결과 표의 서버와 맞춰 봐요.
- 캡처의 No issues found는 정적 설정 검사 결과예요. 실제 서버에 로그인해 조회까지 성공했다는 뜻은 아니에요.
- 캡처의 auth None은 이 예제 설정이에요. 모든 MCP를 무조건 인증 없음으로 설정하지 말고 각 제공자의 요구 사항을 따라요.

메일·일정 연결을 요청하고 방식을 구분해요
빨간 네모의 Outlook 기능 요청
메일과 캘린더 기능을 요청하는 장면이에요. 화면의 입력은 말줄임표로 잘려 있어 전체 원문을 복원할 수 없어요. 아래는 목적을 명확히 적은 실습용 보완 프롬프트예요.
우리가 원하는 것은 개발 중 Copilot만 쓰는 도구가 아니라, 완성한 real-estate-by-wiqd 에이전트가 사용할 Outlook 연결이에요.
실습용 보완 프롬프트 · PPT의 잘린 원문과 구분
WIQD로 이 Microsoft 365 Copilot 에이전트에 Outlook 메일 발송과 캘린더 일정 생성 기능을 추가하고 싶어. 코딩 도우미용 Work IQ 연결과 최종 에이전트용 도구를 구분해줘. 내 조직 카탈로그에서 사용 가능한 Work IQ Outlook 커넥터를 먼저 확인하고 실제 selector, 제공 도구, 인증과 필요한 권한을 알려줘. URL이나 OAuth ID를 추측하지 말고 변경 계획을 먼저 보여줘. 기존 부동산 MCP 4개는 유지하고, 아직 로그인 동의·메일 발송·일정 생성은 하지 마.
빨간 네모의 테스트 요청과 참고 화면
이어 “이거 잠깐 봐봐 이거보니 힌트가 될듯한데”라고 참고 화면을 보여주는 장면이에요. Copilot이 기존 메일 관련 구성과 현재 계정을 확인해요.
여기서 “테스트”라고만 말하면 실제 발송까지 시도할 수 있어요. 실습에서는 먼저 조회·연결 점검만 하고 메일과 일정은 만들지 않는다고 범위를 정해요.
화면의 원문 프롬프트
그럼 일단해보고 테스트를 해보자!!
참고 화면을 함께 보여준 요청
이 문장을 사용할 때는 비교할 참고 화면도 함께 첨부해요. 참고 화면을 이해하는 단계와 실제 설정 변경은 구분해요.
참고 화면과 함께 입력한 원문
이거 잠깐 봐봐 이거보니 힌트가 될듯한데슬라이드 노트: Work IQ가 아닌 Graph 방식이에요
슬라이드 노트에는 “여기서는 Work IQ MCP가 아니라 Entra 앱을 만들고 Graph sendMail OpenAPI 액션을 WIQD 에이전트에 붙이는 절차”라고 적혀 있어요.
Entra 앱은 로그인과 권한을 다루는 등록이고, Graph OpenAPI는 Outlook 작업을 호출하는 또 다른 연결 방식이에요. WorkIQOutlook MCP와 같은 방식이라고 섞어 설명하지 않아요.
이 구간은 다른 방식의 연결을 조사한 기록이에요. 최종 WorkIQOutlook 경로로 진행한다면 이 Graph 앱 등록을 별도 필수 단계로 반복하지 않아요.

권한 요청을 등록하는 것과 동의는 달라요
빨간 네모의 작업 내역은 Entra 앱과 Mail.Send, Calendars.ReadWrite 위임 권한 요청을 준비하는 화면이에요. 메일을 보내고 일정을 다루기 위한 권한이에요.
슬라이드 노트에도 권한 요청만 설정했고, 실제 동의·메일 발송은 아직 하지 않았다고 적혀 있어요. 권한 이름이 보인다고 바로 사용할 수 있는 것은 아니에요.
자신의 조직에서 직접 Graph 방식을 선택하는 경우에만 관리자와 등록·최소 권한을 확인해요. 남의 앱 ID나 인증 정보를 복사하지 않아요.

액션 생성과 프로비저닝 결과를 읽어요
- 빨간 네모의 ai-plugin_4.json 확인 카드와 Graph 액션 구성 결과를 읽어요.
- 정적 검증과 local 범위 프로비저닝 응답을 구분해서 확인해요.
- 프로비저닝은 사용할 환경에 앱 구성을 준비하는 단계예요. 메일 발송·일정 생성 성공을 뜻하지 않아요.
- 현재 프로젝트가 최신 plugin-first인지 PPT의 agent-first인지 확인하고 해당 WIQD 작업 흐름을 따라요. 다른 흐름의 명령을 섞지 않아요.

로그인 오류와 도구 미연결을 확인해요
로그인은 본인이 완료한 뒤 확인해요
- 빨간 네모의 Microsoft Verify your identity 화면에서 로그인한 계정과 조직을 확인해요.
- MFA 오류가 보이면 먼저 본인이 인증을 해결해요. 오류 상태에서 성공했다고 넘기지 않아요.
- 오른쪽 로그인 완료 폼의 True는 실제 로그인 완료를 확인한 경우에만 선택해요. 아직이면 False나 해당 안내에 따라 중단·재시도해요.
- 인증 코드나 비밀번호를 Copilot에 붙여 넣지 않아요. 조직 정책 문제는 관리자에게 확인해요.

아무것도 보내지 않고 필요한 정보만 물어요
슬라이드 노트는 웹페이지를 연 뒤 사용자가 직접 로그인하고, 준비된 프롬프트를 입력한 흐름을 설명해요. 실제 실습에서도 로그인은 본인이 해요.
빨간 네모의 결과는 메일·일정 도구를 찾지 못한 상태예요. 로그인이 됐더라도 도구가 패키지와 현재 대화에 연결되지 않았을 수 있어요.
이 상태에서 “보냈다”고 말하거나 같은 발송을 반복하지 않아요. 다음 화면처럼 연결 방식, 도구 등록과 배포된 버전을 확인해요.
화면의 원문 테스트 프롬프트
메일 발송 기능을 사용하고 싶어요. 아직 수신자, 제목, 본문은 정하지 않았습니다. 아무것도 보내거나 일정을 만들지 말고 필요한 정보를 안내해 주세요.
WorkIQOutlook MCP로 연결을 바꿔 점검해요
빨간 네모의 비교 결과와 교체된 연결
화면에서는 작동 중인 다른 에이전트가 WorkIQOutlook 원격 MCP를 사용하고, 이번 에이전트는 별도 Graph OpenAPI를 사용한 차이를 발견해요. 슬라이드 노트도 “WorkIQOutlook MCP 연결”이라고 적혀 있어요.
기존 부동산 MCP 4개는 유지하고, 메일·일정 연결 부분만 확인해요. 왼쪽 파일의 WorkIQOutlook 이름과 fetch, get_schema, search_paths, do_action 같은 도구 구성을 살펴봐요.
다른 에이전트의 OAuth ID나 등록 정보를 내 프로젝트에 그대로 복사하지 않아요. 내 조직 카탈로그의 실제 selector와 인증 정의를 확인해 재사용 가능한 연결인지 점검해요.
화면의 원문 프롬프트
확인해봐 ! 다른 에이전트 된단말이야!!! 캘린더 이메일 보내기도 돼
실습에서는 비교할 항목과 변경 범위를 구체적으로 적어요
원문은 참고 에이전트를 함께 보며 나눈 대화예요. 처음 따라 할 때는 아래처럼 연결 확인과 변경 계획을 구체적으로 요청하면 좋아요.
실습용 보완 프롬프트 · 연결 비교 후 변경 계획 확인
이 에이전트의 Outlook 연결을 점검해줘. 조직 카탈로그에서 사용 가능한 WorkIQOutlook/Work IQ Outlook 커넥터를 찾아 실제 selector와 제공 도구, 인증 정의를 확인해줘. 현재 Graph OpenAPI 방식과 차이를 설명하고, 필요하면 메일·일정 연결만 교체하는 계획을 보여줘. 부동산 MCP 4개는 유지해. 다른 에이전트의 OAuth ID나 비밀값을 복사하지 마. 내가 계획을 확인하기 전에는 변경·동의·발송·일정 생성을 하지 마.진단 요청 → Sign in → 도구·스키마 확인
- 1. 진단 요청: 아래 프롬프트로 실제 발송 없이 필요한 입력 구조만 확인해요.
- 2. Sign in: 빨간 네모의 로그인 버튼을 누르고 연결 대상과 계정을 본인이 확인해요.
- 3. 결과 확인: 도구를 찾았는지, 인증이 필요한지, 스키마 조회가 성공했는지 읽어요.
- 아래 도구 이름과 경로는 PPT 연결에서 사용한 예예요. 현재 커넥터가 제공하는 목록·스키마와 다르면 억지로 호출하지 않고 실제 도구 정의를 확인해요.
화면의 원문 연결 진단 프롬프트
연결 진단만 해주세요. 메일을 발송하거나 일정을 생성하지 말고 do_action/create_entity는 절대 호출하지 마세요. WorkIQOutlook get_schema로 path=/me/sendMail, operationType=action 과 path=/me/events, operationType=create 의 실제 스키마를 각각 조회해주세요. 조회가 되면 필수 입력 필드만 간단히 알려주고, 인증이 필요하거나 오류가 나면 원문 오류를 알려주세요.
권한 동의 화면은 내용을 읽고 결정해요
- 빨간 네모 안의 앱 이름·게시자·로그인 계정·요청 권한을 읽어요. 캡처에는 Real Estate by WIQD Graph Actions라는 앱이 보여요.
- 메일 발송, 달력 접근, 로그인 유지 등의 권한이 보여요. 업무에 필요한 범위인지, 조직이 승인한 앱인지 확인해요. Microsoft가 게시한 앱이 아니라는 안내도 확인해요.
- 캡처의 Consent on behalf of your organization은 조직 전체를 대신한 동의예요. 일반 실습자가 그대로 체크해서는 안 돼요. 권한 있는 관리자의 정책과 승인이 필요한 범위예요.
- 허용할 이유를 이해했고 적절한 권한이 있을 때만 본인이 동의해요. 앱이나 권한이 예상과 다르면 취소하고 담당자에게 확인해요.
- 이 화면은 PPT에서 등장한 Graph 앱의 동의 예시예요. 모든 WorkIQOutlook 연결에 같은 앱 이름·동의 화면이 나온다고 단정하지 않아요.

메일 결과를 확인하되 증거를 나눠 봐요
M365 Copilot의 에이전트 대화에서 메일 발송과 보낸 편지함 기록을 확인했다고 응답한 화면이에요. 수신자, 제목, 시간 등 결과를 확인해요.
하지만 대화 응답 캡처만으로 고객 수신함 도착까지 확정할 수는 없어요. 실습은 본인 테스트 주소로 하고, Outlook 보낸 편지함과 실제 수신함에서 각각 확인해요.
이 장면은 캘린더 일정 생성 성공의 증거는 아니에요. 일정은 별도 승인 후 실제 캘린더에 생성됐는지 확인해야 해요. 응답만 보고 메일과 일정이 모두 완료됐다고 쓰지 않아요.

보고서 → 메일 → 상담 일정 Skill을 만들어요
Skill 종류 선택 → 할 일 입력 → 생성 파일 확인
- Copilot이 Skill 종류를 물으면 Real Estate 에이전트 안에 넣는 Agent Skill을 선택해요. 코딩 도우미에게만 적용되는 Skill과 구분해요.
- 할 일에는 매물 비교 보고서를 만든 뒤 고객에게 메일 발송하고 상담 일정 잡기를 입력해요.
- 왼쪽에서 생성된 appPackage/skills/property-report-outreach/SKILL.md를 열어요.
- 이름, description의 실행 조건, 업무 순서와 각 쓰기 작업 전 사용자 확인 규칙을 읽어요.
- 폴더 안에 파일이 있다는 것뿐 아니라, 대상 에이전트의 Skill 참조와 패키지에 포함됐는지도 확인해야 해요.
화면의 원문 프롬프트
그럼 이제 너 스킬 Skills도 만들어줄 수 있어?
HTML 파일을 첨부하고 슬라이드 노트의 프롬프트를 입력해요
Copilot Chat에 제공된 자동차 영업매출·시장 경쟁력 Europe Dashboard HTML 파일을 첨부해요. 입력창의 첨부 버튼이나 파일 끌어놓기를 이용하고, 파일 이름이 표시됐는지 확인해요.
아래 내용은 화면에 일부 보이는 요청을 추측한 것이 아니라 슬라이드 노트에 적힌 프롬프트예요. “프롬프트:” 표시는 빼고 입력 내용을 담았어요.
- 빨간 네모의 HTML 첨부와 요청 내용을 확인해요. 파일을 첨부하지 않고 “이 HTML처럼”이라고만 말하면 디자인 기준이 전달되지 않을 수 있어요.
- 템플릿은 진한 남색 배경·라임색과 청록색 포인트·카드와 차트·글꼴 구성을 참고해요. 홈페이지 교재는 기존 홈페이지 폰트를 유지하고, 생성할 보고서는 첨부 HTML의 디자인을 따르는 거예요.
- 자동차 판매량·브랜드·매출 숫자를 부동산 데이터인 것처럼 쓰지 않아요. 비교 단지, 실거래 자료, 면적, 거래일, 출처와 기준일로 바꿔요. 없는 항목은 N/A와 이유를 적어요.
- 교차 필터링은 단지나 면적을 고르면 관련 표와 차트가 함께 좁혀지는 거예요. 교차 강조는 전체 비교를 남겨 둔 채 선택한 부분을 눈에 띄게 보여주는 거예요.
- 단일 파일 HTML은 필요한 화면 코드와 데이터를 한 파일에 담는 방식이에요. 인터넷 없이도 작동해야 한다면 외부 파일 의존성, 내장 라이브러리의 라이선스와 실제 브라우저 동작도 확인해요.
- report-template.html 같은 참고 파일이 생성되면 내용과 포함 경로를 확인해요. 다운로드·메일 첨부는 실제 런타임과 도구가 지원하는지 별도로 시험해야 해요.
슬라이드 노트의 원문 프롬프트
매매 매물 비교 보고서를 HTML로 만들고 다운로드 받을 수있게 첨부하여 고객에게 메일 발송하고 관련 일정 잡는 Skills를 만들어줘!!
보고서 만들때 HTML로 만들어주고 이 HTML의 디자인 색상 폰트 테마를 똑같이 따라해주고 데이터만 변경해줘! 인터렉티브하게 애니메이션 움직이듯이 !! 그리고 교차 필터링 (Cross- filtering 및 교차 강조 표시)사용해서 인터랙션 할 수있게 해줘! 그리고 단일파일 HTML 형식으로 해주고 다운로드 받아서 이메일로 첨부 할 수 있게 해줘
실습용 보완 · Skill에 실행 경계와 검증 순서를 더해요
원문의 목표는 유지하되, 실제 고객에게 잘못 보내지 않도록 아래 조건도 함께 요청해요. 지침만 추가하면 파일 다운로드나 메일 첨부 기능이 생기는 것은 아니에요.
실습용 보완 프롬프트 · 승인과 기능 확인 포함
property-report-outreach Skill의 업무 순서를 다음처럼 정리해줘.
1. 비교 단지, 매매/전월세, 면적, 기간, 고객과 상담 목적을 확인해.
2. 연결된 부동산 MCP의 실제 조회 결과만 사용하고, 출처·조회일·거래 기준일을 표시해. 없는 자료는 N/A로 적고 가격을 지어내지 마.
3. 첨부한 자동차 HTML의 디자인과 상호작용 구조만 재사용하고, 데이터와 문구는 부동산 비교에 맞게 바꿔. 실제로 작동하는 필터와 교차 강조를 확인해.
4. 현재 M365 Copilot 런타임에서 HTML 파일 생성·다운로드·메일 첨부가 지원되는지 먼저 확인해. 지원하지 않으면 불가능한 단계와 가능한 대안을 정확히 알려줘. 만들지 않은 파일이나 다운로드 링크를 지어내지 마.
5. 메일 수신자·제목·본문·첨부파일을 보여주고 명시적으로 승인받은 뒤 한 번만 발송해.
6. 상담 일정은 한국 시간의 정확한 날짜·시작/종료 시간·참석자·제목을 별도로 확인하고 승인받은 뒤 생성해. "내일"은 절대 날짜로 바꿔 다시 확인해.
7. 각 도구 결과를 확인하고 실패하면 실패한 단계와 오류를 알려줘. 앞 단계가 실패했는데 나머지를 완료했다고 말하거나 중복 발송하지 마.
8. Skill 폴더·frontmatter 이름, 대상 에이전트 참조, 패키지 포함 여부와 실제 호출 가능 여부를 각각 검증해.
아직 실제 메일 발송·일정 생성·공유·게시는 하지 말고 변경 내용과 검증 결과를 보여줘.