[mcp] Improve custom MCP elicitation (#15800)

- [x] Support don't ask again for custom MCP tool calls.
- [x] Don't run arc in yolo mode.
- [x] Run arc for custom MCP tools in always allow mode.
This commit is contained in:
Matthew Zeng
2026-03-25 18:02:37 -07:00
committed by GitHub
parent d7e35e56cf
commit 78799c1bcf
25 changed files with 814 additions and 72 deletions

View File

@@ -745,6 +745,21 @@
}
]
},
"McpServerToolConfig": {
"additionalProperties": false,
"description": "Per-tool approval settings for a single MCP server tool.",
"properties": {
"approval_mode": {
"allOf": [
{
"$ref": "#/definitions/AppToolApproval"
}
],
"description": "Approval mode for this tool."
}
},
"type": "object"
},
"MemoriesToml": {
"additionalProperties": false,
"description": "Memories settings loaded from config.toml.",
@@ -1246,7 +1261,9 @@
"type": "object"
},
"RawMcpServerConfig": {
"additionalProperties": false,
"additionalProperties": {
"$ref": "#/definitions/McpServerToolConfig"
},
"properties": {
"args": {
"default": null,
@@ -1313,6 +1330,11 @@
},
"type": "object"
},
"name": {
"default": null,
"description": "Legacy display-name field accepted for backward compatibility.",
"type": "string"
},
"oauth_resource": {
"default": null,
"type": "string"
@@ -1344,6 +1366,13 @@
"format": "double",
"type": "number"
},
"tools": {
"additionalProperties": {
"$ref": "#/definitions/McpServerToolConfig"
},
"default": null,
"type": "object"
},
"url": {
"type": "string"
}