Skip to content

Correctly read url parameter of ToolingManifest.json when the file is read from disk.#147

Merged
tmlsousa merged 2 commits intomicrosoft:mainfrom
adner:fix/mcp-server-config-url
Dec 28, 2025
Merged

Correctly read url parameter of ToolingManifest.json when the file is read from disk.#147
tmlsousa merged 2 commits intomicrosoft:mainfrom
adner:fix/mcp-server-config-url

Conversation

@adner
Copy link
Copy Markdown
Contributor

@adner adner commented Dec 26, 2025

ParseServerConfigFromManifest does not currently read the url property of the ToolingManifest.json file, instead it defaults to a base url that only works for first-party Agent 365 tools.

When using the A365 MCP Management MCP Server to create custom MCP Servers, the URL of such a server needs to be configured in the ToolingManifest.json file. Example:

{
  "mcpServers": [
    {
      "mcpServerName": "mcp_MailTools",
      "mcpServerUniqueName": "mcp_MailTools"
    }
...
    {
      "mcpServerName": "adde_mycoolmcpserver",
      "mcpServerUniqueName": "adde_mycoolmcpserver",
      "scope": "McpServers.DataverseCustom.All",
      "url": "https://agent365.svc.cloud.microsoft/mcp/environments/f828e740-6703-e4e7-b631-11a48500a013/servers/adde_mycoolmcpserver"
    }
  ]
}

This PR fixes this, and also aligns the code in ParseServerConfigFromManifest with ParseServerConfig.

@adner adner requested a review from a team as a code owner December 26, 2025 11:33
Copilot AI review requested due to automatic review settings December 26, 2025 11:33
@adner
Copy link
Copy Markdown
Contributor Author

adner commented Dec 26, 2025

@microsoft-github-policy-service agree [company="{your company}"]

@microsoft-github-policy-service agree

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR fixes ParseServerConfigFromManifest to correctly read the url parameter from ToolingManifest.json files, enabling custom MCP server URLs to be configured. Previously, the method only supported first-party Agent 365 tools by defaulting to a base URL. The changes align the manifest parsing logic with the existing ParseServerConfig method.

Key Changes:

  • Added parsing of the url property from ToolingManifest.json
  • Added fallback logic to read mcpServerUniqueName when mcpServerName is not present
  • Modified URL construction to use provided URL or fall back to building one from the server name

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.

5 participants