openclaw/openclaw · error · Error
Codex mcpServerStatus/list returned an invalid restricted-to
Error message
Codex mcpServerStatus/list returned an invalid restricted-tool-surface server
What it means
Error "Codex mcpServerStatus/list returned an invalid restricted-tool-surface server" thrown in openclaw/openclaw.
Source
Thrown at extensions/codex/src/app-server/thread-requests.ts:591
if (!isJsonObject(serverConfig) || serverConfig.enabled !== false) {
throw new Error(`Codex restricted-tool-surface MCP server ${name} is not disabled`);
}
expectedDisabledServerNames.add(name);
}
const response = await client.request(
"mcpServerStatus/list",
{ threadId, detail: "toolsAndAuthOnly" },
{ signal },
);
if (!isJsonObject(response) || !Array.isArray(response.data)) {
throw new Error(
"Codex mcpServerStatus/list returned an invalid restricted-tool-surface attestation",
);
}
const observedDisabledServerNames = new Set<string>();
for (const status of response.data) {
if (!isJsonObject(status) || typeof status.name !== "string" || !isJsonObject(status.tools)) {
throw new Error(
"Codex mcpServerStatus/list returned an invalid restricted-tool-surface server",
);
}
if (!expectedDisabledServerNames.has(status.name)) {
throw new Error(
`Codex restricted-tool-surface MCP attestation found unexpected server ${status.name}`,
);
}
if (observedDisabledServerNames.has(status.name)) {
throw new Error(
`Codex restricted-tool-surface MCP attestation returned duplicate server ${status.name}`,
);
}
observedDisabledServerNames.add(status.name);
if (!Object.hasOwn(status, "serverInfo")) {
throw new Error(
`Codex restricted-tool-surface MCP attestation returned malformed server ${status.name}`,
);View on GitHub (pinned to 01804a7531)
When it happens
Trigger: Thrown at extensions/codex/src/app-server/thread-requests.ts:591 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of openclaw/openclaw@01804a7531 (2026-08-12).
Data as JSON: /api/errors/3fbc9651066da35f.
Report an issue: GitHub.