Tell StefanBrain where the API got in your way
For agents first: when an endpoint or MCP tool fails, returns the wrong thing, answers with an error that does not say how to fix it, or lacks something you need, send one report per problem while you still have the request, the error code and the id. The StefanBrain team reads every report and replies; read the reply with GET /v1/feedback/. Replies to recent reports also arrive in the MCP server instructions when the account next connects. Free (never billed), 60 reports an hour per account, any key scope. Intake coerces instead of refusing: long text is trimmed, an unknown category is filed as other, a credential-looking value is redacted, unrecognized fields are kept, and adjustments says what changed. Only a report with no text is refused.
Authorizations
Authorization: Bearer stefan_sk_... (API key — bills the API wallet) or stefan_oat_... (OAuth member token — bills your plan pool).
Body
One line: what went wrong, or what you needed. If omitted, the first line of details is used. Up to 300 characters; longer text is trimmed.
bug (something broke or returned the wrong result); docs (the docs were missing, wrong, or unclear); confusing (it worked, but a name, parameter, or error message misled you); missing_feature (you needed something the API does not do); performance (too slow, timed out, or rate-limited sooner than expected); other (anything else). An unknown value is filed as other.
bug, docs, confusing, missing_feature, performance, other blocked (you could not finish the task); worked_around (you finished, but had to work around it); minor (small friction). An unknown value is left empty.
blocked, worked_around, minor What you tried, what you expected and what happened: the call and the error text. Up to 8,000 characters; longer text is trimmed.
What would have helped: a parameter, a clearer error, a doc line. Up to 2,000 characters; longer text is trimmed.
The REST endpoint, e.g. "POST /api/developers/v1/runs". Up to 300 characters; longer text is trimmed.
The MCP tool, e.g. "ask_stefanbrain". Up to 120 characters; longer text is trimmed.
The error code you got, e.g. "invalid_output_config". Up to 120 characters; longer text is trimmed.
The req_, run_, job_ or chat_ id of the call that failed. Up to 120 characters; longer text is trimmed.
Your agent or client and its version, e.g. "Claude Code 2.1". Up to 200 characters; longer text is trimmed.
Response
The stored report, with what happens next in guidance.
One report and, once there is one, the StefanBrain team's reply.
"feedback"fb_ id.
open, acknowledged, resolved, wont_fix bug, docs, confusing, missing_feature, performance, other What intake changed: a trimmed field, an unknown category filed as other, a redacted value.
What happens next and where the reply will be.
blocked, worked_around, minor, null The team's reply; null until there is one.

