patch_pool
Modify Apache Airflow pool configurations to adjust task execution capacity and resource allocation.
Instructions
Update a pool
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| pool_name | Yes | ||
| slots | No | ||
| description | No | ||
| include_deferred | No |
Implementation Reference
- src/airflow/pool.py:12-20 (registration)Registration of the patch_pool tool (and others) via get_all_functions, which returns a list of tuples (handler, name, description, read_only) for MCP tool registration.def get_all_functions() -> list[tuple[Callable, str, str, bool]]: """Return list of (function, name, description, is_read_only) tuples for registration.""" return [ (get_pools, "get_pools", "List pools", True), (get_pool, "get_pool", "Get a pool by name", True), (delete_pool, "delete_pool", "Delete a pool", False), (post_pool, "post_pool", "Create a pool", False), (patch_pool, "patch_pool", "Update a pool", False), ]
- src/airflow/pool.py:117-147 (handler)The async handler function implementing the patch_pool tool. It constructs a Pool object with provided optional updates and calls the Airflow PoolApi to patch the pool, returning the response as text.async def patch_pool( pool_name: str, slots: Optional[int] = None, description: Optional[str] = None, include_deferred: Optional[bool] = None, ) -> List[Union[types.TextContent, types.ImageContent, types.EmbeddedResource]]: """ Update a pool. Args: pool_name: The pool name. slots: The number of slots. description: The pool description. include_deferred: Whether to include deferred tasks in slot calculations. Returns: The updated pool details. """ pool = Pool() if slots is not None: pool.slots = slots if description is not None: pool.description = description if include_deferred is not None: pool.include_deferred = include_deferred response = pool_api.patch_pool(pool_name=pool_name, pool=pool) return [types.TextContent(type="text", text=str(response.to_dict()))]