Frontier Signal

io.github.collectivewincaPublished by GitHub account collectivewincav0.2.0Updated Nov 4, 2026

Query verified AI data-broker buyer programmes and demand signals.

VerifiedStreamable HTTPWeb executable

Overview

Frontier Signal's hosted MCP server (mcp.velab.org); no sign-in required; Streamable HTTP; 6 tools.

No AI overview yet: these facts come from the registry entry and the server itself.

Endpoint
mcp.velab.org
Last checked

Installation

In SourceWeft

  1. Open Frontier Signal in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.collectivewinca%2Ffrontier-signal-mcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "frontier-signal": {
      "type": "http",
      "url": "https://mcp.velab.org/mcp"
    }
  }
}

README

Frontier Signal MCP

Query verified AI data-broker buyer programmes and demand signals from VE Lab Frontier Signal.

Public and read-only. No API keys, no login, no gated watchlist. Tools never invent hit counts.

Live surfaces:

What it does

One verb: query verified buyer programmes and demand signals.

ToolTitleReturns
list_buyer_programmesList buyer programmesSources from a baseline, optional filters type, status, category. Fields: name, url, band, referral, categories, status, notes.
get_programmeGet a programmeOne source by exact or fuzzy name.
demand_mixDemand mixHot categories ([category, mention_count]) for latest or a given observed date.
latest_briefLatest public briefPublic brief markdown for latest or a date. Gated sections are stripped.
deltasBaseline deltasdeltas_vs_prev (and recheck if present) for latest or a date.
list_observed_datesList observed datesBaseline dates (and public brief dates) in this checkout.

Every tool sets title and readOnlyHint: true (Claude Connectors / ChatGPT Apps requirement). Mention counts on demand_mix are heuristics recorded on the baseline, not search-engine hit counts.

Remote HTTPS MCP

This is the path for Official MCP Registry remotes, Claude custom connectors, and ChatGPT Apps.

TransportStreamable HTTP
Endpointhttps://mcp.velab.org/mcp
Privacyhttps://mcp.velab.org/privacy
AuthNone (public read-only)
Workerworker/ (Cloudflare Workers + createMcpHandler)

If mcp.velab.org is not yet attached, the Worker also publishes https://frontier-signal-mcp.<your-subdomain>.workers.dev/mcp. After wrangler deploy, Wrangler prints the live URL — use that until the custom domain is on.

Hit the remote URL

bash
# Healthcurl -sS https://mcp.velab.org/health
# MCP initialize (Streamable HTTP)curl -sS https://mcp.velab.org/mcp \  -H 'Content-Type: application/json' \  -H 'Accept: application/json, text/event-stream' \  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"curl","version":"0"}}}'

Cursor (remote):

json
{  "mcpServers": {    "frontier-signal": {      "url": "https://mcp.velab.org/mcp"    }  }}

Claude custom connector — test steps

  1. Open claude.ai → Settings → Connectors (or Custom connectors).
  2. Add custom connector.
  3. Name: Frontier Signal.
  4. URL: https://mcp.velab.org/mcp (or the workers.dev URL from deploy).
  5. Authentication: No authentication.
  6. Save and enable the connector for a chat.
  7. Ask: Using Frontier Signal, list observed dates and then the demand mix. Do not invent extra mention counts.
  8. Confirm Claude calls list_observed_dates then demand_mix. Latest cut should be 2026-11-03 in this checkout; Software / code mention count is 12 (heuristic, not a hit count).
  9. Optional: Look up Lazarus → get_programme returns Turing (Lazarus). Show the public brief → latest_brief must not include gated watchlist copy.

ChatGPT Apps / Connectors

  1. Create or edit the app / custom GPT.
  2. Add an MCP server / connector with URL https://mcp.velab.org/mcp.
  3. No OAuth client ID or secret.
  4. Smoke the same prompts as the Claude steps above.
  5. Point the app’s privacy URL at https://mcp.velab.org/privacy.

Listing materials (Registry, Claude, ChatGPT)

FieldCopy
One-linerQuery verified AI data-broker buyer programmes and demand signals.
DescriptionFrontier Signal is VE Lab’s public, read-only MCP for daily baselines of AI data-buyer programmes, demand mix, and public briefs. No login. Does not invent hit counts or expose the gated watchlist.
Support[email protected] (also [email protected])
Privacy policyhttps://mcp.velab.org/privacy
Homepagehttps://velab.org/frontier-signal/
MCP URLhttps://mcp.velab.org/mcp
Icon / brandVE Lab / Frontier Signal — velab.org

server.json lists the Streamable HTTP remote plus the local PyPI/stdio package. Registry publish is still a later step (mcp-publisher).

Local stdio (Cursor / Claude Desktop)

Requires Python 3.11+ and uv.

bash
git clone https://github.com/collectivewinca/frontier-signal-mcpcd frontier-signal-mcpuv syncuv run python -m frontier_signal_mcp

Equivalent: uv run frontier-signal-mcp.

Cursor (~/.cursor/mcp.json or project .cursor/mcp.json)

json
{  "mcpServers": {    "frontier-signal": {      "command": "uv",      "args": [        "--directory",        "/ABSOLUTE/PATH/to/frontier-signal-mcp",        "run",        "python",        "-m",        "frontier_signal_mcp"      ]    }  }}

Claude Desktop (claude_desktop_config.json)

Same command / args as Cursor, under mcpServers.frontier-signal.

Deploy the Worker

Cloudflare account used by VE Lab Workers: aa6789c67f992fd0b9f5933e86e11184 (set as account_id in worker/wrangler.jsonc).

bash
cd workernpm cinpm testnpx wrangler login          # or: export CLOUDFLARE_API_TOKEN=...npx wrangler deploy         # prints https://frontier-signal-mcp.<subdomain>.workers.dev

This environment has no Cloudflare API token, so production is not published from the PR agent. Config is worker/wrangler.jsonc (Wrangler 4; equivalent to wrangler.toml). After login, the commands above are the whole deploy.

Or from repo root: bash scripts/deploy.sh.

Attach the preferred host after the Worker exists and the velab.org zone is in this account:

bash
cd workernpx wrangler deploy --x-route-zones --domain mcp.velab.org

Then confirm:

  • https://mcp.velab.org/mcp — Streamable HTTP
  • https://mcp.velab.org/privacy — this policy
  • https://mcp.velab.org/health — { ok: true, ... }

Local Worker: cd worker && npm run dev then http://127.0.0.1:8787/mcp.

Dropping in a newer daily baseline: add files under data/, run npm run embed-data in worker/, redeploy. The Python stdio server picks up new files on the next tool call without a rebuild.

Data (offline from the repo)

data/baselines/YYYY-MM-DD.jsondata/briefs/YYYY-MM-DD.md

Sample cuts: 2026-10-30, 2026-11-02, 2026-11-03 (plus the public brief for 2026-11-03).

  1. Copy the day’s JSON to data/baselines/YYYY-MM-DD.json (observed must match the filename).
  2. Copy only the public brief to data/briefs/YYYY-MM-DD.md. Stop before any gated / watchlist-login heading.
  3. Stdio: restart the MCP client if needed. Remote: cd worker && npm run embed-data && npx wrangler deploy.

Override the Python data directory with FRONTIER_SIGNAL_DATA_DIR=/path/to/data.

Privacy

Full policy: docs/privacy.md (rendered at /privacy on the Worker).

  • Public verified data only. No PII, no credentials, no API keys.
  • No gated watchlist content. latest_brief strips gated headings.
  • No invented hit counts. demand_mix returns the hot array as recorded.
  • No auth is correct for this product.

Distribution intent (10-store)

  1. Official MCP Registry — server.json name io.github.collectivewinca/frontier-signal-mcp, with remotes (Streamable HTTP) and packages (stdio).
  2. ChatGPT Apps and Claude Connectors (custom connector URL above).
  3. Then Google Connected Apps, Grok, Cursor Marketplace, Meta Muse, Copilot Agent Store, AgentExchange, AWS Marketplace.

This repo is not yet submitted to those stores.

Development

bash
uv syncuv run pytestcd worker && npm ci && npm test

See AGENTS.md for invariants and CHANGELOG.md for releases.

License

MIT

Source: README.md at commit 87f9367

Tools

6

list_buyer_programmes

List buyer programmes

List verified buyer programmes (and other sources) from a public baseline. Returns name, url, band, referral, categories, status, notes, and type. An empty list means no rows matched — programmes are never invented.

Parameterstypestatuscategoryobserved

get_programme

Get a programme

Look up one verified programme by exact or fuzzy name. A miss returns match_kind=none — this tool does not invent a programme.

Parametersnamerequiredobserved

demand_mix

Demand mix

Return hot demand categories recorded on a public baseline. mention_count values are heuristics copied from the JSON cut, not hit counts. This tool never invents additional categories or counts.

Parametersobserved

latest_brief

Latest public brief

Return the public Frontier Signal brief markdown for a date. Gated watchlist sections are stripped if present. A brief is never synthesised.

Parametersobserved

deltas

Baseline deltas

Return deltas_vs_prev (and recheck notes, if any) for a baseline cut. These are the change notes recorded on that JSON file. This tool does not compute new diffs.

Parametersobserved

list_observed_dates

List observed dates

List baseline dates (and public brief dates) available in this checkout. No live fetch is performed.

Takes no parameters.

Version history

1
  1. v0.2.0LatestNov 4, 2026

Score

90% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.