agentconnect.core.registry.search.schemas module

Registry Search Schemas - Single Source of Truth for Agent Search Interfaces

These schemas define the input, output, and result structures for agent search operations. They are used across all search interfaces: API endpoints, MCP servers, and LangChain tools.

class AgentSearchInput(**data)

Bases: BaseModel

Input schema for agent search.

Parameters:
  • query (str)

  • top_k (Annotated[int, Ge(ge=1), Le(le=20)])

  • strictness (Annotated[float, Ge(ge=0.0), Le(le=1.0)])

  • output_detail (Annotated[str, _PydanticGeneralMetadata(pattern='^(minimal|summary|capabilities|full)$')])

  • include_tags (List[str] | None)

query: str
top_k: int
strictness: float
output_detail: str
include_tags: Optional[List[str]]
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class AgentSearchResultItem(**data)

Bases: BaseModel

Defines the structure for each agent in the search results.

Parameters:
agent_id: str
similarity_score: float
name: Optional[str]
url: Optional[str]
payment_address: Optional[str]
summary: Optional[str]
tags: Optional[List[str]]
capabilities: Optional[List[Dict[str, str]]]
skills: Optional[List[Dict[str, str]]]
description: Optional[str]
examples: Optional[List[str]]
version: Optional[str]
organization: Optional[str]
developer: Optional[str]
auth_schemes: Optional[List[str]]
default_input_modes: Optional[List[str]]
default_output_modes: Optional[List[str]]
class Config

Bases: object

Config for the AgentSearchResultItem.

extra = 'ignore'
exclude_none = True
model_config: ClassVar[ConfigDict] = {'exclude_none': True, 'extra': 'ignore'}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class AgentSearchOutput(**data)

Bases: BaseModel

Output schema for agent search, containing a list of results.

Parameters:
message: str
results: List[AgentSearchResultItem]
class Config

Bases: object

Config for the AgentSearchOutput.

exclude_none = True
__str__()

Return a clean JSON string representation without null values.

Return type:

str

model_config: ClassVar[ConfigDict] = {'exclude_none': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].