Fresh context for agents. Rebuilt every 12 hours. Provenance by Synorb.
Latest/MCP

Hanging Context MCP

Read Hanging Context stories from your agent. Search them, get new stories since your last call, or get them pushed to a webhook. Each fact cites a Synorb Manifest. No key is necessary.

Connect

The server URL is https://hangingcontext.com/mcp. The transport is Streamable HTTP. There is no sign-in.

Claude Code

claude mcp add --transport http hangingcontext https://hangingcontext.com/mcp

Claude Desktop

Open Settings, then Connectors, then add a custom connector with the server URL. Or add this to claude_desktop_config.json:

{
  "mcpServers": {
    "hangingcontext": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://hangingcontext.com/mcp"]
    }
  }
}

Cursor

Add this to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "hangingcontext": { "url": "https://hangingcontext.com/mcp" }
  }
}

Windsurf

Add this to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "hangingcontext": { "serverUrl": "https://hangingcontext.com/mcp" }
  }
}

VS Code

Add this to .vscode/mcp.json:

{
  "servers": {
    "hangingcontext": { "type": "http", "url": "https://hangingcontext.com/mcp" }
  }
}

Tools

There are 10 tools. Eight are read-only. Two manage a webhook. Every response has a freshness block and a next_step hint.

Prompts and resources

The cursor rules for hc_since

Examples

1. Ask a question

Prompt: "What did the cloud providers say about capex?" The agent calls hc_ask with question set to that text.

{
  "question": "What did the cloud providers say about capex?",
  "no_match": false,
  "facts": [
    {
      "text": "Provider X raised its capex guidance for the year.",
      "story_url": "https://hangingcontext.com/stories/2026-10-13/cloud-providers-raise-capex/",
      "story_slug": "cloud-providers-raise-capex",
      "published_at": "2026-10-13T01:10:00Z",
      "manifest_ids": ["9990000000000000601", "9990000000000000603"],
      "match": "key_fact"
    }
  ],
  "stories": [ { "slug": "cloud-providers-raise-capex", "trust": "confirmed", "source_count": 2 } ],
  "freshness": {
    "as_of": "2026-10-13T10:44:00Z",
    "next_update_at": "2026-10-13T12:00:00Z",
    "newest_source_at": "2026-10-12T23:00:00Z"
  },
  "next_step": "Call hc_get_story with a slug to read more, or hc_sources to check the Manifests behind a fact."
}

2. Follow a topic

Prompt: "Tell me about new stories since I last asked." The agent keeps the cursor between calls.

hc_since {}                      -> { "next_cursor": "11", "stories": [] }
(later) hc_since { "cursor": "11" } -> {
  "count": 1,
  "stories": [ { "slug": "agent-frameworks-one-tool-schema", "seq": 12, "trust": "confirmed" } ],
  "next_cursor": "12",
  "has_more": false
}

3. Check a story

Prompt: "Where does the capex story get its facts?" The agent calls hc_sources with the story slug.

{
  "slug": "cloud-providers-raise-capex",
  "trust": "confirmed",
  "distinct_sources": 2,
  "manifests": [
    {
      "manifest_id": "9990000000000000601",
      "title": "Provider X earnings call transcript",
      "publisher": "Earnings transcripts",
      "source_url": "https://example.com/transcripts/provider-x",
      "published_at": "2026-10-12T22:00:00Z",
      "used_in": { "key_facts": ["f1"], "paragraphs": ["s1p1"] },
      "check_url": "https://api.synorb.com/manifests/by-id/9990000000000000601"
    }
  ],
  "check_it_yourself": [
    "Find the Manifest ids in this response.",
    "Get a Synorb Key at https://synorb.com/connect.",
    "Send GET https://api.synorb.com/manifests/by-id/{id} with the header 'Authorization: Bearer <your key>'.",
    "Compare the fact with the Manifest and its source link."
  ]
}

Limits

Calls are limited for each IP address. If you reach the limit, the error says how many seconds to wait. Stories are rebuilt at 00:00 and 12:00 UTC. The freshness block of each response gives the next update time.

Reuse

You can quote, summarize and republish stories, also for commercial use. Credit Hanging Context, link to the story, and keep the Manifest ids. See the reuse terms. Each response carries them in a reuse field.

Check a claim yourself

Find the Manifest ids in the story. Get a Synorb Key at synorb.com/connect. Send GET https://api.synorb.com/manifests/by-id/{id} with the key. Compare the fact with the Manifest and its source link.

For registries

The server card is at /.well-known/mcp/server-card.json. It needs no sign-in.