> ## Documentation Index
> Fetch the complete documentation index at: https://uom-demo.vercel.app/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# docs_search

> [<span className="flex items-center gap-1"><Icon icon="external-link"/>View Source</span>](https://github.com/corovcam/Universal-Object-Mapping/tree/main/services/orchestrator/src/react_agent/custom_tools/docs_search.py)

Documentation search tools via MCP servers and fallback fetching.

Provides tools for fetching framework documentation from:

1. Microsoft Learn MCP (streamable HTTP)
2. Spring Docs MCP (stdio via npx)
3. Fallback: TavilySearch (if TAVILY\_API\_KEY is set) or basic httpx fetching

## react\_agent.custom\_tools.docs\_search.DocsSearchInput Objects

```python theme={null}
class DocsSearchInput(BaseModel)
```

[<span className="flex items-center gap-1"><Icon icon="external-link" />View Source</span>](https://github.com/corovcam/Universal-Object-Mapping/blob/main/services/orchestrator/src/react_agent/custom_tools/docs_search.py#L23)

Input schema for documentation search tools.

#### react\_agent.custom\_tools.docs\_search.fetch\_web\_docs

```python theme={null}
@tool("fetch_web_docs", args_schema=DocsSearchInput)
async def fetch_web_docs(query: str, framework_version: str = "") -> str
```

[<span className="flex items-center gap-1"><Icon icon="external-link" />View Source</span>](https://github.com/corovcam/Universal-Object-Mapping/blob/main/services/orchestrator/src/react_agent/custom_tools/docs_search.py#L34)

Fetch documentation from the web for any framework.

Uses Tavily if TAVILY\_API\_KEY is available, otherwise falls back to
basic HTTP fetching from official documentation sites.

#### react\_agent.custom\_tools.docs\_search.load\_docs\_mcp\_tools

```python theme={null}
@asynccontextmanager
async def load_docs_mcp_tools() -> AsyncGenerator[list[BaseTool], None]
```

[<span className="flex items-center gap-1"><Icon icon="external-link" />View Source</span>](https://github.com/corovcam/Universal-Object-Mapping/blob/main/services/orchestrator/src/react_agent/custom_tools/docs_search.py#L109)

Load documentation tools from MCP servers.

Connects to:

1. Microsoft Learn MCP (streamable HTTP)
2. Spring Docs MCP (stdio via npx)

Returns loaded MCP tools.
