Opus 4.7 flags standard computational structural biology as Usage Policy violation, regression from 4.6

Resolved 💬 1 comment Opened Apr 17, 2026 by Lefrunila Closed May 26, 2026

Preflight Checklist

  • [x] I have searched existing issues for similar behavior reports
  • [x] This report does NOT contain sensitive information (API keys, passwords, etc.)

Type of Behavior Issue

Claude refused a reasonable request

What You Asked Claude to Do

Standard computational structural biology tasks on published PDB structures. Example prompt that triggers the refusal:

"Can you save 8EUW into the vaccine folder, pick one antibody, keep only contacting residues plus 5 adjacent neighbours and any relevant interacting residue according to literature, don't forget to keep the contacting glycan tree and the glycosylation motif. I want to motif scaffold a new antigen that has the same epitope."

This is epitope mapping and motif scaffolding from a published crystal structure freely available on rcsb.org. This is what structural biologists do.

What Claude Actually Did

Flagged the request as a Usage Policy violation and refused to proceed. This happens both in Claude Code and in the regular web chat when using the 4.7 model. The same category of requests worked without issue under Opus 4.6.

Expected Behavior

Process the request normally, as 4.6 did. The task involves analyzing protein contact interfaces from published experimental structures to build machine learning models for binding prediction. There is nothing dangerous about it.

Files Affected

None modified, because the model refuses before doing anything.

Permission Mode

Accept Edits was ON (auto-accepting changes)

Can You Reproduce This?

Yes, every time with the same prompt

Steps to Reproduce

Ask Opus 4.7 (in Claude Code or web chat) to perform any protein structure analysis that involves epitope mapping, antigen scaffolding, or binding site extraction from PDB files. The prompt above reproduces it reliably.

Claude Model

Opus

Relevant Conversation

**Relevant Conversation:**

The refusal is consistent and affects both Opus and Sonnet. Every single attempt returns the same canned message with no explanation of what specifically triggered it.

**Refusal 1: Opus, direct prompt**

❯ Can you save 8EUW into the vaccine folder, pick one antibody, keep only contacting
  residues plus 5 adjacent neighbours and any relevant interacting residue according
  to literature, dont forget to keep the contacting glycan tree and the glycosilation
  motif. I want to motiff scaffold a new antigen that has the same epitope.

  ⎿  API Error: Claude Code is unable to respond to this request, which appears to
     violate our Usage Policy (https://www.anthropic.com/legal/aup). Please double
     press esc to edit your last message or start a new session for Claude Code to
     assist with a different task. If you are seeing this refusal repeatedly, try
     running /model claude-sonnet-4-20250514 to switch models.


**Refusal 2: Sonnet, rewritten to be as clinical as possible**

❯ I'm working on protein structural analysis for my biotechnology research. I need to:
  1. Download protein complex structure 8EUW from the PDB database
  2. Analyze the protein-protein binding interface between chains
  3. Extract contacting residues within 4Å distance cutoff
  4. Include 5 neighboring residues around each contact point
  5. Preserve any N-linked glycan modifications and glycosylation sites
  6. Output a cleaned structure file with only the binding epitope region

  This is for computational protein design research - specifically studying how
  proteins recognize each other through surface complementarity. I want to use this
  epitope as a template for designing new binding partners.

  Can you help me write a Python script using BioPython to perform this structural
  analysis?

  ⎿  API Error: Claude Code is unable to respond to this request, which appears to
     violate our Usage Policy (https://www.anthropic.com/legal/aup).


Note that the second prompt was deliberately rewritten to be maximally innocuous. No jargon about scaffolding, no mention of antigens by name, just "structural analysis" and "BioPython." Same refusal.

**Refusal 3: Mid-session, after productive work**

This is the worst one. During an active ODesign protein loop redesign session, Opus had already been working productively for over an hour: running inference jobs, monitoring GPU output, writing JSON configs, isolating a NaN bug in the condition_atom field, and proposing a workaround. When I asked it to launch an agent to review alternative approaches, it refused:


● Agent(Alternative approaches for glycan-oriented loop redesign)
  ⎿  API Error: Claude Code is unable to respond to this request, which appears to
     violate our Usage Policy


It refused twice more on retry, then I switched to Sonnet, which also refused when asked to review the same strategy. The model had just spent an hour doing the exact same category of work successfully. The refusal appears to be triggered by something in the prompt accumulation or the agent dispatch context, not by any individual dangerous request.

In all cases, the error message offers zero information about what specifically was flagged. There is no way to fix the prompt when the system won't tell you what's wrong with it.

Impact

Critical - Data loss or corrupted project

Claude Code Version

2.1.112

Platform

Anthropic API

Additional Context

I've been using Claude Code with Opus for a long time to build OpenBinder-RF-v2, a machine learning system that predicts nanobody-antigen binding from structural features. Published PDB structures, Random Forests, protein language models, molecular dynamics. Standard computational structural biology. The pipeline includes 1,153 positive binding pairs, 2,306 computationally generated decoys, Boltz-2 structure prediction, OpenMM relaxation with restrained and unrestrained protocols, IgGM antibody docking, ANARCI/IMGT numbering, ESM-PPI embeddings reduced via PCA, and GATv2 graph neural networks. My best model hits 93.8% accuracy on leave-one-out cross-validation. All of this was developed interactively in Claude Code sessions that routinely involve debugging OpenMM force field issues, coordinating multi-hour GPU batch jobs, fixing chain-ID remapping bugs in PDB output, and recovering from mid-run drive re-enumerations.

With 4.6, all of this worked. With 4.7, the content filter treats it like I'm trying to build a bioweapon. I am a student. I am building ML models on publicly available crystal structures.

Sonnet is simply not intelligent enough for this level of computational biology. It loses context on multi-step structural biology workflows and can't maintain coherence across the kind of sessions documented in my project's 800-line session log.

I spent most of my savings on a Max 20x subscription because Opus was the only model that could actually do this work. I'm a student, not exactly swimming in disposable income. So my current options are: (a) a model that's smart enough but refuses to do my work, or (b) a model that's willing but not smart enough. I paid for neither of those.

Please either fix the 4.7 content filter or give me access to 4.6. This regression turned a working research tool into an expensive chat widget.

<!-- Failed to upload "SESSION_LOG.md" -->

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗