Skip to main content
Glama
rilexus

delta-mcp-prototype

by rilexus

delta-mcp-prototype

An MCP (Model Context Protocol) server that wraps the UMT media monitoring API, exposing media mention search as a tool for MCP-compatible clients (e.g. Claude Desktop, Claude Code).

Requirements

  • Node.js 22 (see .nvmrc)

  • A UMT account (username/password)

Related MCP server: news-monitor-mcp

Installation

npm install

Usage

Run the server with your UMT credentials passed as environment variables:

UMT_USERNAME=<username> UMT_PASSWORD=<password> node index.js [--env delta|beta]
  • UMT_USERNAME / UMT_PASSWORD — UMT account credentials (required). Environment variables are recommended over CLI flags since flags are visible to other processes/users via the process list; --username/--password are still accepted as a fallback for quick local testing.

  • --env — API environment, delta (default) or beta

The server communicates over stdio, so it's meant to be launched by an MCP client rather than run standalone.

Connecting to an MCP client

Example configuration (e.g. Claude Desktop claude_desktop_config.json):

{
  "mcpServers": {
    "delta-mcp-prototype": {
      "command": "npx",
      "args": ["delta-mcp-prototype", "--env", "beta"],
      "env": {
        "UMT_USERNAME": "<username>",
        "UMT_PASSWORD": "<password>"
      }
    }
  }
}

Tools

  • fetch_mentions — Fetch media mentions with filters for search id, phrase, date range, language, country, media segment, sentiment, and tags. Returns a paginated list of mentions (title, url, media segment, published date, sentiment, virality, link counts).

  • current_date_and_time — Returns the current date, time, and timezone; useful for resolving relative date ranges.

Build

Bundle the server into a single file with esbuild:

npm run build

Output is written to dist/index.js.

Project structure

index.js         CLI entry point — parses args, starts the server
src/index.js     MCP server setup and tool registration
src/tools.js     Tool definitions (fetch_mentions, current_date_and_time)
src/umt-dao.js   UMT API client (auth + mentions endpoint)
src/env.js       Environment/base URL constants
src/utils.js     Small helpers (object path access, TOON encoding, try/catch)

Available Tools

2 tools
current_date_and_timecurrent_date_and_timeA

Returns the current date and time. Call this whenever you need to know today's date or the current time, for example when the user asks 'what day is it?' or when computing relative date ranges like 'last 7 days'.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description correctly states the tool returns current date and time, but lacks details such as timezone handling, precision, or whether it's server-local time. Since no annotations are provided, the description carries the full burden, and this omission makes it partially opaque.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at two sentences, front-loading the core purpose. Every word adds value; no redundancy or unnecessary information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (no parameters, no output schema), the description adequately covers purpose and usage context. It could optionally mention output format or timezone, but is already sufficient for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, and the schema coverage is 100% (trivially). The description adds value by providing context on when the tool is useful, which goes beyond the schema. For zero parameters, a baseline of 4 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns the current date and time, with specific examples like 'what day is it?' and computing relative date ranges. It distinguishes itself from the sibling tool 'fetch_mentions' which handles a completely different domain.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells when to call the tool ('whenever you need to know today's date or the current time') and provides concrete usage examples. While there is no direct mention of when not to use it, the sibling tool's purpose is sufficiently different that confusion is unlikely.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

fetch_mentionsfetch_mentionsA

Fetch media mentions matching the specified filters. Supports filtering by search, phrase, date range, language, country, media segment, sentiment, tags, source, read/marked/critical/mailed status, inlink count, and more. Results are paginated and sortable. Returns total count and a list of mentions with title, url, media segment, published date, sentiment, virality, and link counts.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of results to return (max 100). Default 25.
offsetNoNumber of initial results to skip. Max offset+limit is 10000. Default 0.
phraseNoInclude only mentions matching this search query.
countryNoFilter by country code(s), comma-separated. Use 'missing' to include mentions with no country assigned.
date_toNoExclude mentions published after this ISO 8601 timestamp. Defaults to 3000-01-01T01:01:01.000Z.
tags_idNoInclude mentions tagged with at least one of the specified tag ids, comma-separated.
languageNoFilter by language code(s), comma-separated (e.g. 'en' or 'en,de').
date_fromNoExclude mentions published before this ISO 8601 timestamp (e.g. '2024-01-01' or '2024-01-01T08:00Z').
sentimentNoFilter by sentiment: -1 (negative), 0 (neutral), 1 (positive), -99 (no sentiment).
searches_idNoComma-separated list of search ids. Use '0' for all searches, a folder id for all searches in a folder, or specific search ids.0
media_segment_idNoFilter by media segment id(s), comma-separated. Available values: * 2 (Blogs) * 3 (News) * 4 (Social Networks) * 5 (Microblogs) * 6 (Web) * 7 (Forums) * 10 (Press Releases)

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses pagination, sorting, and the return value structure (total count, list with fields). However, it omits any mention of rate limits, authentication requirements, or side effects. Overall, good but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long with no fluff. The first sentence states the purpose, and the second encapsulates the key features. It is well-structured and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 11 parameters and no output schema, the description covers the main use case and return values. It could be more explicit about how filters combine (e.g., AND logic) but is largely complete for a listing tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter is documented in the schema. The description adds no parameter-specific meaning beyond listing some filter examples, which is already covered. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool fetches media mentions and lists many filter options, making the purpose specific and distinct from the only sibling tool (current_date_and_time) which is unrelated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what the tool does and its capabilities but does not provide explicit guidance on when to use it versus alternatives or when not to use it. Given the absence of relevant siblings, it is adequate but lacks exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 2 tool updatesv1.0.2
    • First observedcurrent_date_and_time
    • First observedfetch_mentions

TDQS

A4/5.0
Disambiguation5/5

The two tools serve completely different purposes: one provides current date/time, the other fetches media mentions with many filters. There is no overlap or ambiguity.

Naming Consistency5/5

Both tool names follow a consistent verb_noun pattern using snake_case ('current_date_and_time', 'fetch_mentions'), making them predictable and easy to understand.

Tool Count3/5

With only two tools, the server feels thin for a media monitoring prototype. The inclusion of a generic date/time utility alongside a specialized mentions fetcher suggests a lack of focused scope, but it is not extreme.

Completeness2/5

The fetch_mentions tool is comprehensive with many filters, but there are no tools for creating, updating, or managing mentions. The date/time tool is unrelated to the core domain, leaving significant gaps for a full media monitoring workflow.

Maintenance

ActivityStale
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    A MCP Server Implementation that integrates the Marketaux api providing search based on entity, countries, industries, symbols etc.
    5
    -
  • A
    license
    A
    quality
    A
    maintenance
    MCP server for global news monitoring, media analysis and sentiment tracking via WorldNewsAPI — full-text search across 150+ countries, German/English sentiment analysis, top headlines, GL briefings, newspaper front pages and geo-search. API key required.
    15
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    MCP server providing web search, news search, and X/Twitter search capabilities via HTTP or stdio.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    A remote, read-only MCP server for global media intelligence using GDELT DOC 2.0 API, enabling search and analysis of multilingual news coverage, tone, and attention trends.
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/rilexus/delta-mcp-prototype'

If you have feedback or need assistance with the MCP directory API, please join our Discord server