Forum Discussion
Error Exporting Solution - Copilot Studio Agent with Confluence MCP “search” Tool
Hi all,
I'm running into an issue when trying to export a solution that contains an agent built in Copilot Studio using the Confluence MCP “search” tool (Rovo search). I’m hoping someone can help clarify whether additional steps are required, or if this is a product limitation/bug.
Scenario
I’m building an agent that uses the Confluence MCP connector, specifically the Rovo “search” tool, combined with agent instructions to filter a specific Confluence space. Everything works fine in my developer environment, and now I’m preparing to move the solution to QA. However, I'm blocked at the export step.
Steps I Followed
- Created the agent
- Added and configured Confluence MCP
- Selected only the “search” tool
- Set up agent instructions
- Created a new solution
- Added the agent to the solution
- Exported the solution
- Received the following error:
Solution "xxxxxx" failed to export: Exporting connection reference <masked_connection_reference_id> for a custom connector requires the custom connector to be added to a Dataverse solution. Please add connector <masked_connector_id> to a solution and retry.
What I Already Checked
When I added the agent to the solution, only the Connection References were added automatically — no Custom Connectors were included.
So, I manually added the Confluence MCP Custom Connector to the solution. Despite doing so, the export still fails with the same error.
Additional Observations
If I create a similar agent that uses only the searchConfluenceUsingCql tool (not the Rovo “search” tool), the solution exports without issues and I can successfully import it into QA. This makes me suspect that the problem is specific to the Rovo “search” capability in the MCP.
Question
Has anyone encountered this before?
Do different steps need to be followed when an agent uses the Rovo “search” tool in the Confluence MCP? Or could it be a known issue?
Any guidance or workarounds would be greatly appreciated. Thank youuu!
2 Replies
- sohnashBrass Contributor
Thank you very much for the detailed response and confirming what I suspected, Surya_Narayana !! Very much appreciated :)
I'll proceed with searchConfluenceUsingCql for now & continue exploring the Rovo integration at a later point. I'll report back here in case someone else is trying out a similar approach to talk to Confluence.
hi sohnash This one does smell like a product limitation / bug, not something you’re missing.
What’s happening (based on similar cases we’ve seen):
Copilot Studio agents export cleanly when they use standard MCP tools (like searchConfluenceUsingCql) because those tools are fully backed by a solution-aware custom connector.
The Rovo “search” tool is different. Under the hood, it’s treated more like a first party / preview capability, even though it shows up under the Confluence MCP.
Because of that, the connection reference gets created, but the underlying connector metadata is not properly solution-bound, so Dataverse can’t serialize it during export hence the error you’re seeing.
That explains why:
Adding the custom connector manually doesn’t help
The same pattern works fine with non-Rovo tools
Current reality (unfortunately)
Rovo “search” via Confluence MCP is not yet supported for ALM / solution export
This is a known gap, even if it’s not well-documented yet
Workarounds people are using
Avoid Rovo “search” for now
- Stick with searchConfluenceUsingCql for anything that needs to move across environments.
Environment-specific rebuild (not ideal)
- Recreate the agent manually in QA/Prod if Rovo search is a hard requirement.
Split the solution
- Keep the agent logic exportable and re-attach the Rovo-based capability post-import (manual step).
Recommendation
If this is production-bound, I’d:
- Raise this via Microsoft Support or Power Platform support ticket
- Reference: Copilot Studio agent + Confluence MCP + Rovo search failing solution export due to connector not being solution-aware
You’re not doing anything wrong , this is a maturity gap in the Rovo integration today. Hopefully Microsoft closes it soon, because this breaks standard ALM patterns badly.