JakeyShakey_umami_mcp_server

JakeyShakey_umami_mcp_server

🚀 Umami分析服务提示系统配置指南

Umami是一个功能强大的分析服务框架,支持通过自定义提示(Prompts)进行灵活扩展。本指南将详细介绍如何在src/analytics_service/server.py中实现和管理这些提示,帮助你灵活扩展Umami分析服务的功能,满足不同业务需求。

🚀 快速开始

Umami分析服务提示系统允许用户通过自定义提示来灵活扩展功能。你可以在src/analytics_service/server.py文件中进行提示的注册、逻辑实现等操作。

✨ 主要特性

  • 支持通过自定义提示(Prompts)进行灵活扩展。
  • 定义了提示、参数、消息角色和内容类型等核心概念,便于组织对话流。
  • 提供了详细的消息结构规范,确保信息传递的准确性。
  • 给出了最佳实践建议,帮助用户更好地使用提示系统。
  • 包含示例应用和高级功能,方便用户快速上手和进行功能扩展。

📦 安装指南

文档未提及安装相关内容,故跳过此章节。

💻 使用示例

基础用法

注册提示

list_prompts()函数中注册新的提示:

@app.list_prompts()
async def list_prompts():
return [
# 其他提示...
{
"name": "您的提示名称",
"description": "您的提示描述",
"arguments": [
{
"name": "参数名称1",
"description": "参数描述",
"required": True/False
},
{
"name": "参数名称2",
"description": "参数描述",
"required": True/False
}
]
}
]

实现提示逻辑

get_prompt()函数中处理具体的提示请求:

@app.get_prompt()
async def get_prompt(name: str, arguments: Any):
# 其他提示处理...
if name == "您的提示名称":
return {
"messages": [
{
"role": "user",
"content": {
"type": "text",
"text": f"您的提示模板包含 {arguments['参数名称']}"
}
}
]
}

高级用法

添加新提示

list_prompts()中添加:

{
"name": "数据分析报告",
"description": "生成数据摘要报告。",
"arguments": [
{
"name": "startTime",
"description": "开始时间。",
"required": True
},
{
"name": "endTime",
"description": "结束时间。",
"required": True
}
]
}

实现提示处理逻辑

get_prompt()中实现:

if name == "数据分析报告":
return {
"messages": [
{
"role": "system",
"content": {
"type": "text",
"text": f"分析从{arguments['startTime']}{arguments['endTime']}的数据。"
}
},
{
"role": "user",
"content": {
"type": "resource",
"resource": {
"uri": "data://reports",
"text": "请提供数据摘要。",
"mimeType": "application/json"
}
}
}
]
}

📚 详细文档

提示系统核心概念

  • 提示:定义了特定任务的操作流程。
  • 参数:提示可以接受的输入变量。
  • 消息角色:包括"system""user""assistant",用于组织对话流。
  • 内容类型:支持"text""resource" 类型。

消息结构规范

角色定义

  • role: "system":用于设置上下文或提供高级别指令。
  • role: "user":模拟用户输入或提问。
  • role: "assistant":表示Claude的响应或指令。

内容类型规范

  • type: "text":用于纯文本内容。
  • type: "resource":包含外部资源,需提供 uritextmimeType 属性:
{
"role": "user",
"content": {
"type": "resource",
"resource": {
"uri": "logs://recent",    // 资源标识符
"text": "[2024-03-14 15:32:11] 错误:连接超时",
"mimeType": "text/plain"   // MIME类型
}
}
}

🔧 技术细节

文档未提及技术实现细节相关内容,故跳过此章节。

📄 许可证

文档未提及许可证相关内容,故跳过此章节。

💡 使用建议

  • 专注与具体:确保提示针对特定任务。
  • 明确参数验证:定义清晰的输入要求。
  • 使用保留术语:如Prompts建议翻译为“提示”或“提示系统”。
  • 保持代码示例完整:确保变量名和语法正确无误。

⚙️ 高级功能

  • 错误处理:在get_prompt()中添加异常捕捉,确保提示失败时有明确反馈。
  • 日志记录:记录所有提示请求和响应,便于调试和分析。
  • 0 关注
  • 0 收藏,35 浏览
  • system 提出于 2025-10-05 08:33

相似服务问题

相关AI产品