Repository navigation
[BUG] CLI tools JSON reports every option type as string #3768
Description
Describe the bug
The CLI tools JSON for Azure MCP Server 3.0.0-beta.44 reports every option as "type": "string", including options whose authoritative C# types are arrays, integers, booleans, a 64-bit integer, or enums.
This causes generated CLI parameter documentation to publish incorrect types.
Evidence
The committed beta.44 snapshot is here:
Snapshot summary:
- Version/source commit:
3.0.0-beta.44+32200bb8396d0f7dcbebc7f6d96a38fc147881d1 - ADME tools: 8
- ADME option entries: 70
- Distinct reported option types: only
string - Entire snapshot option entries: 2,841
- Distinct reported option types across the entire snapshot: only
string
Representative ADME mismatches:
| Command | Option | CLI JSON type | Source type |
|---|---|---|---|
adme schema list |
--status |
string |
SchemaStatus? |
adme schema list |
--schema-version-major |
string |
int? |
adme schema list |
--latest-version |
string |
bool |
adme search |
--kind |
string |
string[] |
adme search |
--cursor-pagination-mode |
string |
bool |
adme search |
--returned-fields |
string |
string[]? |
adme storage record fetch |
--ids |
string |
string[] |
adme storage record fetch |
--frame-of-reference |
string |
bool |
adme storage record get |
--version |
string |
long? |
adme storage record list |
--limit |
string |
int? |
Authoritative beta.44 source at commit 32200bb8396d0f7dcbebc7f6d96a38fc147881d1:
- Search options: https://github.com/microsoft/mcp/blob/32200bb8396d0f7dcbebc7f6d96a38fc147881d1/tools/Azure.Mcp.Tools.Adme/src/Options/Search/SearchOptions.cs
- Schema list options: https://github.com/microsoft/mcp/blob/32200bb8396d0f7dcbebc7f6d96a38fc147881d1/tools/Azure.Mcp.Tools.Adme/src/Options/Schema/SchemaListOptions.cs
- Record fetch options: https://github.com/microsoft/mcp/blob/32200bb8396d0f7dcbebc7f6d96a38fc147881d1/tools/Azure.Mcp.Tools.Adme/src/Options/Storage/RecordFetchOptions.cs
- Record get options: https://github.com/microsoft/mcp/blob/32200bb8396d0f7dcbebc7f6d96a38fc147881d1/tools/Azure.Mcp.Tools.Adme/src/Options/Storage/RecordGetOptions.cs
- Record list options: https://github.com/microsoft/mcp/blob/32200bb8396d0f7dcbebc7f6d96a38fc147881d1/tools/Azure.Mcp.Tools.Adme/src/Options/Storage/RecordListOptions.cs
Expected behavior
Each option's type in the CLI JSON should reflect its actual option type (including collection, numeric, boolean, and enum types) so downstream consumers can generate accurate parameter documentation and validation.
Actual behavior
Every option has "type": "string" in the beta.44 CLI JSON snapshot.
Impact
Downstream documentation generation renders the CLI JSON type value verbatim, so non-string ADME parameters are documented incorrectly unless manually corrected from source.
Activity
github-actions commentedon Sep 23, 2026
Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc Alan Zimmer (@alzimmermsft) Vinay Gera (@g2vinay) @microsoft/azure-mcp.
Fix CLI tools metadata reporting every option type as string (microso…