This package contains the official SDK tools authored by the Microsoft Common Data Service SDK team.
The included command line tools are installed in the project's bin\coretools folder.

Install-Package Microsoft.CrmSdk.CoreTools -Version
dotnet add package Microsoft.CrmSdk.CoreTools --version
<PackageReference Include="Microsoft.CrmSdk.CoreTools" Version="" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Microsoft.CrmSdk.CoreTools --version
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Microsoft.CrmSdk.CoreTools,"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install Microsoft.CrmSdk.CoreTools as a Cake Addin
#addin nuget:?package=Microsoft.CrmSdk.CoreTools&version=

// Install Microsoft.CrmSdk.CoreTools as a Cake Tool
#tool nuget:?package=Microsoft.CrmSdk.CoreTools&version=
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

These tools may be used for application and solution development. The Microsoft .NET Framework 4.6.2 must be installed on the computer where these tools are to execute.

For information about downloading the tools, see
           - Fix XML declaration and encoding when packaging in localization files
           - Support for license/service plan entities
           - Added Support to generate properties for EntitySetName, EntityCollectionName
           - Added new command line parameter to support removing the Generated Code Attribute from every class
               Command line parameter is /SuppressGeneratedCodeAttribute or /sgca for short.
           - Added Support to detect and modify the use of reserved SDK names by SolutionAware Entities.
               This should cut down on the issues seen when a solution aware entity includes a field name like "EntityLogicalName"
               Should this occur, a the class member will end up with the name "EntityLogicalName1"
           - Fixed an issue where an Empty Enum would be generated for an optionset with no members.
               Going forward, if an OptionSet exists with no members, it, and any property that utilizes it will be excluded from code gen.
           - Fixed an issue where an invalid SDK Message mapping could cause a null exception in the CrmServiceClientUtil.
               This edge case has appeared in a few environments with enough consistency to warrant a fix to the tool to handle that state.
           - Correctly roundtrip empty NavigationSettings in AppModule
           - Exception will be thrown when canvas app doesn't have any matching filename with its name
           - Fixed crash when more than one SolutionPackager was running in parallel
           - Fixed args parsing issue when args has backslash followed by a quote
           - Added support for localization of sharded components
           Fixed Authority property data loss post clone process
           Support service-side sharding of component files during extract and pack. Consequence of this when packing a solution zip: any subfolder and its files in the solution's root folder will be treated as potential component files and added to the Folders with names as bin/obj will be ignored during extract and pack.
           Support processing files longer than 260 chars
           Fix adding localization duplicates when writing resources into .resx file
           Improved performance while handling localized files
           Fixed crash when the same component file was referenced from different locations using web vs windows path to that file
           Fixed a bug with components in managed solutions when the user was not passing packagetype argument.
           - respect unmanaged SiteMap.xml if packing with '/useUnmanagedFileForMissingManaged'
           - fix name detection in EnvironmentVariable components
           - emit actionable error message when referenced formula xaml file is missing in
         Fixed a bug with how errors are handled when they are raised from ADAL 3.19+.  MFA Force Login will now work properly again.
         Added 3 new GEO's to Selection List.
           Region Name - RegionCode:
               United Arab Emirates - UAE
               South Africa - ZAF
               Germany (Go Local) - GER
           SolutionPackager: - Added anonymous telemetry to SolutionPackager; to opt out use PowerApps CLI, see:
           [PowerApps CLI telemetry](
           ADAL 3.19+ is now required for this library.  ADAL 2.x clients will need to be updated to use ADAL 3.x+
           Added Support for Current User ID login when using Online flows with oAuth ( Including constructor/connection string support )
           Added Support for ClientID Secret Auth when using oAuth flows. ( Including constructor/connection string support )

           - support for Environment Variables (definitions and values)
           - support for Connectors
           - when packing components/subcomponents that distinguish unmanaged and managed XML files (e.g. AppModuleSiteMap, AppModule, FormXml),
             then use an unmanaged file if a '*_managed.xml' file cannot be found
             This is an opt-in behavior, selected by the new command line param: '/useUnmanagedFileForMissingManaged'
           - fixed NullReferenceException when package type was not specified and packaging both managed & unmanaged
           bug fixes SolutionPackager:
           - allow relative folder paths (no longer 'invalid URL' errors)
           - RootComponentValidation for generic components now only warns, since a generic component cannot be validated
           bug fixes:
           - CustomControl: issue helpful warnings and auto-generate metadata XML for incompletely migrated PCF controls
           - CrmServiceUtil: fix its assembly version to (binary content already had 9.x functionality, but previous version showed misleadingly as being 8.x)
           SolutionPackager: pack from single AppModuleSiteMaps file for packageType=both unless an explicit AppModuleSiteMap_managed.xml file is found
           CrmSvcUtil: Added Support for China Geo
           - support extract/pack for CustomControls, their custom manifest and control resources
           - support extract/pack Flow and CanvasApp
           - support extract/pack for not yet supported components; information in Customizations.xml and component files
           will be extracted and packed without roundtrip loss, but no parsing or component-specific checks
           Fixed bug in CrmServiceClient which would cause some OnPrem connections to fail with an error "Item already added to List"
           Minor Pref Improvements
           Updated to include Fixed version of CrmServiceClient and login control for new US Geo ( US Gov High )
           Applies to CrmSvcUtil primarily
           Note .net 4.6.2 is now required as a baseline
           Fixed AppModuleSiteMap to support both unmanaged and managed local files side-by-side
           Corrected Code Sign issue on SolutionPackager
           Updated for CDS/XRM release
           Fixed an issue in SolutionPackager.exe where it was incorrectly adding a visualizations node to savedqueries nodes
      Updated for CDS/XRM release
           Updated with Xrm.Tooling.Connector support
           Added new dependencies for Xrm.Tooling.Connector.dll Adding missing file for interactive use of CrmServiceUtil.  Will enabled the /il switch. 9.0 Initial Release
           9.0 Initial Release
               Major updates to solution packager to support new component types. *note: SolutionPackager 8.x is not compatible with all component types in 9.x +
               New interfaces to support certificate based auth.
               Added support to skip discovery
               Added Clone connection support of OAuth based connections
               Added New Authentication type to support externally hosted auth.
               **Note: Interface for Xrm.Tooling.Connector is *NOT* Final. there are new API interfaces that will be surfaced before GA.
               Seveal preformance updates.
       Fix to memory leak in Microsoft.Xrm.Tooling.Connector.TraceLoggerBase.  Trace Listener collection would not be released within a process over a very long time frame over multiple connections. This would manifest as increasing memory consumption over a very long period.
       Fix cleans this up on the .dispose() call on the CrmServiceClient.
       Note: if you have built your own logger based on the Microsoft.Xrm.Tooling.Connector.TraceLoggerBase, you must call .dispose() when you are done with it to clean up the listener collection assigned to it.
       Addressed an issue with customers who use optionset type generators and or linq class access that do not have a handler to define type enum’s for optionsets.  This update will provide support for older behaviors in addition to supporting developer who use enum based optionset generators
           CrmSvcUtil.exe :
               Updated to correct version of crmsvcutil for the current version of CRM that exposes all command line switches
               Fixes in dependency mapper and that caused issues with some solutions Fix of dependency issue in nuget package. Now properly requires .net 4.5.2 as a baseline Refreshed from current release
       Fixed site map packing issue in solutionpackager.exe
       8.2.0: Removed Deprecated Assemblies and Executables. Updated to current bits. Updated the Microsoft.IdentityModel.Clients.ActiveDirectory assemblies as required by the Xrm Tooling assemblies.
       8.1.0: CRM Online 2016 Update 1
       8.1-preview: Pre-release CRM Online 2016 Update 1 UR1 (Update Rollup 1) with customer related hotfix
       8.0.2: UR1 (Update Rollup 1)
       8.0.1: GA (General Availability)
       8.0.0: RTM release

* The CrmSvcUtil.exe program has been updated with additional command line parameters. For more information, run the program with no parameters to see the online help.


This package has no dependencies.

NuGet packages (11)

Showing the top 5 NuGet packages that depend on Microsoft.CrmSdk.CoreTools:

Package Downloads
Simple and Lightweight deployment task runner for Dynamics 365
MSBuild.Xrm.SourceControl provides a simple but powerful method for extracting Dynamics 365 customisations. The extension uses PowerShell scripts that can seamlessly extract customisations from a Dynamics 365 instance and then subsequently rebuild them into a zipped Solution file ready for import when necessary. The scripts use the SolutionPackager.exe tool provided by the Dynamics 365 SDK. It supports file mappings, managed and unmanaged solutions, and the export of AutoNumber and Calendar settings. Please find the documentation through the Project Site link.
Create Dynamics 365 plugins according to SOLID software princips. This package provide the basic infrastructur for building plugins with services and inject these into the Dynamics 365 plugin pipeline.
A library with extensions to CRMSvcUtil
The package contains a library which provides some usefull classes, which can be injected in the code generation process of the CrmSvcUtil.exe. The interfaces are documented at

GitHub repositories (2)

Showing the top 2 popular GitHub repositories that depend on Microsoft.CrmSdk.CoreTools:

Repository Stars
An open-source library for building Dynamics CRM XRM solutions using Script#, jQuery & Knockoutjs.
xRM CI Framework provides you with the tools automate the build and deployment of your CRM Solution. Using the framework to implement a fully automated DevOps pipeline will allow you to deploy more frequently with added consistency and quality.

Version History

Version Downloads Last updated 16,280 4/29/2021 7,945 4/7/2021 41,894 1/6/2021 436,486 11/20/2020 317,530 7/15/2020 19,794 7/1/2020 82,244 6/12/2020 33,115 6/2/2020 35,568 4/20/2020 284 4/20/2020 228,817 3/25/2020 100,272 2/11/2020 78,322 12/18/2019 36,175 12/5/2019 19,536 11/7/2019 6,728 10/25/2019 86,347 10/16/2019 20,195 9/11/2019 88,728 5/23/2019 115,529 4/3/2019 66,851 2/28/2019 10,176 2/7/2019 122,875 9/20/2018 10,550 9/17/2018 33,542 7/6/2018 170,609 11/15/2017 2,158 10/23/2017 53,525 8/29/2017 55,152 4/12/2017 3,326 3/22/2017 1,449 3/3/2017 3,054 12/10/2016
8.2.0 5,197 11/3/2016 31,995 5/26/2016 1,111 5/9/2016
8.1.0-preview 844 4/21/2016 5,057 2/22/2016
8.0.2 790 2/20/2016
8.0.1 25,226 12/15/2015
8.0.0 2,033 12/3/2015
8.0.0-preview2 650 11/23/2015
7.1.1 5,371 8/21/2015
7.1.0 4,002 4/28/2015
7.1.0-preview 693 3/17/2015
7.0.1 3,629 3/10/2015 2,350 1/14/2015 1,025 12/3/2014 943 12/2/2014
7.0.0 1,237 10/23/2014