Skip to content

DYN-10553: Bundle DynamoMCP as built-in package#17162

Closed
johnpierson wants to merge 2 commits into
DynamoDS:masterfrom
johnpierson:bundle-dynamomcp-builtin-package
Closed

DYN-10553: Bundle DynamoMCP as built-in package#17162
johnpierson wants to merge 2 commits into
DynamoDS:masterfrom
johnpierson:bundle-dynamomcp-builtin-package

Conversation

@johnpierson

@johnpierson johnpierson commented Jun 16, 2026

Copy link
Copy Markdown
Member

Purpose

DYN-10553 — Bundle DynamoMCP as a Dynamo Built-In Package (epic DYN-10205), using the same extern/ + MSBuild copy mechanism as TuneUp (DYN-10450 pattern), so MCP server support ships with Dynamo Core for all users (including those without Package Manager access).

Delivery approach: This PR implements the TuneUp-style vendoring path (extern/DynamoMCP/AfterBuildOps copy) rather than the NuGet-feed approach described in DYN-10553. That matches how TuneUp and the AA built-in work are integrated and avoids an additional NuGet dependency in the installer pipeline.

Key changes:

  • Add extern/DynamoMCP/ package layout (pkg.json, extra/MCP_ViewExtensionDefinition.xml, entry-point binaries under bin/ and bin/mcp_server/)
  • Copy vendored package into the install layout via DynamoCoreWpf AfterBuildOpsBuilt-In Packages/packages/DynamoMCP/
  • Update extern/.gitignore to track runtime DLLs while excluding test/pdb/deps artifacts
  • Add MCPExtension.dll to installer signing list and file-version check exclusions (mirrors TuneUp handling; prerequisite DYN-10551)
  • Update tests that enumerate built-in packages and loaded view extensions to include DynamoMCP

This follows the existing built-in package loader path: %BuiltInPackages%PackageLoaderPackageManagerViewExtension loads the view extension manifest from extra/. Dynamo core already exposes InternalsVisibleTo for MCP assemblies and blocks the MCP view extension when NoNetworkMode is enabled.

Note: MCPExtension.dll must be Authenticode-signed before release (included in additional-files-to-sign.txt). Binaries in this PR are from a local DynamoMCP Release build and will be re-signed in the ADSK pipeline.

Follow-up (separate tickets): DYN-10552 (remove PM delivery path), DYN-10554 (integration verification), DYN-10570 (customer docs).

Declarations

Check these if you believe they are true

No public API changes. Packaging, build, and test updates only.

Release Notes

Dynamo now includes the DynamoMCP built-in package, exposing workspace operations through the Model Context Protocol (MCP) without a separate Package Manager install.

Reviewers

(FILL ME IN) Reviewer 1

FYIs

Ship the DynamoMCP view extension through the existing Built-In Packages mechanism so all Dynamo users receive MCP server support without installing from Package Manager.
@johnpierson johnpierson changed the title Bundle DynamoMCP as built-in package DYN-10553: Bundle DynamoMCP as built-in package Jun 16, 2026

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See the ticket for this pull request: https://jira.autodesk.com/browse/DYN-10553

Third-party and DynamoMCP-owned binaries in extern/DynamoMCP ship with their own assembly versions, matching the TuneUp built-in package exclusion pattern.
@sonarqubecloud

Copy link
Copy Markdown

@RobertGlobant20 RobertGlobant20 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

basically my only comment is that the mcp_server dlls are not signed

Comment thread extern/DynamoMCP/pkg.json
"copyright_year": "2026",
"file_hash": null,
"name": "DynamoMCP",
"version": "7.7.7.7",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what this version 7.7.7.7 means?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not signed

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not signed, I think you should use the ones from the DynamoMCP release

Comment thread extern/DynamoMCP/pkg.json
"engine": "dynamo",
"engine_metadata": "",
"site_url": "https://dynamobim.org/",
"repository_url": "https://git.autodesk.com/Dynamo/DynamoMCP"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why we need this?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

also not signed

@johnpierson

Copy link
Copy Markdown
Member Author

Close in favor of #17165

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants