Devora 提示助手(MCP 服务器)
 ](https://www.npmjs.com/package/@devora_no/prompt-assistant-mcp) ](https://www.npmjs.com/package/@devora_no/prompt-assistant-mcp)  ](https://nodejs.org/)  
    
🚀 准生产就绪的MCP服务器 - 利用具备企业级安全、监控和可靠性的多个AI供应商,将原始编码提示转换为结构化、增强型的提示。
目录
概述
这个(或“它”) Devora 提示助手 这是一个生产就绪的模型上下文协议(MCP)服务器,能够将您的原始编码提示转换为结构化、增强型的提示,以优化人工智能助手的使用。该服务器采用企业级安全措施、全面的监控系统,并遵循所有14项MCP服务器最佳实践,确保高可靠性。
这有什么特别之处?
- 🎯 生产级实现了适用于企业使用的全部14项MCP服务器最佳实践
- 🔒 安全第一采用速率限制、断路器和输入净化的纵深防御安全策略
- 📊 完整可观测性全面的指标、追踪和结构化日志记录
- ⚡ 高性能>100 请求/秒(标准输入输出),>500 请求/秒(HTTP)配合智能缓存
- 🛡️ 有韧性断路器保护、优雅降级,以及99.9%的正常运行时间
- 🔧 多供应商支持支持5家AI提供商,具备自动故障转移功能
主要特点
🧠 这个符号在中文里通常被用来表示“大脑”或“思考”,但直接翻译并没有一个固定的中文词汇对应,所以可以理解为“思考中”、“大脑”或者在某些语境下表示“智慧”。如果要在句子中使用,可以根据上下文来具体翻译。例如:“他正在🧠”可以翻译为“他正在思考”。 智能提示增强
- 用例自动检测自动检测调试、重构、功能创建、架构决策、技术对比和内容设计
- 框架检测检测您的技术栈(React、Vue、Angular、Node.js、Python、PHP 等)并调整建议
- 智能问题生成当提示模糊或不完整时,生成澄清性问题
- 结构化模板强制使用特定于用例的框架来保持一致的Markdown部分
🔍 智能上下文管理
- Git 集成自动检测Git仓库并使用
git diff对于已更改的文件 - 智能过滤荣誉
.gitignore模式并排除常见的构建目录 - 多重策略:
changed,paths,和related收款策略 - 智能缓存具有10分钟TTL(生存时间)的LRU缓存,用于快速处理重复请求
🔒(锁形符号,常用于表示安全、保密或锁定状态) 企业安全
- 纵深防御6层安全模型,包括网络隔离、身份验证、授权、验证、净化和速率限制
- 断路器防止级联故障,实现自动恢复
- 输入/输出消毒(或净化)防止注入攻击和数据泄露
- 秘密涂改/秘密遮蔽API密钥和令牌会自动从日志中删除
📊(表格/数据图表) 生产监控
- 综合指标跟踪吞吐量、延迟、错误率、缓存命中率和内存使用情况
- 分布式追踪完整的请求生命周期跟踪,支持追踪ID传播
- 结构化日志记录带有轮转功能的JSON日志,错误/审计文件分开
- 健康检查:
/health,/ready,以及/metrics终端节点(或终点)
⚡(闪电符号,常用于表示速度、能量或惊人的事物) 高性能
- 连接池为大型语言模型(LLM)提供商重用HTTP连接
- 智能缓存基于大小的驱逐策略,TTL为15分钟
- 内存守护者在内存使用率达到90%时自动清除缓存
- 批量操作优化文件读取和上下文收集
快速入门
🚀(火箭/快速上升/飞速发展等意象,具体含义需结合上下文) 一键光标安装

点击上面的按钮 自动将此MCP服务器添加到Cursor中。
⚠️ 重要至少需要一个AI提供商的API密钥。服务器将自动检测可用的提供商。 🧪 测试设定 TEST_MODE=true 为了测试目的,可在没有API密钥的情况下运行。📋 译文:清单 手动安装
将此添加到您的Cursor MCP设置中(~/.cursor/mcp.json):
{
"mcpServers": {
"devora-prompt-assistant": {
"command": "npx",
"args": ["-y", "@devora_no/prompt-assistant-mcp"],
"env": {
"TRANSPORT": "stdio",
"OPENAI_API_KEY": "your-openai-key-here",
"ANTHROPIC_API_KEY": "your-anthropic-key-here"
}
}
}
}设置您的API密钥 (至少需满足一项):
export OPENAI_API_KEY="your-openai-key"
export ANTHROPIC_API_KEY="your-anthropic-key"
# ... or any other provider重启光标 你已经准备好了,出发吧!
安装
先决条件
- Node.js20+(推荐:最新LTS版本)
- 包管理器pnpm(推荐)、npm 或 yarn
- 人工智能提供商至少需要一个来自支持提供商的API密钥
安装方法
选项1:NPM(推荐)
# One-time use
npx @devora_no/prompt-assistant-mcp
# Global installation
npm install -g @devora_no/prompt-assistant-mcp
devora-prompt-assistant
# Alias
npx dpa选项2:开发环境设置
# Clone repository
git clone https://github.com/Devora-AS/devora-prompt-assistant-mcp.git
cd devora-prompt-assistant-mcp
# Install dependencies
pnpm install
# Copy environment template
cp .env.example .env
# Edit with your API keys
nano .env选项3:Docker
# Run with Docker
docker run -p 8000:8000 \
-e OPENAI_API_KEY=your_key_here \
-e AUTH_BEARER_TOKENS=your_token_here \
ghcr.io/devora-as/devora-prompt-assistant-mcp快速入门:Inspector(stdio)
🔍 看起来像是放大镜的符号,通常用于表示“查看”、“搜索”或“调查”的意思,在中文里可以翻译为“🔍(放大镜)”或者根据上下文具体含义翻译为“查看”、“搜索”等。但直接作为符号时,一般保留其原样或用“放大镜”来形象地描述其含义。 使用MCP Inspector进行测试
对于开发和调试,请使用带有stdio传输的MCP Inspector:
- 构建项目:
pnpm install && pnpm build- 选择您的配置:
- 已发布的包加载 examples/inspector-stdio.json - 本地开发加载 examples/inspector-stdio-local.json
- 测试工具:
- 验证 collect_context 并且 enhance_prompt 被列出 - 运行测试场景来自 docs/inspector-playbook.md
🐛 蝇(或译为“虫”) 调试模式
通过设置启用详细日志记录 CONTEXT_DEBUG=1 在你的环境中:
{
"env": {
"CONTEXT_DEBUG": "1",
"LOG_LEVEL": "debug"
}
}这为调试文件收集、Git集成以及性能方面提供了全面的追踪信息。
使用
🎯(目标) 核心工作流程
- 收集上下文 (可选,但建议):
{
"strategy": "changed",
"maxKB": 32,
"maxFiles": 20,
"extensions": ["ts", "tsx", "js", "jsx"]
}- 增强提示:
{
"task": "Refactor this React component to use TypeScript",
"context": "[context from collect_context]",
"audience": "cursor",
"style": "detailed"
}🛠️(工具/修理/扳手等含义的符号,具体翻译可能根据上下文有所不同,此处提供一种可能的翻译)扳手/工具 可用工具
enhance_prompt - 提示增强
将原始编码提示转换为结构化、增强型提示,具备用例检测和智能问题生成功能。
参数:
task(字符串,必填):需增强的编码任务context(字符串,可选):来自工作区的额外上下文audience(字符串,可选):目标受众(cursor、claude、copilot、general)style(字符串,可选):响应风格(简洁,详细)constraints(数组,可选):特定约束provider(字符串,可选):要使用的AI提供商temperature(数字,可选):生成温度(0-2)maxTokens(数字,可选):要生成的最大令牌数
collect_context - 工作区上下文收集
利用Git感知和智能过滤功能,智能地从工作区收集相关文件和上下文信息。
参数:
strategy(字符串,可选):收集策略(变更、路径、相关)maxKB(数字,可选):最大总大小(以KB为单位)maxFiles(数字,可选):文件的最大数量include(数组,可选):要包含的通配符模式exclude(数组,可选):要排除的全局模式useGit(布尔值,可选):启用 Git 集成extensions(数组,可选):要包含的文件扩展名
🔧 修理工具或螺丝刀的符号,常用于表示需要修理或调整的物品或情况。 大型语言模型(LLM)增强模式
review(默认):小幅改进,结构验证refine全面内容增强off仅使用确定性支架,不调用大型语言模型(LLM)
🌐(表示“互联网”或“世界”的符号,可翻译为“互联网”或根据上下文意译为“全球视野”等) 提供商支持
| 提供者 | 默认模型 | 温度 | 最大标记数 | 备注 |
|---|---|---|---|---|
| (标题行,无具体翻译内容) | (标题行,无具体翻译内容) | (标题行,无具体翻译内容) | (标题行,无具体翻译内容) | (标题行,无具体翻译内容) |
| 人类优先(Anthropic) | claude-3-5-sonnet-latest | ✓ | 最大令牌数(maxTokens) | - |
| OpenAI | o3-mini | ✓ | maxTokens | 对话完成(Chat Completions) |
| Azure OpenAI | gpt-4o-mini | ✓ | 最大令牌数 | 需要部署 |
| 双子座(Gemini) | gemini-2.0-flash | ✓ | maxOutputTokens | 参数名称不同 |
| 混淆度 | sonar | ✓ | 最大令牌数 | - |
文档 📚 书籍
- 完整的文件记录 教程
- - 新用户逐步操作指南 配置
- - 完整的安装与配置指南 命令
- - 详细的工具参考和API文档 最佳实践
- - 优化技巧和常见模式 核心功能
- 技术深入探讨/技术深度剖析 🎯(靶心)
- 用例示例 调试
- - 调试提示和策略 重构
- - 代码重构模式 特征创建
- - 功能开发工作流程 架构决策
- - ADR(事故应急响应计划)和设计决策 技术对比
- - 技术评估 内容与设计
- 文件和规范
安全与隐私 🔒 表示“锁定”或“安全”的意思。
- 安全特性纵深防御
- 6层安全模型速率限制
- 每个客户端的令牌桶算法断路器
- 防止连锁故障输入/输出净化(或:输入输出数据清洗)
- 防止注入攻击秘密删节
- API密钥会自动从日志中删除不记名令牌认证
安全HTTP传输 🛡️(盾牌符号,无直接对应中文含义,可表示“保护”、“防御”等概念)
- 隐私保护本地优先
- 所有处理都在本地stdio模式下进行无数据存储
- 未存储或传输任何代码或提示秘密删节
- 敏感数据自动遮蔽上下文收集
可选的工作区扫描,用户可控制
演出 📊 表格/数据图表
- 性能指标吞吐量
- >100 请求/秒(标准输入输出),>500 请求/秒(HTTP)延迟P95
- \70%的重复查询“Uptime”翻译成中文是“正常运行时间”或“系统可用时间”
99.9%的可靠性,配备断路器保护 ⚡(闪电符号,常用于表示速度、能量、惊喜或快速充电等概念,在中文中无直接对应文字,通常保留原样或根据上下文意译)
- 优化特性连接池
- 重用HTTP连接智能缓存
- 15分钟的TTL(生存时间)配合LRU(最近最少使用)驱逐策略内存守护者
- 在使用率达到90%时自动清除缓存批量操作
优化了文件读取和上下文收集
发展 🏗️ 表示“建筑工地”或“正在建造中”。
src/
├── core/ # Core utilities (security, monitoring, caching)
│ ├── security/ # Rate limiting, sanitization, circuit breaker
│ ├── metrics.ts # Performance monitoring
│ ├── tracing.ts # Distributed tracing
│ └── fileLogger.ts # Structured logging
├── config/ # Environment and configuration management
├── providers/ # AI provider adapters
├── server/ # MCP server and transports
├── auth/ # Authentication middleware
└── index.ts # CLI entry point项目结构 🛠️(工具/螺丝刀等工具的图标,无具体文字对应,可理解为“工具”或“修理工具”等含义)
# Development
pnpm dev:stdio # Run with stdio transport
pnpm dev:http # Run with HTTP transport
# Building
pnpm build # Build TypeScript to dist/
pnpm prepare # Build and set executable bit
# Testing
pnpm test # Run unit tests
pnpm test:watch # Run tests in watch mode
pnpm test:coverage # Run with coverage
# Code Quality
pnpm lint # Run ESLint
pnpm lint:fix # Fix ESLint issues
pnpm format # Format with Prettier可用脚本 🧪 试管/实验(表示与化学实验或科学实验相关的图标)
- 测试单元测试
- >80%的覆盖率集成测试
- 所有工具的工作流程混沌测试
- 在失败条件下的韧性性能测试
关键绩效指标(KPI)对标
🔧 故障排除
快速解决方案
- 服务器无法启动?
TEST_MODE=true - 设置至少一个API密钥或使用
~/.cursor/mcp.json
检查你的配置在
- 在 collect_context 中遇到 Git 错误?
strategy: "paths"使用"changed" - 而不是
或者初始化一个 Git 仓库
- 连接问题?
- 验证服务器是否正在运行
- 检查端口冲突
确保MCP配置正确
测试模式
# Test mode (no API keys needed)
TEST_MODE=true npx @devora_no/prompt-assistant-mcp
# Or in MCP config
{
"env": {
"TEST_MODE": "true"
}
}无需API密钥即可运行以进行测试:
健康检查
npx @modelcontextprotocol/inspector --cli npx -y @devora_no/prompt-assistant-mcp --method tools/call --tool-name health_check检查服务器状态和配置:
调试模式
CONTEXT_DEBUG=1 LOG_LEVEL=debug npx @devora_no/prompt-assistant-mcp启用详细日志记录:
常见问题 | 问题 | 解决方案 | |---------|----------| TEST_MODE=true “未配置提供程序” | 设置API密钥或 | strategy: "paths" | “未检测到Git历史记录” | 使用 | | "连接已关闭" | 重启服务器,检查日志 |
响应缓慢 | 检查API限制,启用缓存 📖 书籍或阅读的象征完整的故障排除指南 :
docs/troubleshooting.md 翻译为中文是:“文档/故障排除.md”
常见问题解答(FAQ)
常见问题 问:MCP是什么?
A:模型上下文协议(MCP)是一种用于将人工智能助手连接到数据源和工具的标准。此服务器实现了MCP规范。 问:支持哪些人工智能提供商?
A: Anthropic Claude、OpenAI、Azure OpenAI、Google Gemini和Perplexity。至少需要一个API密钥。 问:这个产品已经可以投入生产了吗?
A: 是的!这实现了所有14项MCP服务器最佳实践,具备企业级的安全性、监控和可靠性。
安装与设置 问:我如何在Cursor中安装这个? ~/.cursor/mcp.json A: 使用上面的一键安装按钮,或者手动将配置添加到您的
文件。 问:我需要所有的提供商API密钥吗?
A: 不,你只需要至少一个。服务器会自动检测可用的提供商。 问:stdio 和 HTTP 传输方式有什么区别?
A: Stdio 用于本地开发(推荐),HTTP 用于远程访问(在 v0.2.1 版本中为实验性功能)。
API和集成 问:我该如何使用这些工具? collect_context A: 这些工具在Cursor中是自动可用的。使用 enhance_prompt 收集工作区文件,然后
以优化你的提示。 问:我可以将这个与其他MCP客户端一起使用吗?
A: 是的,这实现了标准的MCP协议,并且可以与任何兼容MCP的客户端一起工作。 问:输入限制是什么?
A:总输入:64KB,任务:32KB,上下文:16KB。这些限制确保了最佳性能。
安全 问:我的代码安全吗?
A: 是的,在stdio模式下,所有处理都在本地进行。没有代码或提示会被存储或传输给第三方。 问:API密钥安全吗?
A: 是的,API密钥从不记录,并且会自动从错误消息中删除。 问:那么速率限制呢?
A: 服务器对每个客户端实施令牌桶速率限制,以防止滥用。
故障排除 问:“没有工具、提示或资源”的错误?
A: 检查您的MCP配置,确保已设置API密钥,并重启Cursor。 问:“未配置提供程序”错误?
A: 在您的环境变量中至少设置一个提供商API密钥。 问:我如何启用调试日志记录? LOG_LEVEL=debug A: 设置
在你的环境变量中。
贡献;助力 我们欢迎投稿!请参阅我们的 贡献指南
详情如下。
- 如何贡献(或:如何参与贡献)
- 为仓库创建分支(或“克隆仓库”)
- 创建一个特性分支
- 进行你的更改
- 添加测试
- 运行代码检查和测试
提交拉取请求
GitHub 讨论区
许可证 MIT 许可证 - 详见 许可证
______________________________________________________________________
文件中有详细信息。最后更新时间\ 2025年1月15日版本\ 0.2.1状态\ 生产就绪安全状态\ ✅ 安全且受监控由……维护
吞噬者(或译为“掠食者”,根据上下文,“Devora”可能是一个虚构的生物或角色名,具体翻译需结合语境)
📄 许可证 MIT 许可证 - 详见 许可证
______________________________________________________________________
详情见文件。 由……开发 吞噬者(或译为“德沃拉”,但根据上下文,“吞噬者”可能更为贴切,因为“Devora”在某些语境下可能是一个虚构名称或特定概念)
_☔️_
