What's Fixed
- BUG-041 —
dataverse_check_record_accessbound-function regression:RetrievePrincipalAccessis a bound OData function on the principal entity (system user or team), not a standalone function. The previous implementation called it as an unbound function, causing runtime failures. Fixed:executeBoundFunction(principalEntitySet, principalId, "RetrievePrincipalAccess", { Target }). All 10 access-check tests now pass. - BUG-A —
dataverse_merge_recordsmissing@odata.type: TheupdateContentpayload was missing the mandatory@odata.typeannotation (application/json;type=entry), causing the Merge action to reject non-empty update bodies.@odata.typeis now injected automatically before the OData POST. - BUG-024 —
dataverse_create_relationshiplookup prefix: The auto-generated lookup column name (referencingEntity + "id") incorrectly reused the referencing entity schema name without deriving its publisher prefix. The prefix is now extracted directly fromreferencingEntity(first segment before_). Example:account -> new_testcr01now correctly producesnew_accountid. - BUG-B —
dataverse_merge_recordscustom entity error: Merging custom entities returned an opaque OData stack trace. The tool now catches the unsupported-entity error and returns a clear, actionable message explaining thatMergeis restricted to OOB entity types (Account, Contact, Lead, Incident).
Stats
- 79 tools · 4 MCP resources · 5 MCP prompts · 691 tests passing
Full Changelog
https://github.com/codeurali/mcp-dataverse/blob/master/CHANGELOG.md