AI辅助宠物领养服务

Pooch Palace是一个虚构的宠物领养机构,通过Spring AI和MCP协议集成提供AI辅助工作流,包括聊天助手、工具调用和基于pgvector的检索增强生成功能。

  • by vlaship
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 vlaship/spring-ai-mcp

使用说明

Pooch Palace–春季AI MCP代理商

演示工作区展示了人工智能辅助的工作流程 普奇宫,一家虚构的狗收养机构。功能Spring AI与MCP(模型上下文协议)集成,用于pgvector上的工具调用和RAG(检索增强生成)。

组件

  • 辅助服务 -Spring AI聊天助手,具有REST端点、持久聊天历史和MCP工具集成
  • MCP服务器 -通过SSE上的模型上下文协议公开的调度工具
  • Web用户界面 -用于与助手交互的TypeScript接口

存储库结构

文件夹 描述
assistant/ 带聊天API的Spring Boot助手服务(/dogs, /ask, /users, /chats)
mcp-server/ 带调度工具的Spring Boot MCP服务器
ui/ 用于聊天交互的TypeScript web界面
http/ 用于测试的HTTP请求示例
docker-compose.yaml, .env, example.env 基础设施配置

主要特点

  • RAG集成 -基于pgvector的上下文狗信息检索
  • 聊天记忆 -JDBC通过自动生成标题来持久化对话历史记录
  • MCP工具 -用于调度采用的模型上下文协议集成
  • 多模型支持 -OpenAI和Ollama模型配置
  • TypeScript用户界面 -支持深色/浅色主题的现代网络界面

快速开始

Docker Compose(推荐)

# Configure environment
cp example.env .env
# Edit .env with your OpenAI API key

# Start all services
docker-compose up -d

# Access the application
open http://localhost:3000

服务URL:

  • Web用户界面:http://localhost:3000
  • API助理:http://localhost:8081
  • MCP服务器:http://localhost:8082
  • PostgreSQL:本地主机:15432
  • 奥拉玛:http://localhost:11434

地方发展

先决条件: Java 25、Maven 3.9+、Node.js 20+、Docker桌面

# 1. Configure environment
cp example.env .env

# 2. Start infrastructure
docker-compose up postgres ollama -d

# 3. Run services (separate terminals)
cd mcp-server && mvn spring-boot:run
cd assistant && mvn spring-boot:run -Dspring-boot.run.profiles=ollama  
cd ui && npm install && npm start

API 参考

基本URL: http://localhost:8081/proposal-assistant-service
所需标题: X-User-Id (UUID来自 /users 端点)

端点 描述
GET /dogs 列出所有可用的狗
GET /users 列出演示用户
GET /chats 列出当前用户的聊天记录
GET /chats/{chatId} 获取聊天消息历史记录
GET /ask?question=...&chatId=... 将问题发送给助理

例子:

curl "http://localhost:8081/proposal-assistant-service/ask" \
  -H "X-User-Id: 00000000-0000-0000-0000-000000000001" \
  -G -d "question=Tell me about calm dogs available this week"

开发说明

  • MCP集成:当用户请求收养预约时,助手会自动调用日程安排工具
  • 嵌入:使用 --spring.profiles.active="ollama,embedding" 重建矢量存储
  • 测试:在中使用HTTP示例 http/ API测试目录
  • 模型:分别配置OpenAI或Ollama模型 application-*.yml 文件
  • 调试:启用 logging.level.com.example=debug 有关详细的MCP工具日志

许可证

麻省理工学院——见 许可证.