a2a.server.routes.common module

class a2a.server.routes.common.DefaultServerCallContextBuilder

Bases: ServerCallContextBuilder

A default implementation of ServerCallContextBuilder.

build(request: Request) → ServerCallContext

Builds a ServerCallContext from a Starlette Request.

Parameters:

request – The incoming Starlette Request object.

Returns:

A ServerCallContext instance populated with user and state information from the request.

build_user(request: Request) → User

Builds a User from a Starlette Request.

Parameters:

request – The incoming Starlette Request object.

Returns:

A User instance populated with user information from the request.

class a2a.server.routes.common.ServerCallContextBuilder

Bases: ABC

A class for building ServerCallContexts using the Starlette Request.

abstractmethod build(request: Request) → ServerCallContext

Builds a ServerCallContext from a Starlette Request.

class a2a.server.routes.common.StarletteUser(user: BaseUser)

Bases: User

Adapts a Starlette BaseUser to the A2A User interface.

property is_authenticated: bool

Returns whether the current user is authenticated.

property user_name: str

Returns the user name of the current user.

a2a.server.routes.common.create_event_source_response(content: Any, shutdown_grace_period: float = 0) → EventSourceResponse

Creates an SSE response, preserving support for older sse-starlette.

A non-zero grace period requires cooperative shutdown support from sse-starlette, provided by the HTTP server optional dependencies.

a2a.server.routes.common.serialize_list_tasks_response(response: ListTasksResponse, include_artifacts: bool) → dict[str, Any]

Serializes a ListTasks response according to artifact semantics.