<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/your-ai-agent-needs-to-know-who-you-are-p3pktkmzh" -->

---
title: Your AI Agent Needs to Know Who You Are | daily.dev
description: MCP tools by default cannot see who actually triggered a request through an AI agent, only that 'the agent did something.' Teleport addresses this by issuing...
canonical: https://daily.dev/posts/your-ai-agent-needs-to-know-who-you-are-p3pktkmzh
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Your AI Agent Needs to Know Who You Are | daily.dev
og:description: MCP tools by default cannot see who actually triggered a request through an AI agent, only that 'the agent did something.' Teleport addresses this by issuing...
og:url: https://daily.dev/posts/your-ai-agent-needs-to-know-who-you-are-p3pktkmzh
og:image: https://api.daily.dev/og/posts/P3pktkMZH.png
og:image:alt: Your AI Agent Needs to Know Who You Are
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Your AI Agent Needs to Know Who You Are

**[Teleport](https://daily.dev/sources/teleport)** · 8 min read · 0 upvotes · 0 comments

## Summary

MCP tools by default cannot see who actually triggered a request through an AI agent, only that 'the agent did something.' Teleport addresses this by issuing short-lived JWTs at login (via tsh login and tsh mcp connect) that carry the user's identity and roles through every agent-to-tool call. The MCP server validates the JWT against Teleport's public OIDC keys, extracts the caller's email and roles, and an authorization layer decides whether to allow or deny the tool call before injecting identity as trusted parameters into the tool function. This enables per-user audit logs with real names, context-aware tool behavior like filtering 'my recent activity' queries, and centralized offboarding since access revokes across servers, databases, and AI tools simultaneously. A follow-up post will extend this pattern to AWS via Amazon Bedrock AgentCore, a JWT authorizer, a Lambda interceptor, and Cedar policies through Amazon Verified Permissions.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://goteleport.com/blog/your-ai-agent-needs-to-know-who-you-are>

## Questions this post answers

### How can an MCP server know which human user triggered a tool call from an AI agent?

A short-lived JWT generated by Teleport at login is attached to every MCP request via tsh mcp connect, carrying claims like sub (user email), roles, aud (target MCP gateway), and exp (expiration, typically one hour). The MCP server validates the token against Teleport's public OIDC keys and extracts identity before the tool executes, avoiding the need for a separate user database.

_Teams wiring identity into AI agent workflows can track approaches like this MCP auth pattern on daily.dev._

### What fields does a Teleport JWT include for MCP tool authorization?

The JWT payload includes sub for the verified user identity (e.g., alice@acme.com), roles listing the user's Teleport roles (e.g., developer, db-reader) used for authorization decisions, aud locking the token to a specific MCP gateway to prevent replay against other services, and exp setting a hard expiration, typically a one-hour TTL.

_Developers designing token-based auth for agent tooling can follow patterns like this on daily.dev._

### Why do MCP tools need identity injection instead of just trusting the AI agent making the call?

Without identity injection, MCP tools only see that an agent performed an action, not which human requested it, forcing a choice between overprovisioning access for everyone or applying least-common-denominator permissions that slow agents down. Identity injection lets tools filter data per user, log actions to a real person, and enforce per-user authorization without custom auth code in every tool.

_Anyone locking down agentic AI access controls can compare approaches like this on daily.dev._

## Similar posts on daily.dev

- [Teleport Launches Agentic Identity Framework to Secure AI Agents Across Enterprise Infrastructure](https://daily.dev/posts/teleport-launches-agentic-identity-framework-to-secure-ai-agents-across-enterprise-infrastructure-vosijavmu) · InfoQ · 0 upvotes · 0 comments
- [Tool Provisioning in MCP Servers: Controlling AI Agent Access in Production](https://daily.dev/posts/tool-provisioning-in-mcp-servers-controlling-ai-agent-access-in-production-xs5mwgwop) · portkey · 0 upvotes · 0 comments
- [MCP gets its missing enterprise authorization layer](https://daily.dev/posts/mcp-gets-its-missing-enterprise-authorization-layer-9gkkeg9th) · The New Stack · 1 upvotes · 0 comments
- [What Tech Leaders Need to Know About MCP Authentication in 2025](https://daily.dev/posts/what-tech-leaders-need-to-know-about-mcp-authentication-in-2025-xi92itnas) · Security Boulevard · 1 upvotes · 0 comments

---

Tags: [#authentication](https://daily.dev/tags/authentication), [#mcp](https://daily.dev/tags/mcp), [#agentic-ai](https://daily.dev/tags/agentic-ai), [#jwt](https://daily.dev/tags/jwt)

[View this post on daily.dev](https://daily.dev/posts/your-ai-agent-needs-to-know-who-you-are-p3pktkmzh)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Your AI Agent Needs to Know Who You Are","url":"https://daily.dev/posts/your-ai-agent-needs-to-know-who-you-are-p3pktkmzh","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/your-ai-agent-needs-to-know-who-you-are-p3pktkmzh"},"datePublished":"2026-08-23T12:22:59.205Z","dateModified":"2026-08-23T12:53:36.379Z","description":"MCP tools by default cannot see who actually triggered a request through an AI agent, only that 'the agent did something.' Teleport addresses this by issuing...","image":"https://media.daily.dev/image/upload/s--58gMhC4P--/f_auto/v1722860399/public/Placeholder%2012","thumbnailUrl":"https://media.daily.dev/image/upload/s--58gMhC4P--/f_auto/v1722860399/public/Placeholder%2012","isAccessibleForFree":true,"articleSection":"Teleport","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Teleport","logo":"https://media.daily.dev/image/upload/s--Dw-Bbw6O--/c_limit,w_256/f_auto,q_auto/v1787487494/logos/teleport?_a=BAMAMicg0","url":"https://daily.dev/sources/teleport"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/your-ai-agent-needs-to-know-who-you-are-p3pktkmzh","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"authentication,mcp,agentic-ai,jwt","timeRequired":"PT8M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Teleport","item":"https://daily.dev/sources/teleport"},{"@type":"ListItem","position":3,"name":"Your AI Agent Needs to Know Who You Are"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/your-ai-agent-needs-to-know-who-you-are-p3pktkmzh#faq","mainEntity":[{"@type":"Question","name":"How can an MCP server know which human user triggered a tool call from an AI agent?","acceptedAnswer":{"@type":"Answer","text":"A short-lived JWT generated by Teleport at login is attached to every MCP request via tsh mcp connect, carrying claims like sub (user email), roles, aud (target MCP gateway), and exp (expiration, typically one hour). The MCP server validates the token against Teleport's public OIDC keys and extracts identity before the tool executes, avoiding the need for a separate user database. Teams wiring identity into AI agent workflows can track approaches like this MCP auth pattern on daily.dev."}},{"@type":"Question","name":"What fields does a Teleport JWT include for MCP tool authorization?","acceptedAnswer":{"@type":"Answer","text":"The JWT payload includes sub for the verified user identity (e.g., alice@acme.com), roles listing the user's Teleport roles (e.g., developer, db-reader) used for authorization decisions, aud locking the token to a specific MCP gateway to prevent replay against other services, and exp setting a hard expiration, typically a one-hour TTL. Developers designing token-based auth for agent tooling can follow patterns like this on daily.dev."}},{"@type":"Question","name":"Why do MCP tools need identity injection instead of just trusting the AI agent making the call?","acceptedAnswer":{"@type":"Answer","text":"Without identity injection, MCP tools only see that an agent performed an action, not which human requested it, forcing a choice between overprovisioning access for everyone or applying least-common-denominator permissions that slow agents down. Identity injection lets tools filter data per user, log actions to a real person, and enforce per-user authorization without custom auth code in every tool. Anyone locking down agentic AI access controls can compare approaches like this on daily.dev."}}]}
```

