# MCP servers registered with the local agent runtimes.
#
#   <name>  <transport>  <url or launcher>  <token variable>
#
# transport is http (third column is a URL) or stdio (third column is a launcher
# under user/agents/mcp/, which receives the token as MCP_TOKEN).
#
# The token variable names an entry in user/agents/mcp/env, which is ignored by
# git. This file carries no secret, so it is tracked like the rest of user/ and
# a new machine gets the same servers by dropping its own env file beside it.
#
# A row with no token variable registers without an Authorization header. A URL
# containing {TOKEN} gets the token substituted there instead of as a header.
#
# Lines beginning with # are comments and blank lines are ignored.

# The NanoKVM boards. These give an agent full console control of each machine,
# including the parts SSH cannot reach: firmware, a locked screen, and the GUI
# prompts Xcode and the keychain raise during a signed iOS build.
nanokvm-fedora  http  https://nano.gbrown.org/api/mcp     NANOKVM_FEDORA_TOKEN
nanokvm-mac     http  https://macnano.gbrown.org/api/mcp  NANOKVM_MAC_TOKEN

# Bill Tracker's hosted MCP server. No token: it is an OAuth server of its own
# and Claude Code signs in through Gib's Auth on first use.
bill-tracker    http  https://mcp.billtracker.gbrown.org/mcp

# Atlassian's hosted MCP server for Jira and Confluence. No token: it is an
# OAuth server and Claude Code signs in through /mcp on first use.
atlassian       http  https://mcp.atlassian.com/v1/mcp

# Penpot's MCP server on the VPS (penpot.gbrown.org). The key is a per-user MCP
# key from Penpot's Account > Integrations, and Penpot only reads it from the
# query string, hence {TOKEN}. The same key connects the in-file MCP plugin.
penpot          http  https://penpot.gbrown.org/mcp/stream?userToken={TOKEN}  PENPOT_MCP_TOKEN

# Sentry for the self-hosted sentry.gbrown.org. A stdio server: the third column
# is a launcher under user/agents/mcp/, and the token reaches it as MCP_TOKEN.
# The hosted mcp.sentry.dev only speaks to sentry.io.
sentry-gbrown   stdio  bin/sentry-gbrown  SENTRY_GBROWN_TOKEN

# Playwright's MCP server. Browser automation: pages, screenshots, forms,
# end-to-end runs. The ticket skill captures its proof screenshots this way.
# No token, hence no variable in the last column.
playwright      stdio  bin/playwright

# T3 Code environments, one per machine. Agents read projects and threads and,
# with more than read-only access, start and message threads there. No token:
# each is an OAuth server that asks for a pairing code from that machine on
# first sign-in, and the grant lasts 30 days.
t3-desktop      http  https://t3desktop.gbrown.org/mcp
t3-mac          http  https://t3mac.gbrown.org/mcp
t3-sr           http  https://t3sr.gbrown.org/mcp
t3-jr           http  https://t3jr.gbrown.org/mcp
