130 pages for stderr.
Titles and paths first, then pages whose text carries it. Each row opens that page as this site last read it.
Connect Claude Code to tools via MCP
Claude Code CLI · in the page
mcp
…e.claude.com/docs/en/errors#headershelper-not-run) line per server to stderr, telling you how to grant the trust. * **Trust without a dialog**: set `projects["<path>"].hasTrustDialogAccepted` to `true…
Model configuration
Claude Code CLI · in the page
model-config
…it as a startup notice. From v2.1.182, the same warning is written to stderr in [non-interactive mode](https://code.claude.com/docs/en/headless.md) when using the default text output format. The check…
Monitoring
Claude Code CLI · in the page
monitoring-usage
…| | `output` | For the Bash tool, the command's combined output, with stderr interleaved into stdout. For an MCP tool, WebFetch, or WebSearch, the result the tool returned: text blocks joined by newli…
Choose a permission mode
Claude Code CLI · in the page
permission-modes
…, read the line Claude Code prints at startup. In a `-p` run, it's on stderr. In an Agent SDK app, pass the [`stderr` option](https://code.claude.com/docs/en/agent-sdk/typescript#options) to read it.…
Configure permissions
Claude Code CLI · in the page
permissions
….claude.com/docs/en/errors#workspace-has-not-been-trusted) warning to stderr | | Frontmatter hooks in a project [subagent](https://code.claude.com/docs/en/sub-agents.md#hooks-in-subagent-frontmatter),…
Test plugins with evals
Claude Code CLI · in the page
plugin-evals
…y reflects the plugin. The run prints a `single-arm (no Δ)` notice on stderr naming these cases. To compare the resumed turn with and without the plugin, pass `--ablation with-without`. * **No plugin…
Recommend your plugin from your CLI
Claude Code CLI · in the page
plugins/cli-hints
…e Claude Code, have it write a one-line `<claude-code-hint />` tag to stderr. Claude Code removes the line from Bash and PowerShell tool output before the model sees the output, then shows the user a…
Plugin commands reference
Claude Code CLI · in the page
plugins/cli-reference
…lid `--scope`, prints no result line and exits `1` with the reason on stderr. #### JSON result for marketplace commands On `plugin marketplace add`, `plugin marketplace remove`, and `plugin marketpl…
Add components to a plugin
Claude Code CLI · in the page
plugins/components
…m/docs/en/plugins/manifest-reference#lspservers). Send log output to stderr, not stdout. Claude Code reads a server's stdout as protocol messages only, and accepts message headers up to 64 KiB and a…
Use the mods API
Claude Code CLI · in the page
plugins/mods/api
…argument list and uses no shell. It resolves to `{ exitCode, stdout, stderr }` whatever the exit code. It rejects if the program can't start or is still running at the timeout, which is 30 seconds by…
Mods reference
Claude Code CLI · in the page
plugins/mods/reference
…onds by default, 10 minutes at most | | `$.process.run` `stdout` and `stderr` | 4 MiB each. `isStdoutTruncated` or `isStderrTruncated` is `true` when one was cut. | | `$.model.complete` `maxTokens` |…
Test a mod
Claude Code CLI · in the page
plugins/mods/test
…`$.process.run` | `($, e) => ({ value: { exitCode: 0, stdout: '...', stderr: '' } })`. `e.argv` is the argument list and `e.init` holds `cwd` and `timeoutMs`. | | Any mods API call that should fail |…
Troubleshoot a mod
Claude Code CLI · in the page
plugins/mods/troubleshoot
…n with `claude --debug`. * **A `claude -p` run with `--plugin-dir`**: stderr, in the default text output format. A refusal by another mod goes to the debug log only. ## Check whether mods can load T…
Troubleshoot plugins
Claude Code CLI · in the page
plugins/troubleshooting
…e of the form `... hook error: Failed with non-blocking status code: <stderr>` means the hook ran and its command failed. For example, `Stop hook error: Failed with non-blocking status code: /bin/sh:…
Customize sessions in self-hosted environments
Claude Code CLI · in the page
self-hosted-environments-configuration
…``` You can redirect the child's stdout. Keep file descriptor 3 and stderr attached to the runner: * **File descriptor 3**: carries the child's activity signals to the runner. Don't close it or reu…
Deploy self-hosted environments to production
Claude Code CLI · in the page
self-hosted-environments-deploy
…than permissions. The runner prints both of these startup failures to stderr before it opens `--log-file`, so look for them in the terminal or your platform's container logs rather than the log file.…
Verify session identity in self-hosted environments
Claude Code CLI · in the page
self-hosted-environments-identity
…the JWKS endpoint or can't verify the token, it prints the reason to stderr, prints no claims, and exits with code 1. Pass `--no-verify` to `decode-token` only for offline inspection where the JWKS e…
Self-hosted environments reference
Claude Code CLI · in the page
self-hosted-environments-reference
…ER_POOL_SECRET` variable still work and print a deprecation notice to stderr; preview-program runner builds older than 2.1.216 only recognize those older names. | | `--exec-path <path>` | `SELF_HOSTED…
Test self-hosted environments end to end
Claude Code CLI · in the page
self-hosted-environments-testing
…g unavailable for your organization or a missing prompt: the error on stderr with no JSON line, and the command exits with status 1 2. Waits for the reply to appear in `$E2E_REPLY_DIR/<session_id>.txt…
Claude Code settings
Claude Code CLI · in the page
settings
…ing the invalid entries. * Headless runs with `-p` print a summary to stderr. * [`claude doctor`](/docs/en/debug-your-config) lists each invalid entry with its source and field. Validate policy chang…
Extend Claude with skills
Claude Code CLI · in the page
skills
…ubstitutions) in paths that must resolve the same way every time. * **stderr**: with the default `bash` shell, Claude Code merges stderr into stdout. Anything the command writes to stderr appears in t…
Customize your status line
Claude Code CLI · in the page
statusline
…try: subprocess.check_output(['git', 'rev-parse', '--git-dir'], stderr=subprocess.DEVNULL) branch = subprocess.check_output(['git', 'branch', '--show-current'], text=True).strip() staged…
Create custom subagents
Claude Code CLI · in the page
sub-agents
…-event) to block execution and returns an error message to Claude via stderr. Create the validation script anywhere in your project. The path must match the `command` field in your hook configuration…
Troubleshoot installation and login
Claude Code CLI · in the page
troubleshoot-install
…precedes the message with `Error: Failed to install native update` on stderr. A download that stays connected but doesn't finish within 10 minutes fails with `Download timed out: exceeded the total d…
Find bugs with ultrareview
Claude Code CLI · in the page
ultrareview
….309 or later | `claude ultrareview` writes its progress messages to stderr so stdout stays parseable. Running `claude ultrareview` requires the same authentication and usage-credits configuration a…
Run parallel sessions with worktrees
Claude Code CLI · in the page
worktrees
…s/en/agent-sdk/sessions.md) runs, Claude Code stops the resume with a stderr error for every refusal except a gone worktree, instead of continuing without isolation. With `--output-format stream-json…
Write a credential helper
Claude Documentation · in the page
third-party/claude-desktop/credential-helper
…uments-to-the-helper). The exit code must be `0`. Anything written to stderr is logged for diagnostics but otherwise ignored. Stdout must contain exactly one of the following, with no banners, prompt…
MCP, plugins, skills, and hooks
Claude Documentation · in the page
third-party/claude-desktop/extensions
…Code uses when PowerShell 7 isn't installed, a program that writes to stderr under a redirect in the command, such as `2>&1`, can make the hook count as failed although the program exits with 0. The h…
SSH remote sessions in Claude Desktop on 3P
Claude Documentation · in the page
third-party/claude-desktop/ssh-remote-sessions
…toward an account lockout. * **`it cannot reach Claude because ssh's stderr is redirected, for example by a wrapper script`**: look for a wrapper around `ssh`. Change the program that `sshClientPath`…
Build an MCP server
Model Context Protocol · in the page
docs/2024-11-05/develop/build-server
…on writes to stdout by default, but can be used safely with `file=sys.stderr`. > > **For HTTP-based servers:** Standard output logging is fine since it doesn't interfere with HTTP responses. > > ### B…
Connect to local MCP servers
Model Context Protocol · in the page
docs/2024-11-05/develop/connect-local-servers
…es. > > * Files named `mcp-server-SERVERNAME.log` will contain error (stderr) logging from the named server. > > You can run the following command to list recent logs and follow along with any new one…
Debugging
Model Context Protocol · in the page
docs/2024-11-05/tools/debugging
…should be your first stop. 2. **Server logging**: structured logs to stderr (stdio transport) or via [`notifications/message`](https://modelcontextprotocol.io/specification/2024-11-05/server/utili…
Build an MCP server
Model Context Protocol · in the page
docs/2025-03-26/develop/build-server
…on writes to stdout by default, but can be used safely with `file=sys.stderr`. > > **For HTTP-based servers:** Standard output logging is fine since it doesn't interfere with HTTP responses. > > ### B…
Connect to local MCP servers
Model Context Protocol · in the page
docs/2025-03-26/develop/connect-local-servers
…es. > > * Files named `mcp-server-SERVERNAME.log` will contain error (stderr) logging from the named server. > > You can run the following command to list recent logs and follow along with any new one…
Debugging
Model Context Protocol · in the page
docs/2025-03-26/tools/debugging
…should be your first stop. 2. **Server logging**: structured logs to stderr (stdio transport) or via [`notifications/message`](https://modelcontextprotocol.io/specification/2025-03-26/server/utili…
Build an MCP server
Model Context Protocol · in the page
docs/2025-06-18/develop/build-server
…on writes to stdout by default, but can be used safely with `file=sys.stderr`. > > **For HTTP-based servers:** Standard output logging is fine since it doesn't interfere with HTTP responses. > > ### B…
Connect to local MCP servers
Model Context Protocol · in the page
docs/2025-06-18/develop/connect-local-servers
…es. > > * Files named `mcp-server-SERVERNAME.log` will contain error (stderr) logging from the named server. > > You can run the following command to list recent logs and follow along with any new one…
Debugging
Model Context Protocol · in the page
docs/2025-06-18/tools/debugging
…should be your first stop. 2. **Server logging**: structured logs to stderr (stdio transport) or via [`notifications/message`](https://modelcontextprotocol.io/specification/2025-06-18/server/utili…
Build an MCP server
Model Context Protocol · in the page
docs/2025-11-25/develop/build-server
…on writes to stdout by default, but can be used safely with `file=sys.stderr`. > > **For HTTP-based servers:** Standard output logging is fine since it doesn't interfere with HTTP responses. > > ### B…
Connect to local MCP servers
Model Context Protocol · in the page
docs/2025-11-25/develop/connect-local-servers
…es. > > * Files named `mcp-server-SERVERNAME.log` will contain error (stderr) logging from the named server. > > You can run the following command to list recent logs and follow along with any new one…
Debugging
Model Context Protocol · in the page
docs/2025-11-25/tools/debugging
…should be your first stop. 2. **Server logging**: structured logs to stderr (stdio transport) or via [`notifications/message`](https://modelcontextprotocol.io/specification/2025-11-25/server/utili…
Build an MCP server
Model Context Protocol · in the page
docs/2026-07-28/develop/build-server
…ices > > * Use the standard library `logging` module, which writes to stderr. > * Create one logger per module with `logging.getLogger(__name__)` and call it from your tools. > > ### Quick Examples >…
Connect to local MCP servers
Model Context Protocol · in the page
docs/2026-07-28/develop/connect-local-servers
…lures. > > * Files named `mcp-server-SERVERNAME.log` will contain the stderr output from the named server. Stdio servers may use stderr for all their logging, so these files are not limited to errors.…
Architecture overview
Model Context Protocol · in the page
docs/2026-07-28/learn/architecture
…debugging and monitoring purposes. New implementations should log to `stderr` (stdio transport) or use OpenTelemetry. For more details about client primitives see [client concepts](https://modelconte…
Debugging
Model Context Protocol · in the page
docs/2026-07-28/tools/debugging
…should be your first stop. 2. **Server logging**: structured logs to stderr (stdio transport) or via [OpenTelemetry](https://opentelemetry.io/) (all transports). [Logging](https://modelcontextp…
Authorization
Model Context Protocol · in the page
docs/2026-07-28/tools/inspector/authorization
…403` surfaces as an error instead. In the **CLI**, step-up prompts on stderr: ``` Proceed with step-up authorization? [y/N] ``` Answer **y** to continue. Piped input works (`echo y | ...`), as long…
CLI client
Model Context Protocol · in the page
docs/2026-07-28/tools/inspector/cli
…. | On any non-zero exit the CLI also writes a **single JSON line to stderr**: ```json theme={null} { "error": { "code": "auth_required", "message": "Unauthorized", "status": 401,…
Configuration and flags
Model Context Protocol · in the page
docs/2026-07-28/tools/inspector/configuration
…put (the same as `--plain`), and the sign-in prompt the CLI writes to stderr. | ### Web backend environment variables | Variable | Effect | | - | - | | `MCP_INSPECTOR_API_TOKEN` | Pin the [session t…
mcpdo connection client
Model Context Protocol · in the page
docs/2026-07-28/tools/inspector/mcpdo
…hoc target. | When a browser sign-in is needed and neither stdin nor stderr is a TTY (and `MCP_AUTO_OPEN_ENABLED` is not forced on), `connect` exits `0` immediately with `pendingAuth: true` and an `a…
Protocol eras
Model Context Protocol · in the page
docs/2026-07-28/tools/inspector/protocol-eras
…ig test-servers/configs/<name>.json ``` The server prints its URL on stderr. If the config's port is already in use, it binds the next free port, so use the printed URL rather than assuming the port.…