{"id":27958467,"url":"https://github.com/jarod329/telegram-deepseek-twitter","last_synced_at":"2026-05-04T06:34:39.324Z","repository":{"id":283785965,"uuid":"952915142","full_name":"jarod329/Telegram-deepseek-twitter","owner":"jarod329","description":"推特自动发文MCP服务","archived":false,"fork":false,"pushed_at":"2025-04-13T08:49:08.000Z","size":17,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-13T09:40:17.523Z","etag":null,"topics":["agent","mcp","telegram","twitter"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jarod329.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-03-22T06:17:04.000Z","updated_at":"2025-04-13T08:49:12.000Z","dependencies_parsed_at":null,"dependency_job_id":"74296d61-b6ed-4412-81f2-2dff4e5872cd","html_url":"https://github.com/jarod329/Telegram-deepseek-twitter","commit_stats":null,"previous_names":["jarod329/-mcp-","jarod329/telegram-deepseek-twitter"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jarod329%2FTelegram-deepseek-twitter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jarod329%2FTelegram-deepseek-twitter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jarod329%2FTelegram-deepseek-twitter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jarod329%2FTelegram-deepseek-twitter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jarod329","download_url":"https://codeload.github.com/jarod329/Telegram-deepseek-twitter/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252932508,"owners_count":21827317,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent","mcp","telegram","twitter"],"created_at":"2025-05-07T18:24:22.878Z","updated_at":"2026-05-04T06:34:39.143Z","avatar_url":"https://github.com/jarod329.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 推特自动发文MCP服务使用和部署指南\n\n## 服务简介\n\n这个MCP（微服务控制面板）服务可以自动从Telegram频道获取加密货币相关消息，使用AI生成内容，并发布到Twitter上。服务通过RESTful API提供，支持多用户，每个用户可以配置自己的API密钥和发布设置。\n\n## 部署方式\n\n### 方法一：传统服务器部署\n\n1. **环境准备**\n\n```bash\n# 克隆代码到服务器\ngit clone https://github.com/your-username/twitter-poster-mcp.git\ncd twitter-poster-mcp\n\n# 创建虚拟环境\npython -m venv venv\nsource venv/bin/activate  # Windows: venv\\Scripts\\activate\n\n# 安装依赖\npip install -r requirements.txt\n```\n\n2. **配置requirements.txt文件**（确保包含以下依赖）\n\n```\nfastapi\u003e=0.104.0\nuvicorn\u003e=0.23.2\ntweepy\u003e=4.14.0\nopenai\u003e=1.0.0\ntelethon\u003e=1.30.0\nhttpx\u003e=0.24.1\nschedule\u003e=1.2.0\npydantic\u003e=2.4.2\npython-dotenv\u003e=1.0.0\n```\n\n3. **启动服务**\n\n```bash\n# 基本启动\npython main.py\n\n# 指定主机和端口\npython main.py --host 0.0.0.0 --port 8080\n\n# 开发模式（自动重载）\npython main.py --reload\n```\n\n### 方法二：使用Docker部署\n\n1. **创建Dockerfile**\n\n```Dockerfile\nFROM python:3.10-slim\n\nWORKDIR /app\n\nCOPY requirements.txt .\nRUN pip install --no-cache-dir -r requirements.txt\n\nCOPY . .\n\nEXPOSE 8000\n\nCMD [\"python\", \"main.py\"]\n```\n\n2. **创建docker-compose.yml**（可选）\n\n```yaml\nversion: '3'\n\nservices:\n  twitter-poster-mcp:\n    build: .\n    ports:\n      - \"8000:8000\"\n    volumes:\n      - ./configs:/app/configs\n    restart: unless-stopped\n    environment:\n      - TZ=Asia/Shanghai\n```\n\n3. **构建和运行**\n\n```bash\n# 使用Dockerfile构建\ndocker build -t twitter-poster-mcp .\ndocker run -p 8000:8000 -v $(pwd)/configs:/app/configs twitter-poster-mcp\n\n# 或使用docker-compose\ndocker-compose up -d\n```\n\n### 方法三：使用云服务部署\n\n1. **AWS Elastic Beanstalk**\n   - 创建一个Python应用\n   - 上传代码包\n   - 设置环境变量\n\n2. **Heroku**\n   - 创建Procfile: `web: uvicorn main:app --host=0.0.0.0 --port=$PORT`\n   - 使用Heroku CLI部署: `heroku create \u0026\u0026 git push heroku main`\n\n3. **阿里云/腾讯云**\n   - 使用云服务器ECS/CVM\n   - 按照传统服务器部署步骤操作\n   - 或使用容器服务ACK/TKE部署Docker版本\n\n## 如何使用服务\n\n### 1. 注册服务\n\n首先，用户需要注册并获取API密钥。\n\n```bash\ncurl -X POST \"http://your-server:8000/users/register\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"api_key\": \"your-preferred-api-key\",\n    \"service_config\": {\n      \"twitter\": {\n        \"consumer_key\": \"your-twitter-consumer-key\",\n        \"consumer_secret\": \"your-twitter-consumer-secret\",\n        \"access_token\": \"your-twitter-access-token\",\n        \"access_token_secret\": \"your-twitter-access-token-secret\"\n      },\n      \"telegram\": {\n        \"api_id\": 123456,\n        \"api_hash\": \"your-telegram-api-hash\",\n        \"channel\": \"channel_name\"\n      },\n      \"ai\": {\n        \"api_key\": \"your-deepseek-api-key\",\n        \"base_url\": \"https://dashscope.aliyuncs.com/compatible-mode/v1\"\n      },\n      \"prompt_template\": \"请根据以下从加密货币新闻频道获取的消息，提炼总结成英文推文。若有多条消息，用数字1,2,3等分开。推文要足够吸引人，使用加密货币领域的专业术语，可以添加emoji表情。总字数不超过70个英文单词。原始消息:\\n{messages}\",\n      \"fixed_hashtags\": \"#crypto #bitcoin\"\n    }\n  }'\n```\n\n服务将返回一个包含`user_id`和`api_key`的响应。请保存此信息用于后续API调用。\n\n### 2. 使用API\n\n所有后续请求都需要包含API密钥作为Authorization header：\n\n```\nAuthorization: Bearer your-api-key\n```\n\n#### 发送单条推文\n\n```bash\ncurl -X POST \"http://your-server:8000/twitter/post\" \\\n  -H \"Authorization: Bearer your-api-key\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"content\": \"Bitcoin just broke $80,000! This is a historic moment for cryptocurrency. #BTC\",\n    \"hashtags\": \"#crypto #bitcoin #btc\"\n  }'\n```\n\n#### 获取Telegram最新消息\n\n```bash\ncurl -X POST \"http://your-server:8000/telegram/fetch\" \\\n  -H \"Authorization: Bearer your-api-key\"\n```\n\n#### 生成推文内容\n\n```bash\ncurl -X POST \"http://your-server:8000/generate/content\" \\\n  -H \"Authorization: Bearer your-api-key\"\n```\n\n#### 启动自动发布定时任务\n\n```bash\ncurl -X POST \"http://your-server:8000/scheduler/start\" \\\n  -H \"Authorization: Bearer your-api-key\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"interval_minutes\": 30,\n    \"min_interval_seconds\": 2400,\n    \"max_interval_seconds\": 4800\n  }'\n```\n\n#### 停止自动发布\n\n```bash\ncurl -X POST \"http://your-server:8000/scheduler/stop\" \\\n  -H \"Authorization: Bearer your-api-key\"\n```\n\n#### 获取服务状态\n\n```bash\ncurl -X GET \"http://your-server:8000/status\" \\\n  -H \"Authorization: Bearer your-api-key\"\n```\n\n#### 更新配置\n\n```bash\ncurl -X PUT \"http://your-server:8000/config/update\" \\\n  -H \"Authorization: Bearer your-api-key\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"twitter\": {\n      \"consumer_key\": \"updated-key\",\n      \"consumer_secret\": \"updated-secret\",\n      \"access_token\": \"updated-token\",\n      \"access_token_secret\": \"updated-token-secret\"\n    },\n    \"telegram\": {\n      \"api_id\": 123456,\n      \"api_hash\": \"your-telegram-api-hash\",\n      \"channel\": \"new_channel_name\"\n    },\n    \"ai\": {\n      \"api_key\": \"your-deepseek-api-key\"\n    },\n    \"fixed_hashtags\": \"#crypto #bitcoin #eth\"\n  }'\n```\n\n#### 注销用户\n\n```bash\ncurl -X DELETE \"http://your-server:8000/users/unregister\" \\\n  -H \"Authorization: Bearer your-api-key\"\n```\n\n## 其他开发者可以如何接入这个服务\n\n其他开发者可以通过以下方式接入此服务：\n\n1. **Web应用集成**\n   - 在前端应用中通过API请求调用相关功能\n   - 创建图形界面来管理Twitter自动发文\n\n2. **移动应用集成**\n   - 在移动应用中通过API请求调用相关功能\n   - 提供推文预览和管理界面\n\n3. **其他自动化系统集成**\n   - 在自己的自动化流程中调用此API\n   - 例如：将新闻监控系统与此服务组合\n\n4. **第三方平台集成**\n   - 将此服务与其他平台（如WordPress、Discord机器人等）集成\n\n## 安全建议\n\n1. 使用HTTPS保护API通信\n2. 设置复杂的API密钥\n3. 定期更新Twitter和Telegram的API凭据\n4. 监控日志以检测异常活动\n5. 备份配置文件\n\n## 常见问题\n\n1. **Q: API返回401错误**\n   A: 检查API密钥是否正确，并确保在请求头中正确设置Authorization\n\n2. **Q: 无法连接到Telegram**\n   A: 检查网络连接、代理设置和Telegram API凭据\n\n3. **Q: 推文发送失败**\n   A: 检查Twitter API凭据和限制状态，可能达到推文频率限制\n\n4. **Q: 服务占用内存过高**\n   A: 考虑限制同时运行的实例数量或增加服务器资源\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjarod329%2Ftelegram-deepseek-twitter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjarod329%2Ftelegram-deepseek-twitter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjarod329%2Ftelegram-deepseek-twitter/lists"}