Skip to content

Per-tool authorization middleware for agent tool calls #2868

@webpro255

Description

@webpro255

Please read this first

  • Have you read the docs? Yes
  • Have you searched for related issues? Yes. Found no existing issue for per-tool authorization middleware in this SDK.

Describe the feature

The SDK has guardrails for input/output validation and human-in-the-loop for approval flows. What's missing is a per-tool authorization layer that evaluates whether a tool call should execute based on identity, scope, rate limits, and session context.

Guardrails check content. Authorization checks permission. Both are needed but they solve different problems.

Example: An agent with access to send_email and query_database passes every guardrail check but uses those tools to exfiltrate customer data to an external address. The content looks normal. The authorization was never checked.

Proposed solution: A per-tool authorization middleware that intercepts tool calls before execution:

  • Evaluate each tool call against identity, role, scope, and session state
  • Support non-binary decisions: ALLOW, DENY, MODIFY, DEFER, STEP_UP
  • Generate structured audit records for every decision
  • Non-invasive: existing tools work without code changes

I'm the creator of AgentLock (Apache 2.0), an open authorization standard for AI agent tool calls. Happy to build an "openai-agentlock" integration as a separate PyPI package if that's the preferred approach.

Benchmark: 99.5/A against 222 adversarial attack vectors across 35 categories.

GitHub: github.com/webpro255/agentlock

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions