Token导航 LogoToken导航TokenDH.com
NewsAPI.AI MCP Server v1.0 logo
搜索检索未说明官方级别未说明来源级核验

NewsAPI.AI MCP Server v1.0

MCP Server

一个生产就绪的模型上下文协议(MCP)服务器,提供新闻文章搜索、事件检索和文本分析功能。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
情感分析TypeScriptClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

DarkStar616

提供方

DarkStar616

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

MCP NewsAPI.ai服务器

一个生产就绪的模型上下文协议(MCP)服务器,它公开 NewsAPI.ai/事件注册表 作为搜索新闻文章、事件和执行文本分析的工具。

API基地: https://eventregistry.org/api/v1/

特性

  • 文章检索:通过按日期、语言、来源、情感等进行筛选来搜索新闻文章
  • 事件搜索:使用类别、位置和日期过滤搜索新闻事件
  • 概念建议:获取用于搜索的概念URI
  • 文本分析:情感分析、分类、注释和相似性计算
  • 坚韧的:针对速率限制(429)和服务器错误(5xx)的指数退避和抖动自动重试
  • 类型安全:带Zod验证的完整TypeScript实现
  • 标准化响应:所有搜索端点的分页格式一致

需求

设置

  1. 克隆或下载此存储库
  1. 安装依赖项:
   npm install
  1. 配置API密钥:
   cp .env.example .env

编辑 .env 并添加您的NewsAPI.ai API密钥:

   NEWSAPI_AI_KEY=your_api_key_here

用法

发展模式

在热重载的开发模式下运行服务器:

npm run dev

生产模式

构建并运行服务器:

npm run build
npm start

MCP配置

将此服务器添加到您的MCP客户端配置中(例如,Claude Desktop):

{
  "mcpServers": {
    "newsapi": {
      "command": "node",
      "args": ["/path/to/mcp-newsapi-ai/dist/index.js"],
      "env": {
        "NEWSAPI_AI_KEY": "your_api_key_here"
      }
    }
  }
}

对于开发,您可以使用 tsx 直接:

{
  "mcpServers": {
    "newsapi": {
      "command": "npx",
      "args": ["-y", "tsx", "/path/to/mcp-newsapi-ai/src/index.ts"],
      "env": {
        "NEWSAPI_AI_KEY": "your_api_key_here"
      }
    }
  }
}

可用工具

新闻搜索文章

搜索具有丰富过滤选项的新闻文章。

示例:

{
  "query": "artificial intelligence",
  "lang": "eng",
  "from": "2024-01-01",
  "to": "2024-12-31",
  "sortBy": "date",
  "page": 1,
  "pageSize": 10
}

参数:

  • query (必填):搜索关键字
  • lang:语言代码(例如eng、spa、fra)
  • from:开始日期(YYYY-MM-DD)
  • to:结束日期(YYYY-MM-DD)
  • sourceUri:源URI数组
  • conceptUri:概念URI数组
  • category:类别URI数组
  • sentimentMin:最低情绪(-1比1)
  • sentimentMax:最大情绪(-1比1)
  • sortBy:排序顺序(日期、相对时间、来源重要性)
  • page:页码(默认值:1)
  • pageSize:每页结果数(1-100,默认值:50)

响应:

{
  "page": 1,
  "pageSize": 10,
  "total": 1234,
  "results": [...]
}

新闻搜索事件

搜索新闻事件。

示例:

{
  "query": "climate summit",
  "lang": "eng",
  "page": 1,
  "pageSize": 20
}

参数:

  • query:搜索关键字(可选)
  • lang:语言代码
  • from:开始日期(YYYY-MM-DD)
  • to:结束日期(YYYY-MM-DD)
  • conceptUri:概念URI数组
  • category:类别URI数组
  • page:页码(默认值:1)
  • pageSize:每页结果数(1-100,默认值:50)

news.suggest_概念

根据文本前缀获取概念建议。

示例:

{
  "text": "climate",
  "limit": 10
}

参数:

  • text (必填):要搜索的文本前缀
  • limit:最大建议值(1-20,默认值:10)

news.text.sention

分析文本的情感。

示例:

{
  "text": "This is a great day!"
}

响应:返回介于-1(负)和1(正)之间的情绪得分。

news.text分类

使用分类法对文本进行分类。

示例:

{
  "text": "Apple announces new iPhone with advanced AI features",
  "taxonomy": "dmoz"
}

参数:

  • text (必填):要分类的文本
  • taxonomy:要使用的分类(dmoz或iptc,默认值:dmoz)

news.text.annotate

用语义概念注释文本。

示例:

{
  "text": "Elon Musk's SpaceX launches new satellite"
}

响应:返回检测到的具有URI的实体和概念。

news.text.相似性

计算两个文本之间的语义相似度。

示例:

{
  "text1": "AI is transforming the world",
  "text2": "Artificial intelligence changes everything"
}

响应:返回介于0和1之间的相似性得分。

错误处理

服务器提供结构化错误响应:

{
  "error": "NewsApiError",
  "status": 429,
  "message": "API request failed with status 429: Rate limit exceeded"
}

常见错误:

  • 缺少API密钥:请检查 .env 文件
  • 429(速率限制):服务器将自动重试并回退
  • 5xx(服务器错误):服务器将自动重试最多3次
  • 验证错误:根据架构检查输入参数

费率限制和成本

NewsAPI.ai有不同的定价级别和不同的费率限制。请在以下网址查看您的计划限额 newsapi.ai/pricing.

服务器自动处理具有指数退避和抖动的速率限制,对429和5xx错误最多重试3次。

故障排除

服务器无法启动

错误: NEWSAPI_AI_KEY environment variable is not set

解决方案:确保您已创建 .env 文件,或者在运行服务器时设置环境变量。

验证错误

错误: page=0 或其他无效参数

解决方案:检查工具说明中的参数约束。例如, page 必须大于等于1, pageSize 必须介于1到100之间。

429速率限制错误

服务器会自动以指数回退方式重试。如果重试后继续看到429个错误:

  • 检查您的API计划限制
  • 减少请求的频率
  • 考虑升级您的NewsAPI.ai计划

网络或超时错误

服务器最多重试3次网络错误。如果问题仍然存在:

  • 检查您的互联网连接
  • 验证NewsAPI.ai服务状态
  • 检查防火墙或代理问题

发展

项目结构

mcp-newsapi-ai/
├── src/
│   ├── index.ts          # MCP server implementation
│   ├── client.ts         # HTTP client with retry logic
│   ├── schema.ts         # Zod validation schemas
│   ├── util.ts           # Utility functions
│   └── tools/
│       ├── articles.ts   # Article search
│       ├── events.ts     # Event search
│       ├── concepts.ts   # Concept suggestions
│       └── text.ts       # Text analytics
├── package.json
├── tsconfig.json
└── README.md

测试

要手动测试服务器,请执行以下操作:

  1. 启动服务器: npm run dev
  2. 服务器通过stdio(标准输入/输出)进行通信
  3. 使用像Claude Desktop这样的MCP客户端与工具进行交互

安全

  • API键仅从环境变量中读取
  • 控制台上没有记录或打印任何机密
  • 不记录个人身份信息(PII)

许可证

麻省理工学院

目录标签

目录标签

情感分析TypeScriptClaude新闻搜索本地部署事件检索文本分析语义标注

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP