# APITube News (remote · mcp.apitube.io)

Real-time news search across 500,000+ sources in 60+ languages with sentiment and entities.

- Trust score: 72/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-16

## Components

- remote · `mcp.apitube.io`: 72/100 (this document), [markdown](https://verifymcp.io/servers/io-apitube-news/mcp.md), [page](https://verifymcp.io/servers/io-apitube-news/mcp)

## Channel facts

- Endpoint: `https://mcp.apitube.io/`
- Transports: `streamable-http`
- Auth: `required`
- Version: `1.0.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-16.

- **Endpoint Security**: 83/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation is enforced on tool calls, but the challenge carries no valid RFC 9728 metadata, so a client cannot discover where to get a token.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 69/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 4442 tokens (~2221/item across 2 items; 2 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 3/100
  - Stability observed for 1 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 91/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 73% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add --transport http io-apitube-news https://mcp.apitube.io/
```

### Codex

```toml
[mcp_servers.io-apitube-news]
url = "https://mcp.apitube.io/"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "io-apitube-news": {
      "type": "remote",
      "url": "https://mcp.apitube.io/",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add io-apitube-news --url https://mcp.apitube.io/ --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  io-apitube-news:
    url: "https://mcp.apitube.io/"
```

### Other

```json
{
  "mcpServers": {
    "io-apitube-news": {
      "type": "http",
      "url": "https://mcp.apitube.io/"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-16 (score 72, +1)

- [security] The server rewrote its instructions, which are the text every model session reads
- [security] Tool “search_news” rewrote its description, which is the text the model reads
- [functional improvement] Stability: unverified → 0.03
- [cosmetic] “search_news” reworded the description of “per_page”

### 2026-08-15 (score 71)

First indexed and scored.

## MCP tools (2)

### `search_news` (~3495 tokens)

News Search

Search news articles using APITube News API with comprehensive filtering.

IMPORTANT INSTRUCTIONS FOR QUERY CONSTRUCTION:
1\. DO NOT use dots in parameter names directly in the root object. Use nested objects instead.
2\. The system will automatically convert nested objects to dot notation for the API.
   Example: Use { language: { code: "en" } } instead of { "language.code": "en" }.
3\. For multiple values in one parameter, use COMMA separation (e.g., "en,ru,fr" for multiple languages).
4\. Integer filters (has_*, is_*) accept ONLY 0 or 1 (e.g., has_image=1, is_duplicate=0).
5\. Date format: ISO 8601 (YYYY-MM-DD or YYYY-MM-DDTHH:MM:SSZ).
6\. Sentiment scores range: -1.0 (negative) to 1.0 (positive).
7\. Default sorting: published_at DESC (newest first).
8\. Unknown parameters are rejected with an error (-32602) instead of being silently ignored — check the
   spelling against the list below.
9\. By default the response returns id, title, href, published_at, description and source.domain.
   The article body is NOT included — request it explicitly with fl (e.g. fl: "title,href,body").

AVAILABLE PARAMETERS:

\### Content Search
\- title: Search by article title (supports up to 3 keywords with comma separation)
  IMPORTANT: a title search covers at most a 31-day published_at window. Omit the dates and the
  last 31 days are searched; pass a range wider than 31 days and the call fails with 400 ER0110.
  To cover a longer period, make one call per month-sized window.
\- ignore: { title: "keyword" } - Exclude articles with specific titles

\### Languages (60+ supported)
\- language: { code: "en,ru,fr" } - Filter by language codes (up to 3)
\- ignore: { language: { code: "fr" } } - Exclude specific languages

\### Categories (IPTC taxonomy)
\- category: { id: "medtop:04000000" } - Filter by category ID (up to 3)
\- ignore: { category: { id: "315" } } - Exclude categories

\### Topics
\- topic: { id: "crypto_news,climate_change" } - Filter by topic ID (up to 3)
\- ignore: { topic: { id: "2"…

Input parameters:

- `author` (object)
- `brand` (object)
- `category` (object): IPTC category filter.
- `disaster` (object)
- `disease` (object)
- `entity` (object): Named-entity filter.
- `event` (object)
- `facet` (boolean|object): Enable faceting (true) or object form for analytics.
- `fl` (string): Comma-separated fields to return (dot-notation supported), e.g. "id,title,source.name,sentiment.overall.score".
- `has_author` (integer): Has an attributed author.
- `has_hq_images` (integer): High-quality images (width >= 1200px).
- `has_image` (integer): Articles with at least one image.
- `has_video` (integer): Articles with at least one video.
- `hl` (boolean|object): Enable highlighting (true) or object form.
- `ignore` (object): Exclusion filters — exclude articles matching these. Mirror the positive filters.
- `industry` (object)
- `is_breaking` (integer): Breaking news only.
- `is_duplicate` (integer): 0 to exclude duplicates.
- `is_long_read` (integer): Read time >= 5 minutes.
- `is_media_rich` (integer): Both images and videos.
- `is_paywall` (integer): 0 to exclude paywalled content.
- `is_premium_source` (integer): Premium sources (OPR >= 6).
- `is_short_read` (integer): Read time < 3 minutes.
- `is_verified_source` (integer): Verified sources (OPR >= 5).
- `language` (object): Language filter.
- `location` (object)
- `media` (object): Media-content filter.
- `organization` (object)
- `page` (integer): Page number (default 1).
- `per_page` (integer): Results per page (default 10). One response carries at most 25 articles.
- `person` (object)
- `published_at` (object): Publication date range (ISO 8601).
- `read_time` (object): Reading time in minutes.
- `sentiment` (object): Sentiment filter. Scores range -1.0..1.0.
- `sort` (object)
- `source` (object): Source filter.
- `title` (string): Search by article title. Up to 3 keywords comma-separated (OR). Phrase in quotes for exact match.
- `topic` (object)

### `suggest` (~274 tokens)

Resolve Taxonomy IDs

Resolve a name or prefix to APITube taxonomy IDs so you can use them in the `search_news` tool's filters.

The `search_news` tool's most precise filters require IDs you cannot guess:
\- entity.id   — numeric (persons, organizations, locations, brands, events...)
\- category.id — IPTC slug, e.g. "medtop:04000000"
\- topic.id    — slug
\- industry.id — numeric

Use this tool FIRST to look those IDs up, then pass them into `search_news`.

USAGE:
\- type: which taxonomy to autocomplete — one of "entities", "categories", "topics", "industries".
\- prefix: the name (or its beginning) to search, e.g. "Tesla", "Elon", "spo".

Returns an array of matches; take the `id` of the best match and put it into `search_news`:
  suggest({ type: "entities", prefix: "Tesla" }) → [{ id: 12345, name: "Tesla, Inc.", ... }]
  search_news({ entity: { id: "12345" } })

Input parameters:

- `prefix` (string, required): Name or prefix to search, e.g. "Tesla", "Elon", "spo".
- `type` (string, required): Which taxonomy to autocomplete.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/io-apitube-news/mcp#diagnostics

## Score history

- 2026-08-16: 72
- 2026-08-15: 71

## Links

- Remote endpoint: https://mcp.apitube.io/
- Authorisation metadata: https://mcp.apitube.io/.well-known/oauth-protected-resource
- Website: https://docs.apitube.io/platform/news-api/ai/mcp-server
- Changelog RSS feed: https://verifymcp.io/servers/io-apitube-news/mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/io-apitube-news/mcp.json
- HTML version of this page: https://verifymcp.io/servers/io-apitube-news/mcp
