diff --git a/app/Http/Controllers/Settings/McpTokenController.php b/app/Http/Controllers/Settings/McpTokenController.php index 642632a1..c3edd26b 100644 --- a/app/Http/Controllers/Settings/McpTokenController.php +++ b/app/Http/Controllers/Settings/McpTokenController.php @@ -41,6 +41,7 @@ class McpTokenController extends Controller implements HasMiddleware return Inertia::render('settings/mcp', [ 'tokens' => $this->tokensFor($request), 'serverUrl' => url('/mcp'), + 'oauthUrl' => url('/mcp/oauth'), 'subscribeUrl' => route('subscribe'), 'newToken' => $request->session()->get('mcp_token'), ]); diff --git a/lang/es.json b/lang/es.json index db9e2652..b63cdfc6 100644 --- a/lang/es.json +++ b/lang/es.json @@ -2273,7 +2273,8 @@ "Here is your connection URL. Use it with a token you created above.": "Esta es tu URL de conexión. Úsala con un token que hayas creado arriba.", "Run this, using one of your tokens in place of .": "Ejecuta esto, usando uno de tus tokens en lugar de .", "Claude Desktop & ChatGPT": "Claude Desktop y ChatGPT", - "Coming soon. These apps sign in with OAuth, which we are still building, so a token will not work with them yet. Use Claude Code for now.": "Muy pronto. Estas apps inician sesión con OAuth, que todavía estamos construyendo, así que de momento un token no funciona con ellas. Usa Claude Code por ahora.", + "These apps sign in instead of using a token. Add a custom connector pointing at the URL below, then approve the connection on the Whisper Money screen that opens. No token needed.": "Estas apps inician sesión en lugar de usar un token. Añade un conector personalizado que apunte a la URL de abajo y luego aprueba la conexión en la pantalla de Whisper Money que se abre. No hace falta ningún token.", + "Connected apps can read and analyse your data, but cannot change it.": "Las apps conectadas pueden leer y analizar tus datos, pero no pueden modificarlos.", "Connect to :app": "Conectar con :app", "Connect :client to :app": "Conectar :client con :app", ":client is asking to read and analyse your finance data.": ":client solicita leer y analizar tus datos financieros.", diff --git a/resources/js/pages/settings/mcp.tsx b/resources/js/pages/settings/mcp.tsx index fe7f786e..dad013a0 100644 --- a/resources/js/pages/settings/mcp.tsx +++ b/resources/js/pages/settings/mcp.tsx @@ -56,6 +56,7 @@ interface TokenRow { interface McpPageProps { tokens: TokenRow[]; serverUrl: string; + oauthUrl: string; subscribeUrl: string; newToken: string | null; } @@ -69,9 +70,8 @@ function formatDate(value: string | null): string { } export default function Mcp() { - const { tokens, serverUrl, subscribeUrl, newToken, auth } = usePage< - SharedData & McpPageProps - >().props; + const { tokens, serverUrl, oauthUrl, subscribeUrl, newToken, auth } = + usePage().props; const [, copy] = useClipboard(); const form = useForm<{ name: string; scope: 'read' | 'read_write' }>({ @@ -442,7 +442,26 @@ export default function Mcp() {

{__( - 'Coming soon. These apps sign in with OAuth, which we are still building, so a token will not work with them yet. Use Claude Code for now.', + 'These apps sign in instead of using a token. Add a custom connector pointing at the URL below, then approve the connection on the Whisper Money screen that opens. No token needed.', + )} +

+
+ + {oauthUrl} + + +
+

+ {__( + 'Connected apps can read and analyse your data, but cannot change it.', )}