적용 대상:✅ Microsoft Fabric의 SQL 분석 엔드포인트 및 데이터 창고
원격 Fabric Data Warehouse MCP 서버는 AI 에이전트가 자연어를 사용하여 웨어하우스에서 작업할 수 있도록 하는 호스트된 MCP 엔드포인트입니다. MCP(모델 컨텍스트 프로토콜)를 기반으로 하는 이 프로토콜은 에이전트가 도구를 통해 executeSQL T-SQL 문을 실행하고, 결과를 검사하고, 실제 웨어하우스 컨텍스트에 대해 반복하는 Fabric 권한 및 보안 경계를 준수할 수 있는 제어된 방법을 제공합니다.
이 문서에서는 다음 방법을 보여줍니다.
Visual Studio Code 원격 Fabric Data Warehouse MCP 서버에 연결
전역 엔드포인트 또는 항목별 엔드포인트 중 하나를 구성합니다
GitHub Copilot 사용하여 Fabric Data Warehouse 대해 T-SQL 생성 및 실행
테스트 쿼리를 사용하여 연결 유효성 검사
필수 조건
시작하기 전에 다음 사항을 확인하세요.
Visual Studio Code: 최신 버전의 Visual Studio Code 설치합니다.
GitHub Copilot: Visual Studio Code GitHub Copilot 및 GitHub Copilot 채팅을 설치하고 로그인합니다.
Fabric Data Warehouse 액세스: 하나 이상의 Fabric Data Warehouse 또는 SQL 분석 엔드포인트에 액세스해야 합니다.
웨어하우스 권한: 에이전트에 실행하도록 요청하는 T-SQL 문을 실행하려면 필요한 Fabric 작업 영역 및 SQL 권한이 필요합니다.
웨어하우스 컨텍스트: 항목 범위 엔드포인트를 사용하려는 경우 작업 영역 ID 및 웨어하우스 항목 ID를 사용할 수 있습니다.
엔드포인트 선택
Fabric Data Warehouse MCP 서버는 사용 사례에 따라 두 가지 엔드포인트 옵션을 제공합니다. 프롬프트를 통해 유연한 웨어하우스 선택을 위한 전역 엔드포인트를 선택하거나 항목 범위 엔드포인트를 선택하여 특정 웨어하우스에 연결을 바인딩합니다.
전역 엔드포인트
Fabric Data Warehouse MCP 서버에 연결하려는 경우 전역 엔드포인트를 사용하여 프롬프트 또는 도구 인수를 통해 웨어하우스 컨텍스트를 제공합니다.
https://api.fabric.microsoft.com/v1/mcp/dataPlane/sqlEndpoint
항목별 엔드포인트
MCP 서버 연결을 특정 Fabric Data Warehouse 항목에 바인딩하려는 경우 항목 범위 엔드포인트를 사용합니다.
https://api.fabric.microsoft.com/v1/mcp/dataPlane/workspaces/<workspace-id>/items/<item-id>/sqlEndpoint
교체하십시오
<workspace-id>Fabric 작업 영역 ID를 사용합니다.<item-id>Fabric Data Warehouse 항목 ID를 사용합니다.
항목 범위 엔드포인트는 에이전트 환경을 특정 웨어하우스에 고정하고 채팅에서 웨어하우스 컨텍스트를 반복적으로 제공하지 않도록 하려는 경우에 유용합니다.
Visual Studio Code에서 설정
MCP 설정 파일에 서버 구성을 추가하여 Visual Studio Code Fabric Data Warehouse MCP 서버를 구성합니다. 유연한 웨어하우스 선택을 위한 전역 엔드포인트 또는 항목 범위 엔드포인트 중에서 선택하여 특정 웨어하우스에 연결을 바인딩합니다.
옵션 1: 전역 엔드포인트 구성
Visual Studio Code MCP 구성 파일에 다음 서버 구성을 추가합니다.
{
"servers": {
"fabric-dw-global": {
"type": "http",
"url": "https://api.fabric.microsoft.com/v1/mcp/dataPlane/sqlEndpoint"
}
}
}
구성을 저장한 후 Visual Studio Code MCP 서버를 다시 시작하거나 새로 고칩니다.
옵션 2: 항목 범위 엔드포인트 구성하기
Visual Studio Code MCP 구성 파일에 다음 서버 구성을 추가합니다.
{
"servers": {
"fabric-dw-item": {
"type": "http",
"url": "https://api.fabric.microsoft.com/v1/mcp/dataPlane/workspaces/<workspace-id>/items/<item-id>/sqlEndpoint"
}
}
}
<workspace-id> 및 <item-id>을(를) 사용자의 웨어하우스 값으로 바꾸세요.
구성을 저장한 후 Visual Studio Code MCP 서버를 다시 시작하거나 새로 고칩니다.
연결 테스트
연결을 구성한 후 설치가 작동하는지 확인합니다.
Visual Studio Code MCP 서버를 시작합니다.
MCP 서버 패널을 엽니다.
Fabric Data Warehouse MCP 서버가 연결된 것으로 표시되는지 확인합니다.
GitHub Copilot 채팅을 엽니다.
Visual Studio Code Copilot Chat 시작합니다.
에이전트 모드를 사용하도록 설정합니다.
전역 엔드포인트를 사용하는 경우 웨어하우스 컨텍스트를 제공합니다.
전역 엔드포인트를 구성한 경우 다음과 같은 프롬프트로 사용할 웨어하우스를 Copilot에 알려줍니다.
Use the Fabric Data Warehouse named SalesDW in the Sales Analytics workspace.항목 범위 엔드포인트를 구성한 경우 서버는 이미 엔드포인트 URL의 웨어하우스 항목으로 범위가 지정되어 있습니다.
질문을 합니다.
- Example:
What tables and views are in this warehouse?- Example:
Show me the top 10 products by sales revenue.도구 사용 권한을 부여합니다.
메시지가 표시되면 도구 호출을 검토하고 승인합니다
executeSQL.요청된 경우 Microsoft 자격 증명으로 인증합니다.
응답을 검토합니다.
- Copilot Fabric Data Warehouse MCP 서버를 사용하여 승인된 T-SQL 문을 실행하고 채팅에서 결과를 반환합니다.
사용 가능한 도구
Fabric Data Warehouse MCP 서버는 하나의 도구를 노출합니다.
| Tool | Description |
|---|---|
executeSQL |
Fabric Data Warehouse 대해 승인된 T-SQL 문을 실행하고 결과를 반환합니다. |
서버는 스키마 나열, 테이블 설명, 쿼리 기록 검색 또는 웨어하우스 메타데이터 검사에 대한 별도의 도구를 노출하지 않습니다. 에이전트에 T-SQL executeSQL을 생성하고 실행하도록 요청하여 이러한 워크플로를 완료할 수 있습니다.
예를 들어, 에이전트는 별도의 테이블 검색 도구를 호출하는 대신 INFORMATION_SCHEMA.TABLES 또는 기타 지원되는 시스템 뷰에 대한 쿼리와 함께 executeSQL를 사용할 수 있습니다.
샘플 프롬프트를 사용하여 유효성 검사
이러한 프롬프트를 사용하여 서버가 T-SQL을 생성하고, T-SQL을 실행하고, 결과를 설명할 수 있음을 확인합니다.
웨어하우스 개체 둘러보기
이 웨어하우스의 모든 스키마를 나열합니다.
스키마별로 그룹화된 모든 테이블과 뷰를 나열합니다.
dbo.Customers테이블의 열, 데이터 형식 및 null 허용 여부를 표시하세요.
T-SQL 생성 및 실행
수익별로 상위 10개 제품을 반환하는 T-SQL 쿼리를 작성하고 실행합니다.
테이블의 순서 상태에 따라 행 수를 계산하는 쿼리를
Orders실행합니다.지역별 매출을 표시하기 위해
Orders,Customers,Products,Regions을(를) 조인하는 쿼리를 만듭니다.
쿼리 이해 및 개선
이 T-SQL 쿼리를 실행하기 전에 수행하는 작업을 설명합니다.
결과를 변경하지 않고 쉽게 읽을 수 있도록 이 쿼리를 다시 작성합니다.
이 쿼리 패턴의 개선 사항을 제안한 다음 수정된 T-SQL을 표시합니다.
웨어하우스 활동 모니터링
이 웨어하우스에 대한 최근 쿼리 활동을 표시합니다.
확인이 필요할 수 있는 오랫동안 실행 중인 쿼리 또는 세션을 찾습니다.
최근 쿼리 실패를 요약하고 가능한 근본 원인으로 그룹화합니다.
비고
정확한 모니터링 쿼리는 웨어하우스 환경에서 사용할 수 있는 시스템 뷰에 따라 달라집니다.
보안 및 권한
Fabric Data Warehouse MCP 서버는 로그인한 사용자의 ID를 사용하고 Fabric 권한을 준수합니다. 사용자는 Fabric Data Warehouse에서 자신의 ID에 실행 권한이 부여된 SQL 문만 실행할 수 있습니다.
executeSQL 하는 도구 호출은 MCP 클라이언트에서 명시적인 사용자 승인이 필요합니다.
executeSQL를 실행하도록 허용하기 전에 생성된 T-SQL을 검토하세요. 특히 CREATE, ALTER, DROP, INSERT, UPDATE 또는 DELETE와 같은 쓰기 작업의 경우에는 더욱 그렇습니다.
프로덕션 웨어하우스에 대해 최소 권한 액세스를 사용합니다.
웨어하우스 개체를 수정하는 워크플로를 사용하도록 설정하기 전에 읽기 전용 쿼리 및 메타데이터 탐색으로 시작합니다.
Troubleshoot
Fabric Data Warehouse MCP 서버를 설정하거나 사용하는 데 문제가 있는 경우 다음 시나리오를 사용하여 일반적인 문제를 해결합니다.
MCP 서버가 연결된 것으로 표시되지 않음
MCP 구성이 올바르게 저장되고, 엔드포인트 URL이 올바른지, 변경한 후 Visual Studio Code MCP 서버를 다시 시작하거나 새로 고친지 확인합니다.
Copilot 웨어하우스를 찾을 수 없습니다.
글로벌 엔드포인트를 사용하는 경우 채팅에서 웨어하우스 컨텍스트를 제공합니다. 항목 범위 엔드포인트를 사용하는 경우 작업 영역 ID 및 항목 ID가 올바른지 확인합니다.
인증 실패
Microsoft 계정 사용하여 다시 로그인합니다. 올바른 테넌트 및 디렉터리를 사용하고 있는지 확인합니다.
사용 권한 오류로 도구 호출 실패
필요한 Fabric 작업 영역 역할, 항목 권한 및 SQL 권한이 있는지 확인합니다. 서버는 Fabric 보안을 무시하지 않습니다.
에이전트에서 스키마 또는 테이블을 나열할 수 없습니다.
서버는 executeSQL만 노출합니다. 별도의 스키마 검색 도구를 기대하는 대신 에이전트에 SQL 메타데이터 쿼리를 사용하도록 요청합니다.
Example:
Use executeSQL with INFORMATION_SCHEMA views to list the tables in this warehouse.
쿼리 결과가 예기치 않음
실행하기 전에 생성된 T-SQL을 표시하도록 Copilot에게 요청하세요. 도구 호출을 승인하기 전에 테이블 이름, 조인, 필터, 날짜 논리 및 집계 논리를 검토합니다.