clear_buffer
Clear the output buffer for a specified UART terminal session, removing stored data to start fresh with new serial communication.
Instructions
清空指定终端会话的输出缓冲区
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes | 会话ID(即串口路径),如 /dev/ttyUSB0 或 COM1 |
Implementation Reference
- src/uart_mcp/tools/terminal.py:116-126 (handler)The main tool handler function for 'clear_buffer'. Accepts session_id, delegates to TerminalManager.clear_buffer().
def clear_buffer(session_id: str) -> dict[str, Any]: """清空会话输出缓冲区 Args: session_id: 会话ID(串口路径) Returns: 操作结果 """ manager = get_terminal_manager() return manager.clear_buffer(session_id) - src/uart_mcp/terminal_manager.py:182-186 (handler)TerminalSession.clear_buffer() - clears the session's internal deque buffer under a thread lock.
def clear_buffer(self) -> None: """清空输出缓冲区""" with self._buffer_lock: self._buffer.clear() self._buffer_size = 0 - src/uart_mcp/terminal_manager.py:397-411 (handler)TerminalManager.clear_buffer() - retrieves the session and calls session.clear_buffer(), returns success dict.
def clear_buffer(self, session_id: str) -> dict[str, Any]: """清空终端缓冲区 Args: session_id: 会话ID(串口路径) Returns: 操作结果 Raises: SessionNotFoundError: 会话不存在 """ session = self.get_session(session_id) session.clear_buffer() return {"success": True, "session_id": session_id} - Schema/tool definition for clear_buffer: name='clear_buffer', description, and inputSchema requiring session_id string.
CLEAR_BUFFER_TOOL: dict[str, Any] = { "name": "clear_buffer", "description": "清空指定终端会话的输出缓冲区", "inputSchema": { "type": "object", "properties": { "session_id": { "type": "string", "description": "会话ID(即串口路径),如 /dev/ttyUSB0 或 COM1", }, }, "required": ["session_id"], }, } - src/uart_mcp/server.py:133-138 (registration)Registration of clear_buffer in handle_list_tools() - exposes the tool via MCP list_tools endpoint.
types.Tool( name=CLEAR_BUFFER_TOOL["name"], description=CLEAR_BUFFER_TOOL["description"], inputSchema=CLEAR_BUFFER_TOOL["inputSchema"], ), ] - src/uart_mcp/server.py:175-176 (registration)Tool dispatch in handle_call_tool() - routes 'clear_buffer' calls to the clear_buffer function.
elif name == "clear_buffer": result = clear_buffer(**arguments) - src/uart_mcp/server.py:35-36 (registration)Import of CLEAR_BUFFER_TOOL and clear_buffer from tools.terminal in server.py.
from .tools.terminal import ( CLEAR_BUFFER_TOOL,