config.py 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. """
  2. MCP 服务器配置
  3. """
  4. import os
  5. from dotenv import load_dotenv, dotenv_values
  6. # 加载 .env 文件(优先级高于系统环境变量)
  7. load_dotenv(override=True)
  8. # MCP 服务器列表配置 - HTTP MCP 服务器
  9. MCP_SERVERS = {
  10. "novel-translator": {
  11. "name": "Novel Translator MCP",
  12. "url": "https://d8d-ai-vscode-8080-223-236-template-6-group.dev.d8d.fun/mcp",
  13. "auth_type": "none",
  14. "enabled": True
  15. },
  16. "novel-platform-user": {
  17. "name": "Novel Platform User MCP",
  18. "url": "https://d8d-ai-vscode-8080-223-238-template-6-group.dev.d8d.fun/mcp/",
  19. "auth_type": "jwt",
  20. "login_url": "/api/v1/auth/login",
  21. "base_url": "https://d8d-ai-vscode-8080-223-238-template-6-group.dev.d8d.fun",
  22. "enabled": True
  23. },
  24. "novel-platform-admin": {
  25. "name": "Novel Platform Admin MCP",
  26. "url": "https://d8d-ai-vscode-8080-223-238-template-6-group.dev.d8d.fun/admin-mcp/",
  27. "auth_type": "jwt",
  28. "login_url": "/api/v1/auth/login",
  29. "base_url": "https://d8d-ai-vscode-8080-223-238-template-6-group.dev.d8d.fun",
  30. "enabled": True
  31. },
  32. "template-241-mcp-app": {
  33. "name": "Template 241 MCP App",
  34. "url": "https://d8d-ai-vscode-8080-223-241-template-6-group.dev.d8d.fun/mcp",
  35. "auth_type": "none",
  36. "enabled": True,
  37. "description": "MCP App 架构 - 36 个 shadcn/ui 组件"
  38. },
  39. }
  40. # NPM MCP 服务器 (本地进程)
  41. NPM_MCP_SERVERS = {
  42. "playwright": {
  43. "command": "npx",
  44. "args": ["-y", "@executeautomation/mcp-server-playwright"],
  45. "enabled": False
  46. },
  47. "web-reader": {
  48. "command": "npx",
  49. "args": ["-y", "web-reader-mcp"],
  50. "enabled": False
  51. },
  52. "zai-mcp": {
  53. "command": "npx",
  54. "args": ["-y", "zai-mcp-server"],
  55. "enabled": False
  56. }
  57. }
  58. # Claude API 配置
  59. # 直接从 .env 文件读取,确保优先级最高(不受系统环境变量影响)
  60. _env_values = dotenv_values(".env")
  61. ANTHROPIC_API_KEY = _env_values.get("ANTHROPIC_AUTH_TOKEN") or _env_values.get("ANTHROPIC_API_KEY") or ""
  62. ANTHROPIC_BASE_URL = _env_values.get("ANTHROPIC_BASE_URL") or "https://api.anthropic.com"
  63. ANTHROPIC_MODEL = _env_values.get("ANTHROPIC_MODEL") or "claude-sonnet-4-6"