AgentProv: Auditing Agentic LLM API Providers via Tool-use Policy Probes
Organizations: CISPA Helmholtz Center for Information Security
Abstract
Commercial LLM APIs advertise a specific foundation model, but the served backbone may be silently substituted, quantized, or wrapped, for example to save deployment costs. All existing audits decide backbone identity from the text-output channel, which is structurally fragile for agentic APIs because modern serving stacks (OpenAI, Anthropic, Gemini, Cloudflare Workers AI, LangGraph) discard text and expose only structured actions when the model calls a tool, and provider-injected system prompts can distort text distributions enough that text-channel tests falsely accuse honest providers of substituting the claimed model. We observe that recent agentic post-training internalizes tool-use directly into the weights, opening a new audit channel that the serving stack still exposes and that is largely invariant to deployment context. We introduce Agentic Provenance (AgentProv), the first action-based identity audit for agentic LLM APIs: AgentProv fingerprints a deployed model through its categorical tool-call distribution and decides identity via an MMD permutation test. AgentProv catches every substituted model (100% on 630 evaluated checkpoint pairs), while holding the false-positive rate under system-prompt injection at 7% (vs. 67% for MET and 53% for RUT). On third-party API endpoints, AgentProv's disagreements with MET are consistent with an independent token-count side-channel that detects provider-injected system prompts.
Figures & tables
| Category | MET | RUT | AgentProv | |
|---|---|---|---|---|
| Cross-pairs | ||||
| Self-pairs |
| Family | |||
|---|---|---|---|
| R1-Distill | |||
| DeepSeek | |||
| Qwen3 | |||
| Hammer-2.1 | |||
| Qwen2.5 | |||
| Llama |
| MET | RUT | Adapted LLMmap | AgentProv | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Model | empty | short | long | empty | short | long | empty | short | long | empty | short | long |
| Llama-3.2-1B-Instruct | ||||||||||||
| Qwen3-1.7B | ||||||||||||
| Qwen2.5-1.5B-Instruct | ||||||||||||
| Gemma-3-1B-it | ||||||||||||
| Hammer2.1-1.5B | ||||||||||||
| Endpoint | MET | RUT | AgentProv |
|---|---|---|---|
| With detected hidden prompt | |||
| Llama- - B | rej | rej | rej |
| Gemma- n-E B | rej | acc | acc |
| Llama- - B | rej | rej | acc |
| Qwen - B | rej | rej | acc |
| Llama- - B | rej | rej | acc |
| samples per template | ||||
|---|---|---|---|---|
| templates | ||||
| Probe surface | Self (acc) | Distinct (rej) |
|---|---|---|
| Original schema | ||
| Random neutral tool names | ||
| Paraphrased tool/parameter descriptions |
| Prompt knowledge | GPT-4o-mini GPT-4o | GPT-5.4-mini GPT-5.4 |
|---|---|---|
| No mimicry | rej, | rej, |
| Identity | rej, | rej, |
| +Profile | rej, | rej, |
| +Few-shot | rej, | rej, |
| Probe set | Decision | -value |
|---|---|---|
| Training | acc | |
| Held-out | rej |
| GPT-4o-mini GPT-4o | GPT-5.4-mini GPT-5.4 | |
|---|---|---|
| rej, | rej, | |
| rej, | rej, | |
| rej, | rej, | |
| rej, | acc, | |
| acc, | acc, | |
| acc, | acc, |
Appendix figures & tables7 assets
Supplementary material from the paper’s appendix.
Appendix
| Domain | Probe setup | Option set |
|---|---|---|
| General tools | “Schedule a team sync for Thursday at 2pm.” Tools: create_event , schedule_meeting , add_event , book_calendar_event (identical descriptions). | {tool names, _no_call , _malformed , _other } |
| MCP servers | “Send a short greeting to [email protected].” Tools: mcp__gmail__send_email , mcp__outlook__send_email , mcp__smtp__send_mail (identical descriptions). | {tool names, _no_call , _malformed , _other } |
| Family | Members evaluated |
|---|---|
| Qwen | B, B, B, B; DistilQwen - B |
| Qwen | B, B, B, B-Instruct- |
| Qwen -Think | B-Thinking- |
| Llama- / | Llama- - B; Llama- - B, - B; SuperNova-Lite |
| Mistral | Mistral- B-Instruct, Mistral-Nemo, Ministral- B |
| DeepSeek base | DeepSeek-LLM- B, DeepSeek-Coder- B |
| Comparison | Pairs | Decision |
|---|---|---|
| Matching model: official OpenAI vs. OpenRouter | acc | |
| Distinct official OpenAI models | rej | |
| Official OpenAI models vs. local checkpoints | rej |
| samples per template | ||||
| templates | ||||
| Quantized deployment | AgentProv | MET | RUT |
|---|---|---|---|
| Qwen2.5-7B, 8-bit | acc | acc | acc |
| Llama-3.1-8B, 8-bit | acc | acc | acc |
| Qwen2.5-7B, 4-bit | acc | rej | rej |
| Llama-3.1-8B, 4-bit | rej | rej | rej |
| System-prompt condition | AgentProv | MET | RUT |
|---|---|---|---|
| Safety policy | |||
| Agent wrapper |
LLM Auditing
Large language model auditing tests models and deployed systems for bias, safety, privacy, reliability, and provenance using behavioral and internal evidence.
See all 621 papers