MCP X++ Server
MCP X++ Server
Microsoft Dynamics 365 Finance & Operations 개발을 위한 Model Context Protocol(MCP) 서버입니다. 이 도구는 MCP 표준을 통해 D365 객체 생성, 수정, 분석을 가능하게 하여 다양한 개발 환경과의 통합을 지원합니다.
날짜: September 18, 2025
상태: VS2022 서비스 통합 및 향상된 폼 생성 기능을 지원하는 정상 동작 상태
최근 업데이트 ✨
2025년 9월 19일 - 안전한 객체 삭제 기능:
🗑️ 새로운 delete_xpp_object 도구: 종속성 검증 및 캐스케이드 지원이 포함된 안전한 D365 객체 삭제
🛡️ 종속성 보호: 다른 객체가 해당 객체에 의존하는 경우 삭제를 차단하여 치명적인 변경 방지
🔄 캐시 일관성: 삭제 성공 후 검색 인덱스를 자동으로 업데이트
⚡ 높은 성능: ISingleKeyedMetadataProvider.Delete를 활용한 직접 메타데이터 공급자 통합
🌲 캐스케이드 삭제: 하위 객체 선택적 삭제 (폼 파트, 테이블 관계 등)
✅ 포괄적인 테스트: 객체 유형 전반에 걸친 전체 생성/삭제 주기 검증
2025년 9월 18일 - 배열 기반 수정 및 폼 생성 개선:
🚀 새로운 배열 전용 수정:
execute_object_modification은 이제 일관된 작업을 위해 배치 형식만 사용 가능🔄 강제 일괄 처리: 단일 작업은 하나의 요소를 가진 배열로 처리되며, 더 이상 별도 연속 호출할 필요가 없음
📊 향상된 응답 추적: 각 작업에 대한 세부 타이밍 및 오류 메시지가 포함된 성공/실패 보고
📋 모범 사례 문서화: 동일 객체에 대한 모든 수정 사항을 단일 호출로 묶는 명확한 지침
🎯 새로운 create_form 도구: 패턴 지원 및 데이터소스 연동이 포함된 특화된 폼 생성
🔧 DetailsMaster 패턴 수정: 지능형 필드 제어 생성을 통한 검증 문제 해결
🗄️ 데이터Source 강화: 배열, 문자열, 쉼표로 구분된 값 등 유연한 데이터스 지원
📋 패턴 탐색: 설명 및 요구 사항이 포함된 36개의 필터링된 폼 패턴 제공
✅ 패턴 검증: 패턴이 요구하는 필드의 자동 생성
개요
이 MCP 서버는 다음과 같은 D365 F&O 개발 기능을 제공합니다:
객체 생성: D365 클래스, 테이블, 폼, 열거형 및 544개 이상의 기타 객체 유형 지원
폼 생성: ✨ 개선됨 - 패턴 검증 및 데이터소스 통합을 갖춘 특수 목적의 폼 생성
객체 삭제: ✨ 신규 - 종속성 검증 및 캐스케이드 삭제를 지원하는 안전한 객체 삭제
객체 수정: 기존 객체에 메서드, 필드 및 기타 구성 요소 추가
객체 검사: D365 객체 분석 및 X++ 소스 코드 추출
코드 검색: 패턴 일치를 통해 D365 코드 검색
MCP 프로토콜: Claude Desktop, VS Code 및 기타다른 MCP 클라이언트와 호환
아키텍처
이 시스템은 Windows Named Pipes를 통해 통신하는 두 가지 주요 구성 요소로 이루어져 있습니다:
MCP X Server (Node.js/TypeScript)
Model Context Protocol(STDIO) 구현
객체 생성, 수정, 검색 작업을 처리
파일 탐색 및 코드베이스 인덱싱 제공
Claude Desktop 및 VS Code를 비롯한 MCP 클라이언트와 호환
D365 Metadata Service (C# .NET 4.8)
Microsoft의 D365 어셈블리와 통합
VS2022 API를 통한 객체 생성 및 수정 처리
런타임 객체 검색을 위한 동적 리플렉션 제공
Named Pipe로 통신:
mcp-xpp-d365-service
이 아키텍처는 기존 D365 개발 워크플로우와의 호환성을 유지하면서 다양한 MCP 호환 클라이언트에서 D365 개발을 가능하게 합니다.
도구 참고
서버는 D365 개발에 특화된 10개의 도구를 제공합니다:
create_xpp_object - D365 객체 (클래스, 테이블, 열거형 등) 생성 - 참고: 폼을 작성할 때는 create_form을 사용하세요
create_form - ✨ 새 기능 - 패턴 지원 및 데이터소스 통합이 포함된 특수 목적의 폼 생성
delete_xpp_object - ✨ 새 기능 - 종속성 검증 및 캐시 일치를 보장하는 안전한 D365 객체 삭제
execute_object_modification - ✨ 개선됨 - 배열 기반 일괄 처리로 객체 수정 - 모범 사례: 동일 객체의 모든 수정 작업을 그룹화
discover_modification_capabilities - 가능한 수정 방법 탐색
find_xpp_object - 이름/유형으로 특정 객체 찾기
search_objects_pattern - 와일드카드 지원 패턴 검색
inspect_xpp_object - X++ 소스 코드 추출을 포함한 객체 분석
get_current_config - 현재 설정 및 상태 확인
build_object_index - 검색 성능 최적화를 위한 색인 관리
사전 환경
Visual Studio 2022 (Community, Professional 또는 Enterprise)
Visual Studio 2022용 Dynamics 365 개발 도구
Node.js 최신 LTS 버전 권장
.NET Framework 4.8 (일반적으로 Windows에 포함)
설치
저장소를 복제합니다.
Node.js 종속 패키지를 설치합니다:
npm installVSCO2022 통합을 구성하려면 설치 스크립트를 실행합니다:
.\tools\build-and-run.ps1 -Action setup프로젝트를 빌드합니다:
.\tools\build-and-run.ps1 -Action build
사용 방법
서버 시작
다음과 같이 MCP 서버를 실행합니다:
node build/index.js서버는 VS2022 설치에서 D365 경로를 자동으로 감지합니다. 수동 설정이 필요한 경우, 다음을 사용합니다:
node build/index.js --xpp-path "C:\path\to\PackagesLocalDirectory"MCP 클라이언트 설정
VS Code
.vscode/mcp.json에서 설정합니다:
{
"servers": {
"mcp-xpp-server": {
"command": "node",
"args": ["./build/index.js"],
"cwd": "${workspaceFolder}",
"type": "stdio"
}
}
}Claude Desktop
Claude Desktop 구성 파일에 추가합니다:
{
"mcpServers": {
"mcp-xpp-server": {
"command": "node",
"args": ["path/to/mcp_xpp/build/index.js"]
}
}
}도구 참조
객체 생성 (Object Creation)
create_xpp_object
VS2022 서비스와 협력하여 D365 F&O 객체를 생성합니다.
⚠️ 중요: 폼을 만들려면 전용 create_form을 사용하세요. 특수한 패턴 지원 및 데이터소스 통합이 제공됩니다.
매개변수:
objectName(string) - D365 객체의 이름
objectType(string) - 객체 유형(AxClass, AxTable, AxEnum 등) - AxForm 제외layer(string, optional) - 애플리케이션 계층(usr, cus, var)outputPath(string, optional) - 출력 폴더(기본값: "Models")publisher(string, optional) - 회사 이름(기본: "YourCompany")version(string, optional) - 버전 번호(기본: "1.0.0.0")dependencies(array, optional) - 모델 엄성 정의properties(object, optional) - 객체별 별도 설정
예:
create_xpp_object({
"objectName": "MyCustomClass",
"objectType": "AxClass",
"layer": "usr"
})create_form ✨ 새 기능
고급 패턴 지원과 데이터소스 통합이 포함된 D365 폼을 만드는 전문 도구로, 폼 생성과 패턴 탐색을 하나의 인터페이스로 제공합니다.
매개변수:
mode(string, required) - 작업 모드:"create"- 패턴과 데이터소스로 새 폼 생성"list_patterns"
formName(string, optional) - 폼 이름 (mode='create'일 경우 필수)patternName(string, optional) - 적용할 D365 폼 패턴 (예: 'SimpleListDetails', 'DetailsMaster', 'Dialog')patternVersion(string, optional) - 패턴 버전(기본값: 'UX7 1.0')dataSources(array|string, optional) - 폼 데이터 소스로 사용할 테이블 목록modelName(string, optional) - D365 모델/패키지 이름(기본값: "ApplicationSuite")
주요 특징:
🎯 패턴 인식: 패턴이 필드를 요구하면 자동으로 필드 컨트롤을 추가합니다 (예: DetailsMaster)
🗄️ 유연한 데이터소스: 배열, 단일 문자열, 쉼표로 구분된 문자열 지원
🔍 패턴 탐색: 36개 이상의 사용 가능한 D365 폼 패턴을 설명과 함께 제공
✅ 향상된 검증: 지능적인 필드 컨트롤 창을 통해 패턴 유효성 문제 해결
예:
// Discover available patterns
create_form({"mode": "list_patterns"})
// Create simple list form with datasource
create_form({
"mode": "create",
"formName": "MyCustomerListForm",
"patternName": "SimpleListDetails",
"dataSources": ["CustTable"]
})
// Create DetailsMaster form with multiple datasources
create_form({
"mode": "create",
"formName": "MySalesOrderForm",
"patternName": "DetailsMaster",
"patternVersion": "UX7 1.0",
"dataSources": ["SalesTable", "SalesLine", "CustTable"],
"modelName": "MyCustomModel"
})
// Create dialog form without datasources
create_form({
"mode": "create",
"formName": "MyConfirmationDialog",
"patternName": "Dialog"
})기술 노트:
DetailsMaster, SimpleListDetails, ListEdit와 같은 패턴에는 데이터데이터소스가 제공될 때 자동으로 필드 컨트롤(RecId, Name, Description, Code)이 추가됩니다.
패턴 검증 문제가 해결되었습니다. 이제 패턴 요구 사항에 따라 데있고 없든 폼을 생성할 수 있습니다.
보다 나은 D365 호환성을 위해 VS2022 서비스와 직접 통합됩니다.
`delete_xpp_object ✨ 신규
종속성 검증 및 캐시 일치성을 통해 D365-개체를 안전하게 삭제하는 도구입니다. 삭제 전에 종속성을 확인함으로써 중요한 변경을 방지합니다.
매개변수:
objectName(string, required) - 삭제할 D365 객체의 이름objectType(string, required) - D365 객체 형식(AxClass, AxTable, AxForm, AxEnum, 등등)cascadeDelete(boolean, optional) - 하위 개체도 삭제(기본값: false)
주요 기능:
🛡️ 의존성 확인: 대상 객체에 다른 객체가 의존하면 삭제를 중단합니다.
🗑️ 안전한 삭제*: D365 의 ISingleKeyedMetadataProvider.Delete를 이용하여 올바르게 삭제합니다.
🔄 캐시 일치: 성공적인 삭제 후 검색 색인을 자동으로 업데이트합니다.
⚡ 빠른 성능: 최적의 속도를 위해 메타 데이터 공급자 직접 통합
🌲 고리 구조 삭제: 하위 요소(양식 부품/컨트롤 등) 선택적 삭제
예:
// Delete a custom class
delete_xpp_object({
"objectName": "MyCustomClass",
"objectType": "AxClass"
})
// Delete a table with cascade (removes dependent field groups, relations, etc.)
delete_xpp_object({
"objectName": "MyTestTable",
"objectType": "AxTable",
"cascadeDelete": true
})
// Delete a form (will fail if dependencies exist without cascade)
delete_xpp_object({
"objectName": "MyCustomForm",
"objectType": "AxForm"
})응답 형식:
{
"success": true,
"message": "Successfully deleted object: MyCustomClass (AxClass)",
"objectName": "MyCustomClass",
"objectType": "AxClass",
"cascadeDelete": false,
"dependenciesRemoved": [],
"cacheUpdate": "Success",
"performance": "156ms"
}⚠️ 안전 주의 사항:
고위험 수행: 삭제는 영구적이며 되돌릴 수 없습니다.
삭제 전에 항상
find_xpp_object로 종속성을 확인합니다.최대 안전을 위해 캐스케이드 삭제(
cascadeDelete: false)를 기본으로 사용합니다.항상 개발 환경에서 먼저 삭제를 테스트합니다.
종속성이 존재할 때 캐스케이드 플래그가 없으면, 도구는 안전 모드로 불량합니다.
캐시 업데이트로 삭제 후 즉시 검색 일관성이 유지됩니다.
일반적인 객체 유형:
AxClass- X++ 클래스 및 비즈니스 로직AxTable- 데이터 테이블과 스키마AxForm- UI 폼AxEnum- 열거 형 및 값 목록AxEdt- 확장 데이터 형식AxView- 데이터베이스 보기AxQuery- 데이터 질의AxReport- SSRS 보고서
객체 찾기
find_xpp_object
특정 이름으로 X++ 개체 위치를 찾습니다.
매개변수:
objectName(string, required) - XPP 개체의 이름
objectType(string, optional) - 객체 형식별 필터링model(string, optional) - D365 모델/패키지 이름으로 필터링
search_objects_pattern
와일드카드이 포함된 패턴 개체를 검색합니다.
매개변수:
pattern(string, required) - 패턴 (예:*및?와일드카드)objectType(string, optional) - 개체 형식 필터model(string, optional) - D365 모델/패키지 이름 필터limit(number, optional) - 최대 결과 수 (기본값: 50)format(string, optional) - 출력 형식 자세한 형식:'text'또는'json'
inspect_xpp_object
여러 검사 모드로 D365 개체를 분석합니다.
매개변수:
objectName(string, required) - X++ 개체의 이름objectType(string, optional) - D365 개체 형식inspectionMode(string, optional) - 검사 모드:summary- 객체의 콘텐츠(항목 수를 포함한 빠른 개요)properties- 모든 개체 속성을 속성 설명과 함께collection- 선택한 컬렉션 항목 (collectionName 필요)xppcode- X++ 소스 코드 추출 (codeTarget 필요)
collectionName(string, optional) -inspectionMode='collection'일 때 필수codeTarget(string, optional) -inspectionMode='xppcode'일 때 필요:methods- 모든 메서드의 소스 코드 추출specific-method- 단일 메서드 추출 (methodName 필요)event-handlers- 이벤트 처리기만 추출
methodName(string, optional) - codeTarget='specific-method' 시 필요maxCodeLines(number, optional) - 각 메서드의 소스 줄 수 제한filterPattern(string, optional) - 결과의 와일드카드 패턴 필터
예:
// Get object summary
inspect_xpp_object({"objectName": "CustTable", "inspectionMode": "summary"})
// Extract specific method source code
inspect_xpp_object({
"objectName": "SalesLine",
"objectType": "AxTable",
"inspectionMode": "xppcode",
"codeTarget": "specific-method",
"methodName": "validateWrite"
})객체 수정 (Object Modification)
execute_object_modification ✨ 일괄 처리 개선
기존 D365 개체에 배열 기반 일괄 처리를 사용하여 수정 메서드를 실행합니다. 항상 배열 형식으로 사용하세요. - 단일 작업도 하나의 요소를 가진 배열로 처리합니다.
📋 모범 사례: 동일 객체에 대한 모든 수정 작업을 여러 호출로 나누지 말고 하나의 호출로 묶어서 실행합니다. 이것은 더 나은 성능, 오류 처리 안정성 및 트랜잭션 일관성을 제공합니다.
Parameters:
objectType(string, required) - D365 객체 유형 (예: 'AxTable', 'AxClass', 'AxForm')objectName(string, required) - 수정할 기존 객체의 이름modifications(array, required) - 수정 작업 배열:methodName(string, required) - 실행할 수정 메서드parameters(object, required) - 메서드별 매개변수 포함:concreteType(string, required) - discover_modification_capabilities에서 가져온 정확한 유형Name(string) - 필드/객체 이름 ('fieldName'이 아닌 'Name' 사용)기타 D365 관련 매개변수
✅ 기능:
작업별 추적: 각 작업은 개별 성공/실패 상태를 반환합니다
상세 오류 보고: 실패한 작업에 대한 명확한 검증 메시지
순차 처리: 작업은 타이밍 정보와 함께 순서대로 실행됩니다
일괄 효율성: 단일 서비스 호출에서 여러 작업 처리
예시:
✅ 단일 필드 (요소가 하나인 배열):
execute_object_modification({
"objectType": "AxTable",
"objectName": "CustTable",
"modifications": [
{
"methodName": "AddField",
"parameters": {
"concreteType": "AxTableFieldString",
"Name": "MyCustomField",
"Label": "My Custom Field",
"HelpText": "Custom field description",
"SaveContents": "Yes",
"Mandatory": "No",
"AllowEditOnCreate": "Yes",
"AllowEdit": "Yes",
"Visible": "Yes",
"AosAuthorization": "None",
"MinReadAccess": "Auto",
"IgnoreEDTRelation": "No",
"Null": "Yes",
"IsSystemGenerated": "No",
"IsManuallyUpdated": "No",
"IsObsolete": "No",
"GeneralDataProtectionRegulation": "None",
"SysSharingType": "Duplicate"
}
}
]
})⭐ 하나의 배치에서 여러 필드 (권장):
execute_object_modification({
"objectType": "AxTable",
"objectName": "CustTable",
"modifications": [
{
"methodName": "AddField",
"parameters": {
"concreteType": "AxTableFieldString",
"Name": "CustomerCategory",
"Label": "Customer Category",
"HelpText": "Customer classification category",
"SaveContents": "Yes",
"Mandatory": "No",
"AllowEditOnCreate": "Yes",
"AllowEdit": "Yes",
"Visible": "Yes",
"AosAuthorization": "None",
"MinReadAccess": "Auto",
"IgnoreEDTRelation": "No",
"Null": "Yes",
"IsSystemGenerated": "No",
"IsManuallyUpdated": "No",
"IsObsolete": "No",
"GeneralDataProtectionRegulation": "None",
"SysSharingType": "Duplicate"
}
},
{
"methodName": "AddField",
"parameters": {
"concreteType": "AxTableFieldInt",
"Name": "CustomerPriority",
"Label": "Customer Priority",
"HelpText": "Priority level for customer",
"SaveContents": "Yes",
"Mandatory": "No",
"AllowEditOnCreate": "Yes",
"AllowEdit": "Yes",
"Visible": "Yes",
"AosAuthorization": "None",
"MinReadAccess": "Auto",
"IgnoreEDTRelation": "No",
"Null": "Yes",
"IsSystemGenerated": "No",
"IsManuallyUpdated": "No",
"IsObsolete": "No",
"GeneralDataProtectionRegulation": "None",
"SysSharingType": "Duplicate"
}
}
]
})📊 응답 형식: 이 도구는 작업별 상세 결과를 반환합니다:
{
"summary": "2 succeeded, 1 failed (3 total)",
"targetObject": "AxTable:CustTable",
"operations": [
{
"methodName": "AddField",
"success": true,
"processingTime": "371ms",
"message": "Successfully executed AddField on AxTable:CustTable"
},
{
"methodName": "AddField",
"success": false,
"processingTime": "0ms",
"error": "Parameter validation failed: Missing required parameters"
}
]
}💡 팁:
정확한 매개변수 요구사항을 얻으려면 먼저
discover_modification_capabilities를 사용하세요모든 D365 테이블 필드에는
SaveContents,Mandatory등의 매개변수가 필요합니다성능 향상을 위해 관련 수정 작업을 함께 그룹화하세요
실패한 작업 디버깅을 위해 개별 작업 결과를 확인하세요
discover_modification_capabilities
D365 객체 유형에 사용 가능한 수정 메서드를 검색합니다.
매개변수:
objectType(string, required) - 분석할 D365 객체 유형
시스템 관리
get_current_config
포괄적인 서버 구성 및 상태 정보를 반환합니다.
build_object_index
검색 가능한 객체 인덱스를 구축하거나 업데이트합니다.
매개변수:
objectType(string, optional) - 인덱싱할 특정 객체 유형forceRebuild(boolean, optional) - 전체 재구축 강제 실행
지원되는 객체 유형
지원되는 일반적인 D365 객체 유형:
AxClass - X++ 클래스
AxTable - 데이터 테이블
AxForm - 사용자 인터페이스 양식
AxEnum - 열거형
AxEdt - 확장 데이터 유형
AxView - 데이터베이스 뷰
AxQuery - 데이터 쿼리
AxReport - SSRS 보고서
AxMenuItemDisplay - 메뉴 항목
AxDataEntityView - OData 엔티티
시스템은 총 544개 이상의 객체 유형을 지원합니다.
빌드 스크립트
build-and-run.ps1 스크립트는 통합 프로젝트 관리를 제공합니다:
# Setup VS2022 integration
.\tools\build-and-run.ps1 -Action setup
# Build both TypeScript and C# components
.\tools\build-and-run.ps1 -Action build
# Run the MCP server
.\tools\build-and-run.ps1 -Action run -Target mcp
# Run the C# service
.\tools\build-and-run.ps1 -Action run -Target csharp
# Run tests
.\tools\build-and-run.ps1 -Action test
# Clean builds
.\tools\build-and-run.ps1 -Action clean예제 워크플로우
새 클래스 만들기
# Create a custom class
create_xpp_object {
"objectName": "MyBusinessLogic",
"objectType": "AxClass",
"layer": "usr"
}
# Add a method to the class
execute_object_modification {
"objectType": "AxClass",
"objectName": "MyBusinessLogic",
"methodName": "AddMethod",
"parameters": {
"methodName": "processData",
"returnType": "void",
"source": "public void processData() { }"
}
}객체 검색 및 분석
# Find customer-related objects
search_objects_pattern {
"pattern": "Cust*",
"objectType": "AxTable",
"limit": 20
}
# Analyze a specific table
inspect_xpp_object {
"objectName": "CustTable",
"objectType": "AxTable",
"inspectionMode": "summary"
}
# Extract method source code
inspect_xpp_object {
"objectName": "CustTable",
"objectType": "AxTable",
"inspectionMode": "xppcode",
"codeTarget": "specific-method",
"methodName": "validateWrite"
}기술 세부 사항
성능 특성
객체 인덱싱: 70K+ 객체를 약 30초 내에 처리
쿼리 응답 시간: 대부분의 작업에서 50ms 미만
검색 작업: 대규모 코드베이스에서 1초 미만 응답
메모리 사용량: 최적화된 SQLite 기반 캐싱
파일 유형 지원
.xpp- X++ 소스 파일.xml- 메타데이터 및 구성 파일.json- 구성 파일기타 D365 개발 파일
보안
경로 검증으로 디렉토리 트래버설 방지
구성된 D365 코드베이스로 작업 제한
리소스 관리를 위한 파일 크기 제한
모든 매개변수에 대한 입력 검증
문제 해결
일반적인 문제
"VS2022 확장 프로그램을 찾을 수 없음"
VS2022에 Dynamics 365 Development Tools가 설치되어 있는지 확인하세요
설정 스크립트 실행:
.\tools\build-and-run.ps1 -Action setup
"명명된 파이프 연결 실패"
C# 서비스가 실행 중인지 확인하세요
Windows 방화벽 설정을 확인하세요
.NET Framework 4.8이 설치되어 있는지 확인하세요
"객체를 찾을 수 없음" 오류
객체 인덱스 구축:
build_object_indexD365 코드베이스 경로 구성을 확인하세요
지정된 모델에 객체가 존재하는지 확인하세요
양식에 대한 "패턴 검증 실패"
✅ 해결됨: 이 문제는 최신 버전에서 수정되었습니다
DetailsMaster와 같은 패턴이 있는 양식은 이제 필수 필드 컨트롤을 자동으로 포함합니다
더 나은 양식 생성을 위해
create_xpp_object대신create_form도구를 사용하세요
"데이터소스 없이 양식 생성 실패"
대부분의 패턴은 데이터소스 없이도 정상 작동합니다 (예: DetailsMaster, Dialog 패턴)
패턴 요구사항을 확인하려면
"mode": "list_patterns"와 함께create_form을 사용하세요DataSources는 대부분의 패턴에서 선택 사항이지만 제공 시 기능이 향상됩니다
도움말 얻기
자세한 오류 정보는
logs/폴더를 확인하세요get_current_config를 사용하여 시스템 구성을 확인하세요GitHub 저장소에 문제를 보고하세요
기여
이 프로젝트는 기여를 환영합니다. 다음을 수행해 주세요:
저장소를 포크하세요
기능 브랜치를 만드세요
적절한 테스트와 함께 변경 사항을 적용하세요
풀 리퀘스트를 제출하세요
프로젝트가 발전함에 따라 API가 변경될 수 있습니다.
라이선스
MIT 라이선스 - 자세한 내용은 LICENSE 파일을 참조하세요.
면책 조항
이 소프트웨어는 보증 없이 "있는 그대로" 제공됩니다. 연구 및 개발 목적으로만 사용되며, 프로덕션 사용을 위한 것이 아닙니다.
중요 사항:
Visual Studio 2022 및 D365 개발 도구 필요
Microsoft API와의 통합은 공식적으로 지원되지 않습니다
기능은 버전 간에 변경되거나 중단될 수 있습니다
개발 환경에서만 사용자의 책임 하에 사용하세요
GitHub 저장소를 통해 문제를 보고하거나 개선 사항을 기여하세요.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Official Microsoft MCP Server to query Microsoft Entra data using natural language
Augments MCP Server - A comprehensive framework documentation provider for Claude Code
Hosted Amazon Seller and Vendor MCP server for Claude, ChatGPT, Cursor, Codex, Gemini, Copilot.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/masoniqbal777/Mcp-Xpp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server