# MacroTape market brief

> Treasury and USD FX brief, daily history and webhook alerts for AI agents. Not investment advice.

- name: space.atlasdynamics.digest/macrotape
- version: 1.3.0
- connection class: R1 (autonomous)
- trust: 82/100 flags: no-repository
- quality: 94/100 (strong)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/space.atlasdynamics.digest%2Fmacrotape
- tools: https://api.protogrid.dev/v1/servers/space.atlasdynamics.digest%2Fmacrotape/tools

**An agent can connect on its own if it already holds `api_key`.** Remote endpoint behind a static API key or header. The registry never sees the value; the agent fills the placeholder.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "macrotape": {
      "type": "http",
      "url": "https://digest.atlasdynamics.space/mcp",
      "headers": {
        "Authorization": "Bearer ${api_key}"
      }
    }
  }
}
```

Placeholders to fill: `${api_key}`.

## Trust

- hygiene: 80
- liveness: 98
- freshness: 100
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-96% +updated-4d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 94/100 (strong)

### protocol: 100 (weight 25)

- pass `protocol.modern`: supports 2026-07-28 (server/discover)
- pass `protocol.stateless`: answers without a session
- pass `protocol.transport`: streamable HTTP
- pass `protocol.list_ttl`: tool list is cacheable (ttlMs 3600000)

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 94 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 9 of 9 tools declare readOnlyHint or destructiveHint
- warn `tools.directory_hints`: 3 of 9 tools declare all four hints; missing: list_alert_webhooks (destructiveHint); list_topics (destructiveHint); get_latest_brief (destructiveHint); …
- pass `tools.token_cost`: about 1,614 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump
- pass `tools.hidden_text`: no hidden text in tool names, descriptions, schemas or annotations

### stability: 83 (weight 15)

- warn `stability.changes`: 13 tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name
- pass `stability.new_links`: no tool change named a new site

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 9, about 1,614 tokens to load them all
- tool set hash: 6e9c1da8eb57cddfa2b1b06ed62eff1c
- tools last changed: 2026-11-10T02:07:02.782Z
- badge: [![protogrid quality](https://protogrid.dev/badge/space.atlasdynamics.digest/macrotape.svg)](https://protogrid.dev/servers/space.atlasdynamics.digest/macrotape)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-11-10 `test_alert_webhook` changed (inputSchema)
- 2026-11-10 `delete_alert_webhook` changed (inputSchema)
- 2026-11-10 `register_alert_webhook` changed (inputSchema)
- 2026-11-10 `get_sample` changed (inputSchema)
- 2026-11-10 `get_brief_by_date` changed (inputSchema)
- 2026-10-23 `get_history` added
  - Daily history for one MacroTape topic: U.S. Treasury par yields (14 tenors, 1M-30Y) and 5 curve spreads since Jan 2, 2025; 29 USD FX pairs from ECB reference rates and MacroTape's computed DXY-style index (ECB rates, not the ICE U.S. Dollar Index) for the last year. days = calendar days back from the latest date (trial keys up to 30, API Light 365, API Pro the full series). Rows are [date, value]; quote the source and dates. Needs an API key ('Authorization: Bearer <key>'); counts as 1 request. Informational market data only; not investment advice.
- 2026-10-23 `test_alert_webhook` added
  - Send one signed test.ping event to one of your hooks now and report the receiver's HTTP status. A successful ping re-enables a disabled hook. Needs an API Light, Pro or internal key in 'Authorization: Bearer <key>' (trial keys get 403). Informational market data only; not investment advice.
- 2026-10-23 `delete_alert_webhook` added
  - Delete one of your webhook alert hooks by id (wh_...). Needs an API Light, Pro or internal key in 'Authorization: Bearer <key>' (trial keys get 403). Informational market data only; not investment advice.
- 2026-10-23 `register_alert_webhook` added
  - Register an https URL to receive signed JSON alerts when the 10-year Treasury par yield moves more than 10 bp vs the prior close or MacroTape's computed DXY-style index from ECB reference rates (not the ICE U.S. Dollar Index) moves more than 1%. Returns the signing secret ONCE (header MacroTape-Signature: t=..,v1=HMAC-SHA256(secret, t + '.' + body)). Needs an API Light, Pro or internal key in 'Authorization: Bearer <key>' (trial keys get 403). Informational market data only; not investment advice.
- 2026-10-23 `list_alert_webhooks` added
  - List the webhook alert hooks registered for your API key (no secrets), your plan and hook limit. Needs an API Light, Pro or internal key in 'Authorization: Bearer <key>' (trial keys get 403). Informational market data only; not investment advice.

Full history: https://api.protogrid.dev/v1/servers/space.atlasdynamics.digest%2Fmacrotape/changes

## Remotes

- https://digest.atlasdynamics.space/mcp (streamable-http, auth api_key ${api_key}, reachable true, uptime30d 0.95789474)

## Packages

_none_

## Tools (9)

- `delete_alert_webhook`: Delete one of your webhook alert hooks by id (wh_...). Needs an API Light, Pro or internal key in 'Authorization: Bearer <key>' (trial keys get 403). Informational market data only; not investment advice.
- `get_brief_by_date`: A past MacroTape brief by date (YYYY-MM-DD, U.S. weekdays) and optional edition (am|pm; omit for the newest edition that day). List available dates with the open /api/index.json. Needs an API key: send 'Authorization: Bearer <key>' or 'X-API-Key: <key>' on the HTTP connection. Counts against the key's daily limit.
- `get_history`: Daily history for one MacroTape topic: U.S. Treasury par yields (14 tenors, 1M-30Y) and 5 curve spreads since Jan 2, 2025; 29 USD FX pairs from ECB reference rates and MacroTape's computed DXY-style index (ECB rates, not the ICE U.S. Dollar Index) for the last year. days = calendar days back from the latest date (trial keys up to 30, API Light 365, API Pro the full series). Rows are [date, value]; quote the source and dates. Needs an API key ('Authorization: Bearer <key>'); counts as 1 request. Informational market data only; not investment advice.
- `get_latest_brief`: Latest MacroTape market brief (newest weekday AM/PM edition): U.S. Treasury par curve, spreads and curve shape; every ECB currency vs USD with top movers and dollar breadth. format=text gives one compact line (cheapest), json the full structured brief. Needs an API key: send 'Authorization: Bearer <key>' or 'X-API-Key: <key>' on the HTTP connection. Counts against the key's daily limit. Quote each section's as_of; not investment advice.
- `get_sample`: Free headline sample of the latest brief (2Y/10Y, 2s10s, curve shape, EURUSD/USDJPY). Open, no API key needed. format=text gives one compact line.
- `list_alert_webhooks`: List the webhook alert hooks registered for your API key (no secrets), your plan and hook limit. Needs an API Light, Pro or internal key in 'Authorization: Bearer <key>' (trial keys get 403). Informational market data only; not investment advice.
- `list_topics`: Every queryable subject (each Treasury tenor and spread, FX pair, aggregate) with its JSON field path, unit and source. Open, no API key needed.
- `register_alert_webhook`: Register an https URL to receive signed JSON alerts when the 10-year Treasury par yield moves more than 10 bp vs the prior close or MacroTape's computed DXY-style index from ECB reference rates (not the ICE U.S. Dollar Index) moves more than 1%. Returns the signing secret ONCE (header MacroTape-Signature: t=..,v1=HMAC-SHA256(secret, t + '.' + body)). Needs an API Light, Pro or internal key in 'Authorization: Bearer <key>' (trial keys get 403). Informational market data only; not investment advice.
- `test_alert_webhook`: Send one signed test.ping event to one of your hooks now and report the receiver's HTTP status. A successful ping re-enables a disabled hook. Needs an API Light, Pro or internal key in 'Authorization: Bearer <key>' (trial keys get 403). Informational market data only; not investment advice.
