We're reclaiming inactive PDIs to keep them available for active builders. Learn what's changing, who's affected, and how to protect your work. Read More

Microsoft Copilot Integration with ServiceNow Self-Configured Bot - Agent Behaving as Declarative Ag

ganeshnunsa
Tera Expert

Hello Community,

We are currently working on integrating Microsoft Copilot with ServiceNow Virtual Agent using a self-configured bot and would appreciate any guidance or insights from others who have implemented a similar setup.

 

Current Setup
ServiceNow is already integrated with Microsoft Teams using a self-configured bot.
The Teams agent is functioning correctly
We enabled the Copilot option in Conversational Interfaces before generating the manifest.
We generated a new manifest and had it uploaded on the Microsoft/Azure side.
We confirmed:
Microsoft Teams plugin version is above the required version.

 

Issue Observed
The Copilot agent is visible and accessible within Microsoft Copilot; however, it does not appear to be functioning as a Custom Engine Agent (CEA) and instead behaves like a Declarative Agent.

2 REPLIES 2

Vikram Reddy
Tera Guru

Hi @ganeshnunsa,

 

This almost always traces back to the manifest itself, not the Virtual Agent side. Microsoft's schema is explicit that an app manifest can declare either a declarativeAgents node or a copilotAgents.customEngineAgents node, never both, and if the manifest ServiceNow generated (or an older one still sitting in Teams) ends up with the wrong node, or an ID mismatch, Copilot will quietly fall back to treating it as declarative.

  1. Unzip the manifest ServiceNow just generated and confirm there is no declarativeAgents node at all, only copilotAgents.customEngineAgents.
  2. Check that the bot id under customEngineAgents.bots matches exactly the botId in the top level bots array, and that bot entry's scopes include personal, not just team.
  3. In Teams Admin Center, go to Manage apps and check whether a prior version of this same app (from before you flipped the Copilot toggle) is still published. Replace it rather than uploading a second copy, Teams can keep serving the old registered agent type against that app ID.
  4. Re-upload the fresh package as a new/updated app and test again before rolling to users.

One thing worth confirming: when you regenerated the manifest after enabling Copilot, did the app id or version in manifest.json actually change, or was it reused? That alone can make Teams keep caching the old declarative registration.

Share the copilotAgents block from your manifest.json (sys IDs stripped) if it is still misbehaving and I will take a closer look.

 

Thank you,
Vikram Karety
Octigo Solutions INC

We have verified the manifest its look good and its has the components of CEA and will try with new app registration and inform you thanks for the response