事实核查聊天机器人API

基于MCP协议的事实核查聊天机器人API服务,提供实时信息检索、多轮对话和引用源功能。

  • by rosency
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 rosency/mcp_for_chat

使用说明

MCP事实聊天机器人

基于模型上下文协议(MCP)的事实验证聊天机器人API服务器。

特点

  • 基于事实的响应:通过Web搜索提供实时信息
  • Multi-turn对话:保留基于会话的对话上下文
  • REST API:可通过简单的HTTP API进行集成
  • 引用源:在响应中包含引用URL

快速入门

1.安装

# 저장소 클론
git clone <repository-url>
cd mcp_for_chat

# 의존성 설치
pip install -r requirements.txt

# uv 설치 (MCP 서버 실행에 필요)
curl -LsSf https://astral.sh/uv/install.sh | sh

2.首选参数

cp .env.example .env
# .env 파일에 ANTHROPIC_API_KEY 설정

3.运行服务器

uvicorn src.main:app --reload --port 8000

4.使用API

# 새 대화 시작
curl -X POST http://localhost:8000/chat \
  -H "Content-Type: application/json" \
  -d '{"message": "오늘 테슬라 주가 어때?"}'

# 응답 예시
{
  "session_id": "550e8400-e29b-41d4-a716-446655440000",
  "response": "현재 테슬라(TSLA) 주가는...",
  "sources": ["https://..."]
}

# 대화 이어가기 (session_id 사용)
curl -X POST http://localhost:8000/chat \
  -H "Content-Type: application/json" \
  -d '{"session_id": "550e8400-e29b-41d4-a716-446655440000", "message": "작년 대비 어때?"}'

API端点

方法 端点 说明
职位 /chat 发送和接收消息
得到 /sessions/{session_id} 查询会话信息
删除 /sessions/{session_id} 删除会话
得到 /health 检查服务器状态

环境变量

变量 必需 默认值 说明
ANTHROPIC_API_KEY O--Claude API密钥
SEARCH_PROVIDER 十、 duckduckgo 搜索引擎(duckduckgo 或 brave)
BRAVE_API_KEY 使用Brave Search时需要△
SESSION_TIMEOUT 十、 3600 会话过期时间(秒)
LOG_LEVEL 十、 INFO 日志级别

搜索引擎设置

DuckDuckGo(默认,用于测试)

# API 키 불필요
SEARCH_PROVIDER=duckduckgo

Brave Search(生产)

SEARCH_PROVIDER=brave
BRAVE_API_KEY=your-brave-api-key

API文档

服务器运行后http://localhost:8000/docs可以通过Swagger UI查看API文档

许可证

麻省理工学院