Token导航 LogoToken导航TokenDH.com
RAID MCP SERVER logo
运维云端stdio官方级别未说明来源级核验

RAID MCP SERVER

MCP Server

RAID MCP Server是一个企业级项目风险管理服务器,提供完整的RAID(风险、行动、问题、决策)管理功能,支持JWT认证和角色权限控制。

工具数

34

提示词数

0

GitHub Stars

0

资源数

0
风险管理PythonClaudeCRUD操作Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

saurabhudeshi

提供方

saurabhudeshi

最后核验

2026/5/17 20:19

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv venv

详细介绍

RAID MCP服务器

用于企业RAID管理的完整模型上下文协议(MCP)服务器

一个生产就绪的MCP服务器,用于在项目管理中管理RAID(风险、行动、问题、决策)。内置FastMCP、Supabase PostgreSQL、JWT身份验证和全面的安全功能。

![Python 3.11+](https://www.python.org/downloads/) ![FastMCP](https://github.com/jlowin/fastmcp) ![License: MIT](https://opensource.org/licenses/MIT)

🎥 观看现场演示 -6部分系列,通过顺序提示展示所有服务器功能

______________________________________________________________________

📋 目录

______________________________________________________________________

🎯 概述

RAID MCP服务器是通过模型上下文协议管理项目风险、行动、问题和决策的综合解决方案。它提供了一个安全的、基于角色的API和JWT身份验证,专门为Claude Desktop等人工智能助手设计。

主要亮点

  • 38 MCP工具 -完成所有实体的CRUD操作
  • JWT身份验证 -使用bcrypt哈希进行基于令牌的安全身份验证
  • 基于角色的访问控制 -具有精细权限的管理员和用户角色
  • 表格格式列表 -带有动作提示的漂亮降价表
  • 交互式帮助系统 -为每次操作提供内置指导
  • 生产就绪 -全面的错误处理和记录

______________________________________________________________________

📊 什么是RAID?

RAID是一个用于跟踪关键项目要素的项目管理框架:

要素目的示例
Risk未来可能对项目产生负面影响的事件“关键开发人员可能会离开团队”
A.actions需要完成的任务和活动“周五前实施用户身份验证”
一、issues当前需要解决的问题“生产服务器发生停机”
D决策做出的关键选择和决定“使用PostgreSQL而不是MongoDB”

______________________________________________________________________

✨ 特性

核心功能

  • 完成CRUD操作 -为所有实体创建、读取、更新、删除
  • 用户管理 -具有基于角色的权限的完整用户生命周期
  • 项目管理 -用户分配的多项目支持
  • RAID项目 -管理风险、行动、问题和决策
  • 表格格式 -显示为干净标记表的列表和单个记录
  • 行动提示 -下表和详细视图中的快速行动建议

安全和身份验证

  • JWT代币 -安全、有时间限制的身份验证令牌
  • Bcrypt哈希 -行业标准密码加密
  • 基于角色的访问 -具有不同权限的管理员和用户角色
  • 项目级安全 -用户只能访问分配的项目
  • 审计日志 -综合活动记录

开发者体验

  • 交互式帮助 - help_tool()help_workflow() 用于指导
  • MCP提示 -带有验证功能的交互式表单
  • 大量文档 -详细的文档字符串和注释
  • 错误处理 -清晰、可操作的错误消息
  • 类型安全 -用于验证的Pydantic模式

______________________________________________________________________

🏗️ 建筑

系统层

┌─────────────────────────────────────────────────────────────┐
│                    Claude Desktop (Client)                   │
│               Model Context Protocol (MCP)                   │
└────────────────────────┬────────────────────────────────────┘
                         │
                         │ MCP Protocol
                         ▼
┌─────────────────────────────────────────────────────────────┐
│                   RAID MCP Server (FastMCP)                  │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  main.py - 38 MCP Tools                              │   │
│  │  ├─ Health Check                                     │   │
│  │  ├─ Authentication (3 tools)                         │   │
│  │  ├─ User Management (5 tools)                        │   │
│  │  ├─ Project Management (6 tools)                     │   │
│  │  ├─ Risk Management (4 tools)                        │   │
│  │  ├─ Action Management (4 tools)                      │   │
│  │  ├─ Issue Management (4 tools)                       │   │
│  │  ├─ Decision Management (4 tools)                    │   │
│  │  └─ Help & Discovery (3 tools)                       │   │
│  └──────────────────────────────────────────────────────┘   │
│                          ▼                                   │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  services/raid_service.py - Business Logic           │   │
│  │  ├─ Authentication & Authorization                   │   │
│  │  ├─ Token Verification                               │   │
│  │  ├─ Access Control                                   │   │
│  │  └─ Data Validation                                  │   │
│  └──────────────────────────────────────────────────────┘   │
│                          ▼                                   │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  database/ - Repository Pattern                      │   │
│  │  ├─ user_repository.py                               │   │
│  │  ├─ project_repository.py                            │   │
│  │  └─ raid_repositories.py                             │   │
│  └──────────────────────────────────────────────────────┘   │
└────────────────────────┬────────────────────────────────────┘
                         │
                         │ Async HTTP
                         ▼
┌─────────────────────────────────────────────────────────────┐
│              Supabase PostgreSQL Database                    │
│  ┌─────────┬──────────┬────────┬────────────┬───────────┐   │
│  │  users  │ projects │  risks │  actions   │   issues  │   │
│  └─────────┴──────────┴────────┴────────────┴───────────┘   │
│  ┌──────────────────┬───────────────────────────────────┐   │
│  │    decisions     │   project_assignments             │   │
│  └──────────────────┴───────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────┘

三层架构

  1. MCP工具层 (src/main.py)-处理MCP协议通信的FastMCP工具
  2. 业务逻辑层 (src/services/)-具有身份验证、授权和验证的服务层
  3. 数据访问层 (src/database/)-数据库操作的存储库模式

______________________________________________________________________

🚀 快速开始

1.克隆和设置

# Clone repository
git clone  RAID_MCP_ONE
cd RAID_MCP_ONE

# Create virtual environment
python -m venv venv
.\venv\Scripts\Activate.ps1

# Install dependencies
pip install -r requirements.txt

2.配置环境

# Copy example environment file
copy .env.example .env

# Edit .env with your credentials
notepad .env

3.设置数据库

  1. 在以下位置创建辅助数据库帐户https://supabase.com
  2. 创建新项目
  3. 运行数据库设置SQL(请参阅 数据库设置)
  4. 将您的Subabase URL和API密钥复制到 .env

4.启动服务器

python src/main.py

5.配置克劳德桌面

Claude桌面设置 详细说明。

______________________________________________________________________

📦 先决条件

系统要求

  • Python 3.11+ (推荐:3.11或3.12)
  • Git 用于版本控制
  • Windows/Mac/Linux 兼容

外部服务

- PostgreSQL数据库 - 实时订阅 - 内置身份验证

MCP客户端

  • 克劳德桌面 (主要客户)-https://claude.ai/download
  • 任何兼容MCP的客户端

______________________________________________________________________

💿 安装

分步安装

1.先决条件检查

# Check Python version (must be 3.11+)
python --version

# Check Git installation
git --version

# Check pip
pip --version

2.克隆存储库

# Navigate to your workspace
cd D:\MCP\learn

# Clone the project
git clone  RAID_MCP_ONE
cd RAID_MCP_ONE

3.设置Python虚拟环境

# Create virtual environment
python -m venv venv

# Activate it (Windows PowerShell)
.\venv\Scripts\Activate.ps1

# For Command Prompt use:
# .\venv\Scripts\activate.bat

# For Git Bash use:
# source venv/Scripts/activate

4.安装Python依赖项

# Upgrade pip
python -m pip install --upgrade pip

# Install requirements
pip install -r requirements.txt

# Verify installation
pip list

预期包裹:

  • fastmcp==0.3.0
  • 苏巴基==2.10.0
  • PyJWT==2.9.0
  • 加密==4.2.1
  • 媒染剂==2.10.3
  • loguru=0.7.3

______________________________________________________________________

🗄️ 数据库设置

1.创建Supabase项目

  1. 首选https://supabase.com
  2. 注册一个免费帐户
  3. 创建新项目
  4. 等待项目配置(约2分钟)

2.获取凭据

  1. 首选 项目设置API
  2. 找到你的 项目Url (例如。, https://xxxxx.supabase.co)
  3. 找到你的 匿名/公钥 (开始于 eyJ...)
  4. 为您的 .env 文件

3.运行数据库安装脚本

  1. 在您的Supabase项目中,请访问 SQL编辑器
  2. 复制下面的SQL脚本
  3. 粘贴到SQL编辑器中并单击
-- ============================================
-- 1. USERS TABLE
-- ============================================
CREATE TABLE users (
    id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    email VARCHAR(255) UNIQUE NOT NULL,
    username VARCHAR(100) UNIQUE NOT NULL,
    password_hash TEXT NOT NULL,
    full_name VARCHAR(200),
    role VARCHAR(20) DEFAULT 'user' CHECK (role IN ('admin', 'user')),
    is_active BOOLEAN DEFAULT true,
    created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
    updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
);

-- ============================================
-- 2. PROJECTS TABLE
-- ============================================
CREATE TABLE projects (
    id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    name VARCHAR(200) NOT NULL,
    description TEXT NOT NULL,
    status VARCHAR(20) DEFAULT 'planning' 
        CHECK (status IN ('planning', 'active', 'on_hold', 'completed', 'cancelled')),
    start_date DATE NOT NULL,
    end_date DATE,
    created_by UUID REFERENCES users(id) ON DELETE SET NULL,
    created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
    updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
);

-- ============================================
-- 3. PROJECT ASSIGNMENTS TABLE
-- ============================================
CREATE TABLE project_assignments (
    id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    project_id UUID REFERENCES projects(id) ON DELETE CASCADE,
    user_id UUID REFERENCES users(id) ON DELETE CASCADE,
    assigned_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
    UNIQUE(project_id, user_id)
);

-- ============================================
-- 4. RISKS TABLE
-- ============================================
CREATE TABLE risks (
    id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    project_id UUID REFERENCES projects(id) ON DELETE CASCADE,
    title VARCHAR(200) NOT NULL,
    description TEXT NOT NULL,
    probability VARCHAR(20) CHECK (probability IN ('low', 'medium', 'high', 'critical')),
    impact VARCHAR(20) CHECK (impact IN ('low', 'medium', 'high', 'critical')),
    priority VARCHAR(20) CHECK (priority IN ('low', 'medium', 'high', 'critical')),
    status VARCHAR(20) DEFAULT 'identified' 
        CHECK (status IN ('identified', 'assessed', 'mitigating', 'mitigated', 'accepted', 'occurred')),
    mitigation_strategy TEXT,
    contingency_plan TEXT,
    owner_id UUID REFERENCES users(id) ON DELETE SET NULL,
    created_by UUID REFERENCES users(id) ON DELETE SET NULL,
    created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
    updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
);

-- ============================================
-- 5. ACTIONS TABLE
-- ============================================
CREATE TABLE actions (
    id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    project_id UUID REFERENCES projects(id) ON DELETE CASCADE,
    title VARCHAR(200) NOT NULL,
    description TEXT NOT NULL,
    priority VARCHAR(20) DEFAULT 'medium' CHECK (priority IN ('low', 'medium', 'high', 'critical')),
    status VARCHAR(20) DEFAULT 'pending' 
        CHECK (status IN ('pending', 'in_progress', 'completed', 'cancelled', 'on_hold')),
    due_date DATE,
    completion_date DATE,
    assigned_to UUID REFERENCES users(id) ON DELETE SET NULL,
    dependencies TEXT,
    created_by UUID REFERENCES users(id) ON DELETE SET NULL,
    created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
    updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
);

-- ============================================
-- 6. ISSUES TABLE
-- ============================================
CREATE TABLE issues (
    id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    project_id UUID REFERENCES projects(id) ON DELETE CASCADE,
    title VARCHAR(200) NOT NULL,
    description TEXT NOT NULL,
    severity VARCHAR(20) CHECK (severity IN ('low', 'medium', 'high', 'critical')),
    priority VARCHAR(20) DEFAULT 'medium' CHECK (priority IN ('low', 'medium', 'high', 'critical')),
    status VARCHAR(20) DEFAULT 'open' 
        CHECK (status IN ('open', 'in_progress', 'resolved', 'closed', 'reopened')),
    resolution TEXT,
    date_identified DATE DEFAULT CURRENT_DATE,
    date_resolved DATE,
    assigned_to UUID REFERENCES users(id) ON DELETE SET NULL,
    created_by UUID REFERENCES users(id) ON DELETE SET NULL,
    created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
    updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
);

-- ============================================
-- 7. DECISIONS TABLE
-- ============================================
CREATE TABLE decisions (
    id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    project_id UUID REFERENCES projects(id) ON DELETE CASCADE,
    title VARCHAR(200) NOT NULL,
    description TEXT NOT NULL,
    decision_date DATE NOT NULL,
    status VARCHAR(20) DEFAULT 'proposed' 
        CHECK (status IN ('proposed', 'approved', 'rejected', 'implemented', 'reversed')),
    rationale TEXT,
    alternatives_considered TEXT,
    stakeholders TEXT,
    made_by UUID REFERENCES users(id) ON DELETE SET NULL,
    created_by UUID REFERENCES users(id) ON DELETE SET NULL,
    created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
    updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
);

-- ============================================
-- INDEXES FOR PERFORMANCE
-- ============================================
CREATE INDEX idx_projects_created_by ON projects(created_by);
CREATE INDEX idx_project_assignments_project ON project_assignments(project_id);
CREATE INDEX idx_project_assignments_user ON project_assignments(user_id);
CREATE INDEX idx_risks_project ON risks(project_id);
CREATE INDEX idx_actions_project ON actions(project_id);
CREATE INDEX idx_issues_project ON issues(project_id);
CREATE INDEX idx_decisions_project ON decisions(project_id);

-- ============================================
-- UPDATED_AT TRIGGERS
-- ============================================
CREATE OR REPLACE FUNCTION update_updated_at_column()
RETURNS TRIGGER AS $$
BEGIN
    NEW.updated_at = NOW();
    RETURN NEW;
END;
$$ LANGUAGE plpgsql;

CREATE TRIGGER update_users_updated_at BEFORE UPDATE ON users
    FOR EACH ROW EXECUTE FUNCTION update_updated_at_column();

CREATE TRIGGER update_projects_updated_at BEFORE UPDATE ON projects
    FOR EACH ROW EXECUTE FUNCTION update_updated_at_column();

CREATE TRIGGER update_risks_updated_at BEFORE UPDATE ON risks
    FOR EACH ROW EXECUTE FUNCTION update_updated_at_column();

CREATE TRIGGER update_actions_updated_at BEFORE UPDATE ON actions
    FOR EACH ROW EXECUTE FUNCTION update_updated_at_column();

CREATE TRIGGER update_issues_updated_at BEFORE UPDATE ON issues
    FOR EACH ROW EXECUTE FUNCTION update_updated_at_column();

CREATE TRIGGER update_decisions_updated_at BEFORE UPDATE ON decisions
    FOR EACH ROW EXECUTE FUNCTION update_updated_at_column();

4.验证数据库表

运行脚本后,验证是否已创建所有7个表:

  • users
  • projects
  • project_assignments
  • risks
  • actions
  • issues
  • decisions

______________________________________________________________________

⚙️ 配置

环境变量

创建一个 .env 项目根目录中的文件:

# Copy example file
copy .env.example .env

# Edit with your credentials
notepad .env

.env文件内容

# ==================================================
# Supabase Database Configuration
# ==================================================
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_KEY=your-anon-key-here

# ==================================================
# JWT Authentication Configuration
# ==================================================
JWT_SECRET_KEY=your-super-secret-key-change-this-in-production
JWT_ALGORITHM=HS256
JWT_EXPIRATION_HOURS=24

# ==================================================
# Server Configuration
# ==================================================
MCP_SERVER_HOST=0.0.0.0
MCP_SERVER_PORT=8000

# ==================================================
# Application Configuration
# ==================================================
APP_NAME=RAID MCP Server
APP_VERSION=1.0.0
DEBUG=false
LOG_LEVEL=INFO

生成JWT密钥

运行此命令以生成安全密钥:

python -c "import secrets; print(secrets.token_urlsafe(32))"

复制输出并将其粘贴为您的 JWT_SECRET.env.

安全说明

⚠️ 重要:

  • 永不承诺 .env 到版本控制(它已经在 .gitignore)
  • 使用强大、独特 JWT_SECRET_KEY 生产中
  • 定期轮换JWT机密
  • 使用特定于环境的配置

______________________________________________________________________

🏃 运行服务器

启动服务器

# Activate virtual environment
.\venv\Scripts\Activate.ps1

# Run server
python src/main.py

期望输出

======================================================================
RAID Management MCP Server
======================================================================
Server Name: RAID Management Server
Transport: Streamable HTTP
Host: 0.0.0.0
Port: 8000
URL: http://0.0.0.0:8000
======================================================================

[HELP] GETTING HELP:
  - health_check - Verify server is running
  - list_all_tools - See all available tools
  - help_tool('tool_name') - Get detailed help for any tool

[TOOLS] Available Tools (38 total)
...

Starting server...

测试服务器连接

# In Claude Desktop, run:
health_check

# Expected response:
{
  "status": "healthy",
  "server": "RAID Management MCP Server",
  "version": "1.0.0",
  "tools_available": 38,
  "message": "Server is running and ready to accept requests"
}

______________________________________________________________________

🖥️ Claude桌面设置

1.配置克劳德桌面

编辑您的Claude Desktop配置文件:

窗户: %APPDATA%\Claude\claude_desktop_config.json\ 雨衣: ~/Library/Application Support/Claude/claude_desktop_config.json

添加此配置:

{
  "mcpServers": {
    "raid-server": {
      "command": "D:\\MCP\\learn\\RAID_MCP_ONE\\venv\\Scripts\\python.exe",
      "args": ["D:\\MCP\\learn\\RAID_MCP_ONE\\src\\main.py"]
    }
  }
}

重要:更新路径以匹配您的实际项目位置。

2.重新启动克劳德桌面

添加配置后:

  1. 完全关闭克劳德桌面
  2. 重新打开克劳德桌面
  3. MCP服务器将自动启动

3.验证连接

在Claude Desktop聊天中,键入:

Check if the RAID server is healthy and running

您应该看到健康状况响应。

______________________________________________________________________

💬 使用服务器

首次设置

1.创建管理员用户

Create a RAID admin user with:
- username: admin
- email: admin@example.com
- password: AdminPass123!
- full_name: System Administrator
- role: admin

2.登录

Login to RAID using email 'admin@example.com' and password 'AdminPass123!'

注: 成功登录后,Claude Desktop会自动记住您的令牌。无需在后续提示中提供!

3.更改密码

Change my RAID password from 'AdminPass123!' to 'NewSecurePass456!'

创建项目和用户

创建项目:

Create a new project named 'Website Redesign' with description 'Complete redesign of company website', status 'planning', start date '2025-01-01', and end date '2025-06-30'

创建用户:

Create a new user with email 'john@example.com', username 'john_doe', password 'UserPass123', full name 'John Doe', and role 'user'

将用户分配给项目:

Assign user with ID 'user-id-here' to project with ID 'project-id-here'

管理RAID项目

创造风险:

Create a risk in project 'project-id-here' with title 'Database Migration Risk', description 'Risk of data loss during migration', probability 'medium', impact 'high', and priority 'high'

创建操作:

Create an action in project 'project-id-here' with title 'Setup CI/CD Pipeline', description 'Configure GitHub Actions', priority 'high', and due date '2025-02-15'

创建问题:

Create an issue in project 'project-id-here' with title 'Login page not responsive', description 'Cannot login from mobile devices', severity 'high', and priority 'critical'

制定决策:

Create a decision in project 'project-id-here' with title 'Use PostgreSQL', description 'Selected PostgreSQL as primary database', and decision date '2025-01-10'

获取帮助

Show me how to use the create_risk tool
List all available RAID tools

有关更多示例提示,请参见 readmes/PROMPTS.md.

______________________________________________________________________

🔐 安全

身份验证流程

1. User calls login(email, password)
   ↓
2. Server verifies password (bcrypt)
   ↓
3. Server generates JWT token
   ↓
4. User receives token
   ↓
5. Claude Desktop remembers token
   ↓
6. Server validates token on each request
   ↓
7. Token expires after JWT_EXPIRATION_HOURS

密码安全性

  • Bcrypt哈希:行业标准密码加密
  • 盐生成:每个密码都有唯一的盐
  • 成本因素:12轮(可配置)
  • 无纯文本存储:密码从不以纯文本形式存储

令牌安全

  • HS256算法:使用SHA-256的HMAC
  • 过期:可配置(默认24小时)
  • 有效载荷:包含user_id、电子邮件、角色
  • 秘密轮换:定期更换JWT_SECRET_KEY

访问控制

角色权限
管理员•创建/更新/删除用户

•创建/更新/删除项目 •将用户分配给项目 •完全访问所有RAID项目| | 用户 |•仅查看分配的项目 •在分配的项目中创建RAID项 •更新/删除自己的RAID项目 •更改自己的密码|

______________________________________________________________________

📁 项目结构

RAID_MCP_ONE/
├── .env                          # Environment variables (not in git)
├── .env.example                  # Environment template
├── .gitignore                    # Git ignore rules
├── README.md                     # This file
├── requirements.txt              # Python dependencies
│
├── readmes/                      # Additional documentation
│   ├── TESTING_GUIDE.md         # Manual testing instructions
│   ├── GITHUB_COPILOT_MCP_GUIDE.md  # GitHub Copilot setup
│   ├── PROMPTS.md               # Claude Desktop prompt examples
│   └── ARCHITECTURE_DIAGRAMS.md # Visual architecture diagrams
│
└── src/                          # Source code
    ├── main.py                   # FastMCP server & MCP tools (38 tools)
    │
    ├── config/                   # Configuration
    │   └── settings.py          # App settings (Pydantic)
    │
    ├── models/                   # Data models
    │   └── enums.py             # Enumerations (Status, Priority, etc.)
    │
    ├── schemas/                  # Pydantic schemas
    │   ├── __init__.py          # Schema exports
    │   ├── auth.py              # Authentication schemas
    │   ├── user.py              # User schemas
    │   ├── project.py           # Project schemas
    │   └── raid.py              # RAID item schemas
    │
    ├── auth/                     # Authentication
    │   ├── password.py          # Bcrypt password hashing
    │   └── jwt_handler.py       # JWT token operations
    │
    ├── database/                 # Database layer
    │   ├── base_repository.py   # Base repository class
    │   ├── supabase_client.py   # Supabase client singleton
    │   ├── user_repository.py   # User data access
    │   ├── project_repository.py # Project data access
    │   └── raid_repositories.py # RAID items data access
    │
    ├── services/                 # Business logic
    │   └── raid_service.py      # Main service layer
    │
    └── utils/                    # Utilities
        ├── interactive_prompts.py # Help & validation
        └── formatters.py         # Table formatting

______________________________________________________________________

📚 api参考

工具类别

类别工具描述
健康1服务器状态检查
认证3登录和密码管理
用户管理5完成用户CRUD(仅限管理员)
项目管理6完成项目CRUD+任务
风险管理4完成风险CRUD
行动管理4完成CRUD操作
问题管理4完成问题CRUD
决策管理4完成决策CRUD
帮助和发现3互动式协助
总计38涵盖所有操作

快速参考

身份验证工具

  • login(email, password) -获取JWT令牌
  • change_password(token, current_password, new_password) -更改密码
  • reset_user_password(token, user_id, new_password) -管理员重置用户密码

用户管理工具(仅限管理员)

  • create_user(token, email, username, password, full_name, role) -创建新用户
  • list_users(token, skip, limit) -列出所有用户
  • get_user(token, user_id) -获取用户详细信息
  • update_user(token, user_id, ...) -更新用户信息
  • delete_user(token, user_id) -删除用户

项目管理工具

  • create_project(token, name, description, status, start_date, end_date) -创建项目
  • list_projects(token, skip, limit) -列出项目(按访问权限筛选)
  • get_project(token, project_id) -获取项目详细信息
  • update_project(token, project_id, ...) -更新项目
  • delete_project(token, project_id) -删除项目
  • assign_user_to_project(token, project_id, user_id) -分配用户(仅限管理员)

RAID管理工具

每个RAID类别(风险、行动、问题、决策)都有4个工具:

  • create_* -创建新项目
  • list_* -列出具有筛选功能的项目
  • update_* -更新项目
  • delete_* -删除项目

有关详细的参数说明和示例,请参阅 readmes/PROMPTS.md.

______________________________________________________________________

🐛 故障排除

常见问题

服务器无法启动

问题: ModuleNotFoundError: No module named 'fastmcp'

解决方案:

.\venv\Scripts\Activate.ps1
pip install -r requirements.txt

______________________________________________________________________

认证失败

问题: “电子邮件或密码无效”

解决方案:

  • 验证数据库中是否存在管理员用户
  • 检查密码是否正确
  • 确保用户 is_active = true

______________________________________________________________________

数据库连接错误

问题: “Supabase连接失败”

解决方案:

# Verify .env settings
Get-Content .env | Select-String "SUPABASE"

# Test connection from Python
python -c "from src.database.supabase_client import get_supabase_client; print(get_supabase_client())"

______________________________________________________________________

令牌已过期

问题: “令牌已过期”

解决方案:

Login again to get new token:
login to RAID using email 'your-email@example.com' and password 'your-password'

______________________________________________________________________

权限不足

问题: “需要管理员角色”

解决方案:

  • 某些操作需要管理员角色(用户管理、项目删除)
  • 检查用户在数据库中的角色
  • 使用管理员帐户登录以进行管理员操作

______________________________________________________________________

列表返回空

问题: list_projects() return“未找到项目”

解决方案:

  • 普通用户只能看到分配的项目
  • 使用管理员帐户将用户分配给项目
  • 管理员查看所有项目

______________________________________________________________________

调试模式

启用调试登录 .env:

DEBUG=true
LOG_LEVEL=DEBUG

______________________________________________________________________

📖 其他文件

______________________________________________________________________

📄 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

______________________________________________________________________

🙏 致谢

______________________________________________________________________

由...制作❤️ 项目管理

*最后更新日期:2025年11月5日*

目录标签

目录标签

风险管理PythonClaudeCRUD操作项目管理本地部署企业级服务JWT认证

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

34

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP