Coverage for src/qdrant_loader_mcp_server/mcp/models.py: 100%

12 statements  

« prev     ^ index     » next       coverage.py v7.8.2, created at 2025-06-04 05:45 +0000

1"""MCP request and response models.""" 

2 

3from typing import Any 

4 

5from pydantic import BaseModel, Field 

6 

7 

8class MCPRequest(BaseModel): 

9 """MCP request model.""" 

10 

11 jsonrpc: str = Field(..., description="JSON-RPC version") 

12 method: str = Field(..., description="Method to call") 

13 params: dict[str, Any] = Field(..., description="Method parameters") 

14 id: int = Field(..., description="Request ID") 

15 

16 

17class MCPResponse(BaseModel): 

18 """MCP response model.""" 

19 

20 jsonrpc: str = Field(..., description="JSON-RPC version") 

21 id: int = Field(..., description="Request ID") 

22 result: Any | None = Field(None, description="Result of the request") 

23 error: dict[str, Any] | None = Field(None, description="Error information")