🚀 带有MCP的AI推文生成器
一个由人工智能和模型上下文协议(MCP)驱动的智能推文生成系统。自动获取最新的加密货币新闻,并生成具有可定制品牌背景的专业、引人入胜的推文。
✨ 特性
- 🤖 人工智能发电:使用OpenAI的GPT模型进行智能推文创建
- 📰 实时新闻获取:通过MCP与CryptoPanic API集成,获取最新加密新闻
- 🎯 可定制的品牌:易于根据任何品牌或项目环境进行定制
- 🌐 现代Web用户界面:简洁、响应迅速的界面,一键生成
- 📋 复制到剪贴板:生成推文的即时复制功能
- 🔄 自动刷新:“获取今天的帖子”按钮,用于基于即时新闻的推文
- 🏗️ MCP架构:基于模型上下文协议构建,具有可扩展性
🛠️ 技术栈
- 后端:TypeScript、Node.js、Fastify
- AI/LLM:OpenAI API(GPT-4o-mini)
- 主控程序:@modelcontextprotocol/sdk
- 前端:HTML、CSS、普通JavaScript
- 新闻API:CryptoPanic API
- 验证:佐德
📋 先决条件
- Node.js 18+
- npm或纱线
- OpenAI API密钥
🚀 快速开始
1.克隆存储库
git clone https://github.com/shivanshu814/MCP-Social.git
cd MCP-Social2.安装依赖项
npm install3.配置环境变量
创建一个 .env 根目录中的文件:
OPENAI_API_KEY=your_openai_api_key_here
MODEL=gpt-4o-mini
PORT=80004.运行开发服务器
npm run dev5.在浏览器中打开
导航至 http://localhost:8000
🏗️ 项目结构
├── src/
│ ├── index.ts # Main Fastify server
│ ├── llm.ts # OpenAI API integration
│ ├── mcp-server.ts # MCP server for crypto news
│ ├── news.ts # MCP client & news fetching
│ ├── prompt.ts # System prompts & examples
│ └── schema.ts # Zod validation schemas
├── public/
│ └── index.html # Frontend UI
├── .env # Environment variables (not in repo)
├── package.json
├── tsconfig.json
└── README.md🎯 运作原理
- 用户输入:用户输入新闻/主题或点击“获取今天的帖子”
- 新闻检测:系统检测是否需要自动获取新闻
- MCP集成:MCP客户端调用MCP服务器获取最新的加密新闻
- AI处理:新闻通过OpenAI API处理,并带有自定义提示
- 推特生成:专业推文是根据品牌背景生成的
- 显示:Tweet显示字符数和源链接
🔧 可用脚本
# Development mode with hot reload
npm run dev
# Build for production
npm run build
# Run production server
npm start🎨 定制
品牌背景
编辑 src/prompt.ts 自定义:
- 系统提示
- 品牌信息
- 响应示例
- 色调和风格
新闻来源
修改 src/mcp-server.ts 要添加更多新闻源或更改筛选器:
rising-热门新闻hot-热门话题bullish-看涨新闻
UI造型
编辑 public/index.html 自定义:
- 颜色和主题
- 布局
- 品牌元素
📡 API终点
发布 /chat
根据输入生成推文
请求:
{
"input": "Latest DeFi trends in 2024"
}答复:
{
"answer": "Generated tweet content...",
"source": "https://source-url.com"
}获取 /health
健康检查端点
答复:
{
"status": "ok"
}🔐 环境变量
| 变量 | 描述 | 必填 | 默认 |
|---|---|---|---|
OPENAI_API_KEY | OpenAI API密钥 | 是 | - |
MODEL | OpenAI模型名称 | 否 | gpt-4o-mini |
PORT | 服务器端口 | 否 | 8000 |
TGI_URL | 文本生成推理URL(可选) | 否 | - |
🤝 贡献
欢迎投稿!请随时提交拉取请求。
- 分叉存储库
- 创建功能分支(
git checkout -b feature/AmazingFeature) - 提交您的更改(
git commit -m 'Add some AmazingFeature') - 推到分支(
git push origin feature/AmazingFeature) - 打开拉取请求
📝 许可证
该项目是开源的,可在 MIT许可证.
🙏 致谢
- GPT API的OpenAI
- 模型上下文协议团队
- 加密新闻的CryptoPanic API
- 为惊人的web框架禁食
📧 联系
如有疑问或支持,请在GitHub上发布问题。
______________________________________________________________________
由以下材料制成❤️ 使用AI和MCP
