Coverage for /home/admin/Documents/AI/applications/lexigram-dev/lexigram/experimental/ai/lexigram-ai-mcp/src/lexigram/ai/mcp/constants.py: 92%

24 statements  

« prev     ^ index     » next       coverage.py v7.15.4, created at 2026-08-25 07:19 +0800

1"""MCP (Model Context Protocol) constants — JSON-RPC methods and defaults.""" 

2 

3from __future__ import annotations 

4 

5import importlib.metadata 

6 

7try: 

8 __version__: str = importlib.metadata.version("lexigram-ai-mcp") 

9except ImportError: 

10 __version__ = "0.0.0" 

11 

12 

13# -- Environment Variable Prefixes ------------------------------------------- 

14ENV_PREFIX: str = "LEX_AI_MCP__" 

15"""Environment variable prefix for MCP configuration.""" 

16 

17ENV_NESTED_DELIMITER: str = "__" 

18"""Delimiter for nested env var keys.""" 

19 

20 

21# --------------------------------------------------------------------------- 

22# JSON-RPC methods 

23# --------------------------------------------------------------------------- 

24 

25MCP_METHOD_INITIALIZE: str = "initialize" 

26MCP_METHOD_TOOLS_LIST: str = "tools/list" 

27MCP_METHOD_TOOLS_CALL: str = "tools/call" 

28MCP_METHOD_RESOURCES_LIST: str = "resources/list" 

29MCP_METHOD_RESOURCES_READ: str = "resources/read" 

30MCP_METHOD_PROMPTS_LIST: str = "prompts/list" 

31MCP_METHOD_PROMPTS_GET: str = "prompts/get" 

32 

33# --------------------------------------------------------------------------- 

34# Defaults 

35# --------------------------------------------------------------------------- 

36 

37DEFAULT_MCP_TIMEOUT_S: int = 30 

38DEFAULT_MCP_MAX_RETRIES: int = 3 

39MCP_PROTOCOL_VERSION: str = "2024-11-05" 

40 

41# --------------------------------------------------------------------------- 

42# Error codes 

43# --------------------------------------------------------------------------- 

44 

45ERROR_MCP_TOOL_NOT_FOUND: str = "LEX_MCP_001" 

46ERROR_MCP_CONNECTION_FAILED: str = "LEX_MCP_002" 

47ERROR_MCP_INVALID_RESPONSE: str = "LEX_MCP_003" 

48 

49__all__ = [ 

50 "DEFAULT_MCP_MAX_RETRIES", 

51 "DEFAULT_MCP_TIMEOUT_S", 

52 "ENV_NESTED_DELIMITER", 

53 "ENV_PREFIX", 

54 "ERROR_MCP_CONNECTION_FAILED", 

55 "ERROR_MCP_INVALID_RESPONSE", 

56 "ERROR_MCP_TOOL_NOT_FOUND", 

57 "MCP_METHOD_INITIALIZE", 

58 "MCP_METHOD_PROMPTS_GET", 

59 "MCP_METHOD_PROMPTS_LIST", 

60 "MCP_METHOD_RESOURCES_LIST", 

61 "MCP_METHOD_RESOURCES_READ", 

62 "MCP_METHOD_TOOLS_CALL", 

63 "MCP_METHOD_TOOLS_LIST", 

64 "MCP_PROTOCOL_VERSION", 

65 "__version__", 

66]