search_news
Pack: gnews · Endpoint: https://gateway.pipeworx.io/gnews/mcp
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/search_news for the schema, then POST the same URL with its arguments for the data.
Search global news articles by keyword (e.g., “climate change”, “AI regulation”). Returns title, description, content snippet, source, and publication date. Supports language and country filters.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
_apiKey | string | yes | GNews API key |
query | string | yes | Search keywords (e.g., “electric vehicles”) |
lang | string | no | Language code (e.g., “en”, “fr”, “de”). Default: “en” |
country | string | no | Country code (e.g., “us”, “gb”, “ca”). Omit for global |
max | number | no | Max articles to return (1-100, default 10) |
Example call
Arguments
{
"query": "artificial intelligence regulation",
"_apiKey": "your-gnews-api-key"
}
curl
curl -X POST https://gateway.pipeworx.io/gnews/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_news","arguments":{"query":"artificial intelligence regulation","_apiKey":"your-gnews-api-key"}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('search_news', {
"query": "artificial intelligence regulation",
"_apiKey": "your-gnews-api-key"
});
More examples
{
"query": "climate change",
"_apiKey": "your-gnews-api-key",
"country": "us",
"lang": "en",
"max": 25
}
Response shape
Always returns: total_articles, returned, articles
| Field | Type | Description |
|---|---|---|
total_articles | number | Total number of articles matching the search query |
returned | number | Number of articles returned in this response |
articles | array | List of news articles matching the search |
Full JSON Schema
{
"type": "object",
"properties": {
"total_articles": {
"type": "number",
"description": "Total number of articles matching the search query"
},
"returned": {
"type": "number",
"description": "Number of articles returned in this response"
},
"articles": {
"type": "array",
"description": "List of news articles matching the search",
"items": {
"type": "object",
"properties": {
"title": {
"type": [
"string",
"null"
],
"description": "Article headline"
},
"description": {
"type": [
"string",
"null"
],
"description": "Brief summary of the article"
},
"content": {
"type": [
"string",
"null"
],
"description": "Full article content snippet"
},
"url": {
"type": [
"string",
"null"
],
"description": "Article URL"
},
"image": {
"type": [
"string",
"null"
],
"description": "Featured image URL"
},
"published_at": {
"type": [
"string",
"null"
],
"description": "Publication timestamp (ISO 8601)"
},
"source_name": {
"type": [
"string",
"null"
],
"description": "Name of the news source"
},
"source_url": {
"type": [
"string",
"null"
],
"description": "Homepage URL of the news source"
}
}
}
}
},
"required": [
"total_articles",
"returned",
"articles"
]
}
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"gnews": {
"url": "https://gateway.pipeworx.io/gnews/mcp"
}
}
}
See Getting Started for client-specific install steps.