Register the self-hosted Sentry MCP server and keep OAuth sign-ins across updates
link-mcp gains a stdio transport: the servers row names a launcher under user/agents/mcp/, run from the checkout so every machine runs the same script, and the token reaches it as MCP_TOKEN. sentry-gbrown is the first, pointing Sentry's MCP server at sentry.gbrown.org with a read-only token from the ignored env file. A server already registered exactly as its row would register it is now left alone. Re-adding it every run threw away the sign-in of the OAuth servers, bill-tracker and atlassian, on every update.
This commit is contained in:
1 parent
58a64d6cee
commit
eb0056ac94
3 files changed
+79
-15
No files matched your search
Executable
+12
@@ -0,0 +1,12 @@
|
||||
#!/usr/bin/env bash
|
||||
# Sentry's MCP server, pointed at the self-hosted sentry.gbrown.org.
|
||||
#
|
||||
# link-mcp registers this file as a stdio server and hands it the token as
|
||||
# MCP_TOKEN, read from SENTRY_GBROWN_TOKEN in user/agents/mcp/env. The token is
|
||||
# a read-only personal token (Sentry > User settings > Personal Tokens, scopes
|
||||
# alerts/event/org/project/team:read). The hosted sentry.io server cannot reach
|
||||
# a self-hosted instance, which is why this one runs locally.
|
||||
set -euo pipefail
|
||||
: "${MCP_TOKEN:?MCP_TOKEN is not set; register this server through link-mcp}"
|
||||
export SENTRY_ACCESS_TOKEN="$MCP_TOKEN"
|
||||
exec npx -y @sentry/mcp-server@latest --host=sentry.gbrown.org --organization-slug=sentry
|
||||
@@ -1,6 +1,9 @@
|
||||
# MCP servers registered with the local agent runtimes.
|
||||
#
|
||||
# <name> <transport> <url> <token variable>
|
||||
# <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
|
||||
@@ -29,3 +32,8 @@ atlassian http https://mcp.atlassian.com/v1/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
|
||||
Reference in new issue
Block a user