关于 MCP server for working with AWS Blog and News articles
这是一个通过 api.aws-news.com 获取 AWS 博客和新闻的 MCP 服务,面向需要检索或筛选 AWS 内容的用户。它支持按日期、类别和文章类型过滤,并可提取 AWS 网站文章全文。
主要功能
- 01按日期筛选文章
- 02按类别和类型过滤
- 03搜索文章标题及链接信息
- 04获取 AWS 文章全文
- 05文章列表缓存 5 分钟
适用场景
- 01查找当天发布的 AWS 新闻
- 02筛选某类别的近期博客
- 03搜索 AWS 文章主题
- 04提取文章全文供后续处理
MCP 相关
该 MCP 服务通过 SSE 暴露文章检索工具,包括日期和类别筛选、搜索、类别列表及全文获取。文章数据来自公开 API;仅支持下载 aws.amazon.com 上的文章全文。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
docker run -i --rm ghcr.io/mirecekd/awsblogs-mcp本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
ghcr.io/mirecekd/awsblogs-mcpstdio工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
AWS Blogs MCP Server
用于处理来自 api.aws-news.com 的 AWS 博客和新闻文章的 MCP 服务。
描述
此 MCP 服务提供用于检索和筛选所有 AWS 类别中的 AWS 博客文章和新闻的工具。该服务使用 FastMCP 框架构建,完全采用异步方式(async/await),并支持在端口 8807 上使用 SSE 传输。数据从公共 API 获取,并使用 aiohttp 和 BeautifulSoup 处理。
架构
- 入口点:
main_sse.py– 设置环境并启动服务。 - 服务:
src/awsblogs_mcp_server/server_sse.py– 定义所有 MCP 工具、处理参数解析并运行 FastMCP 服务。 - 数据处理器:
src/awsblogs_mcp_server/data_processor.py– 负责 API 通信、筛选、缓存和 HTML 解析。 - 缓存: 文章列表使用内存缓存(5 分钟);搜索查询除外,每次都会获取最新数据。
- 验证: 验证输入参数的类型、是否存在以及(在相关情况下)格式。仅支持从 AWS 文章(aws.amazon.com)下载完整内容。
可用的 MCP 工具
1. get_todays_posts
获取今天发布的文章。
参数:
post_type:“News”、“Blog”或“Both”(默认值)limit:文章数量上限(默认值为 20)
2. get_posts_by_date
获取指定日期范围内的文章。
参数:
from_date:起始日期,格式为 YYYY-MM-DD(可选)to_date:结束日期,格式为 YYYY-MM-DD(可选)days_back:距今天的天数(可替代 from_date)post_type:“News”、“Blog”或“Both”(默认值)limit:文章数量上限(默认值为 50)
3. get_posts_by_category
获取指定类别中的文章。
参数:
category:类别名称(例如,“Big Data”、“Machine Learning”、“Industries”)post_type:“News”、“Blog”或“Both”(默认值)days_back:距今天的天数(默认值为 30)limit:文章数量上限(默认值为 30)
4. search_posts
使用 API 的搜索功能按文本查询搜索文章(搜索标题、URL 和 slug)。
参数:
query:搜索查询(搜索标题、URL 和 slug)post_type:“News”、“Blog”或“Both”(默认值)days_back:距今天的天数(默认值为 90)limit:文章数量上限(默认值为 25)
注意: 搜索查询始终获取最新数据,不使用缓存。
5. get_categories
获取所有可用文章类别的列表。
6. get_latest_posts
获取最新文章。
参数:
post_type:“News”、“Blog”或“Both”(默认值)limit:文章数量上限(默认值为 20)days_back:距今天的天数(默认值为 7)
7. get_popular_posts
获取热门文章(标记为 popular=true)。
参数:
post_type:“News”、“Blog”或“Both”(默认值)days_back:距今天的天数(默认值为 30)limit:文章数量上限(默认值为 15)
8. get_article_content
从给定 URL 下载完整文章内容。
参数:
url:文章 URL(必须来自 aws.amazon.com)
返回值:
title:文章标题content:完整文章文本description:元描述author:作者(如果有)published_date:发布日期content_length:内容字符数word_count:字数
注意: 仅支持从 AWS 文章(aws.amazon.com)下载完整内容。
可用类别
服务器支持按以下类别筛选:
- 架构
- AWS 云运营
- AWS 游戏
- AWS 洞察
- AWS Marketplace
- AWS 新闻
- AWS 合作伙伴网络
- AWS 智能业务
- 大数据
- 商业智能
- 业务效率
- 云企业战略
- 云财务管理
- 计算
- 联系中心
- 容器
- 数据库
- 桌面与应用流式传输
- 开发者工具
- DevOps 与开发者效率
- 前端 Web 与移动
- HPC
- IBM 和 Red Hat
- 行业
- 集成与自动化
- 物联网
- 机器学习
- 媒体
- 消息传递与定向
- AWS 上的 Microsoft 工作负载
- 迁移与现代化
- AWS 上的 .NET
- 网络与内容分发
- 开源
- 公共部门
- 量子计算
- SAP
- 安全
- 空间计算
- 初创公司
- 存储
- 供应链与物流
- 培训与认证
缓存
- 文章列表会在内存中缓存 5 分钟(搜索查询除外)。
- 搜索查询始终从 API 获取最新数据。
- 缓存会在超时后或参数变更时自动失效。
安装与运行
Docker(推荐)
-
从 GitHub Container Registry 运行:
docker run -p 8807:8807 ghcr.io/mirecekd/awsblogs-mcp -
在本地构建 Docker 镜像:
chmod +x build.sh ./build.sh -
使用 docker-compose 运行:
docker-compose up awsblogs-mcp-sse -
或在本地构建 Docker:
docker run -p 8807:8807 awsblogs-mcp-server:sse
本地开发
-
安装依赖:
pip install -e . -
运行服务器:
python main_sse.py --host 0.0.0.0 --port 8807
MCP 客户端配置
若要在 MCP 客户端(例如 Cline)中使用,请将以下内容添加到配置中:
{
"mcpServers": {
"awsblogs": {
"type": "sse",
"url": "http://localhost:8807/sse/"
}
}
}
API 端点
服务器使用公共 API:https://api.aws-news.com/articles
功能
- ✅ 在 8807 端口上使用 SSE 传输
- ✅ 按文章类型筛选(新闻/博客)
- ✅ 按类别筛选
- ✅ 日期筛选(日期范围、往前追溯天数)
- ✅ 文本搜索(由 API 提供支持)
- ✅ 缓存机制(5 分钟,搜索除外)
- ✅ 结构化响应
- ✅ 支持 Docker
- ✅ 异步架构(aiohttp、FastMCP)
- ✅ 使用 BeautifulSoup 解析 HTML
项目结构
awsblogs-mcp/
├── src/awsblogs_mcp_server/
│ ├── __init__.py
│ ├── server_sse.py # SSE MCP server (tools, server logic)
│ └── data_processor.py # API client, filtering, caching, HTML parsing
├── main_sse.py # SSE entry point
├── Dockerfile.sse # Docker image for SSE
├── docker-compose.yml # Docker Compose configuration
├── build.sh # Build script
├── pyproject.toml # Python project configuration
├── README.md # This file
└── assets/
├── aws_blogs.png
└── n8n-workflow.json
开发
开发时建议:
- Fork 此代码仓库
- 为该功能创建新分支
- 使用
python main_sse.py在本地测试 - 使用
./build.sh测试 Docker 构建 - 创建拉取请求
许可证
MIT License - 请参阅 LICENSE 文件。
作者
Miroslav Dvořák ([email protected])
使用示例
N8N 工作流集成
此 MCP 服务可以轻松集成到 N8N 工作流中,用于自动处理 AWS 新闻并发送通知。

上方截图展示了一个实际应用中的 N8N 工作流,其中 AWS Blogs MCP 服务作为工具供 AI Agent 使用。该工作流由以下部分组成:
- 聊天触发器 - 接收用户消息
- AI Agent - 使用 Azure OpenAI 处理请求
- AWS Blogs MCP 工具 - 根据用户查询获取 AWS 文章
- 记忆缓冲区 - 保留对话上下文
N8N 工作流示例: 完整的 N8N 工作流配置见 ./assets/n8n-workflow.json
实际工作方式:
- 用户提问:“Show me latest AWS articles about Machine Learning”
- AI Agent 使用 MCP 服务调用
search_posts,查询“Machine Learning” - 服务器返回相关的 AWS 机器学习文章,包括标题、URL 和摘要
- AI Agent 为用户整理响应,并附上可点击的链接
- 保留对话上下文,以便回答后续问题
此集成支持通过自然语言与 AWS 内容交互,让用户能够借助对话式 AI 轻松了解 AWS 的最新动态。
灵感来源
本项目的灵感来自 jritsema 的 aws-news-mcp-server。
支持
如果这个工具对你有帮助,可以支持其开发:
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。

