close_repository
Terminates an active repository session to free resources. Provide a session ID to close a specific session.
Instructions
Close an active repository session.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- Core registry method that removes a session from the session dict and updates the default session pointer.
def close_repository(self, session_id: str | None = None) -> bool: handle = self.get(session_id) if handle is None: return False del self._sessions[handle.session_id] if self._default_session_id == handle.session_id: self._default_session_id = next(reversed(self._sessions), None) if self._sessions else None return True - Runtime wrapper that retrieves the handle, delegates to registry.close_repository, and returns a dict with closed status.
def close_repository(self, session_id: str | None = None) -> dict[str, Any]: handle = self.registry.get(session_id) if handle is None: return {"closed": False} closed = self.registry.close_repository(session_id) return { "closed": closed, "session_id": handle.session_id, "repo_path": str(handle.repo_path), } - src/trailmark_mcp/mcp_app.py:42-44 (handler)MCP tool handler decorated with @mcp.tool() -- the actual entry point called by the MCP framework for the close_repository tool.
def close_repository(session_id: str | None = None) -> dict[str, Any]: """Close an active repository session.""" return app_runtime.close_repository(session_id=session_id) - Tool specification (schema) defining the close_repository tool metadata and its session_id parameter.
ToolSpec( name="close_repository", category="lifecycle", description="Close the active repository session.", parameters={"session_id": SESSION_ID_PARAM}, ), - src/trailmark_mcp/mcp_app.py:41-44 (registration)The @mcp.tool() decorator registers close_repository as an MCP tool on the FastMCP server.
@mcp.tool() def close_repository(session_id: str | None = None) -> dict[str, Any]: """Close an active repository session.""" return app_runtime.close_repository(session_id=session_id)