Skip to main content
Glama
Patricked-code

WealthTech MCP SSH Bridge

WealthTech MCP SSH Bridge

Fil d'Ariane historique permanent du programme MCP

À toute arrivée, avant de choisir du travail, lire le fil d'Ariane historique MCP : origine de l'audit depuis l'issue #65, jalons des PR, constats historiques, acquis attestés, lacunes non certifiées, dépendances et contrat de checkpoint commun. Ce document renvoie aux sources existantes et ne devient ni une autorité runtime ni une seconde Task Queue. Un nouvel agent doit pouvoir retrouver le passé et le NEXT_ACTION sans cette conversation ; réobserver GitHub et les autorités live avant toute mutation.

Related MCP server: ssh-mcp-server

Reprise immédiate : consigne INTAKE du 16 octobre 2026

Tout agent qui arrive ou reprend doit lire la directive de coordination dans l'issue #235, puis appliquer la section « Protocole vérifiable d'entrée et de reprise » de AGENTS.md. Ne pas confondre la PR #300 livrée avec la fin du programme : le prochain contrôle GWB04 porte sur TB-W4-H-01 et TB-W4-K-01, sous réserve de relecture de l'état live et des propriétaires. Aucun commentaire GitHub ne réveille automatiquement un agent, ne crée une Task runtime ni n'autorise une mutation.

Démarrage prioritaire des agents MCP

La feuille de route d'exécution commune est la carte de priorité et de convergence, expliquée dans l'index des 15 jalons. Avant toute écriture, lire CLAUDE.md, AGENTS.md, SUIVI.md, puis la carte et le Program Backlog V2. Elle permet de reprendre le programme sans dépendre d'une conversation, tout en respectant les Task/Session/Locks existants. Les étapes sont liées chronologiquement mais les scopes indépendants peuvent avancer en parallèle sous contrôle de collision.

Reprendre l'audit et le programme gouverné (point d'entrée des nouveaux agents)

Pour reprendre le projet MCP uniquement (ne pas confondre avec Governed-Repository-Template), lire d'abord CLAUDE.md et AGENTS.md, puis l'index de reprise de la gouvernance. Cet index renvoie à l'architecture cible, au pacte, au bloc des dix travaux GWB-00..09, aux archives d'audit, au Program Backlog V2 et à l'issue maîtresse #235.

Ne pas lire un ancien checkpoint comme l'état live : réobserver le main actuel, les PR, les CI/déploiements et, quand nécessaire, les autorités Governed Task Queue / Sessions / Locks via des moyens autorisés. Les 94 blueprints sont de la planification et le workblock GWB ne crée aucune Task. Ordre de reprise : READ → REOBSERVE → RECONCILE → RESUME_OWNED_FIRST → FIRST_COLLISION_FREE_IN_PROGRAM_ORDER → EXECUTE/VERIFY → CHECKPOINT → NEXT.

Pour les opérations réalisables depuis GitHub, appliquer .mcp/github-first-operational-policy.json et GitHub Actions/OIDC. La correction de consentement OAuth et la continuité des refresh tokens restent dans la PR #207, sans fusion régressive ni réattribution de son claim.

Serveur MCP Node.js/TypeScript destiné à exposer à ChatGPT/Codex des outils contrôlés pour inventorier, documenter et préparer les opérations sur les serveurs WealthTech.

Objectif

Ce dépôt contient le MCP wealthtech_ssh_bridge. Il doit permettre une connexion contrôlée vers :

  • S1 : root@212.227.212.33

  • S2 : root@217.160.249.254

Le mode initial est volontairement read-only first : aucune suppression, aucun redémarrage, aucun vidage de dossier, aucune migration destructive ne doit être activée dans la première version.

URL cible

https://mcp.wealthtechinnovations.com/mcp

Authentification ChatGPT / OAuth MCP

Le serveur conserve l'authentification historique :

Authorization: Bearer <MCP_AUTH_TOKEN>

Pour être découvrable par ChatGPT Apps SDK sans exposer MCP_AUTH_TOKEN, le serveur expose aussi une couche OAuth minimale compatible Authorization Code + PKCE :

GET  /.well-known/oauth-protected-resource
GET  /.well-known/oauth-authorization-server
GET  /oauth/authorize
POST /oauth/authorize
POST /oauth/token

Principes de sécurité :

  • /mcp reste protégé ;

  • l'ancien MCP_AUTH_TOKEN reste accepté pour les tests administrateur et les scripts existants ;

  • ChatGPT reçoit uniquement des access tokens OAuth temporaires signés côté serveur ;

  • MCP_AUTH_TOKEN n'est jamais renvoyé dans les réponses OAuth ;

  • le login web existant /login authentifie l'opérateur ;

  • chaque connexion OAuth affiche ensuite une page de consentement (client, hôte de redirection, accès demandé) : le code n'est émis qu'après un clic « Autoriser » sur cette page, via un POST same-origin lié à la demande exacte et valable 10 minutes ; « Refuser » renvoie access_denied au client ;

  • le serveur renvoie un header WWW-Authenticate sur les 401 MCP pour permettre à ChatGPT de découvrir /.well-known/oauth-protected-resource.

Tests publics attendus :

curl -i https://mcp.wealthtechinnovations.com/health
curl -i https://mcp.wealthtechinnovations.com/.well-known/oauth-protected-resource
curl -i https://mcp.wealthtechinnovations.com/.well-known/oauth-authorization-server
curl -i https://mcp.wealthtechinnovations.com/mcp

Le dernier test doit rester en 401 Unauthorized sans token.

Installation locale

npm install
cp .env.example .env
npm run build
npm run start

Variables d’environnement

Voir .env.example.

Ne jamais pousser .env, les clés SSH, les dumps SQL, les sauvegardes ou les secrets.

Outils MCP read-only initiaux

  • ping

  • get_project_context

  • check_disk_s1

  • check_disk_s2

  • pm2_status_s1

  • pm2_status_s2

  • docker_status_s1

  • docker_status_s2

  • list_domains_s1

  • list_domains_s2

  • list_large_files_s1

  • list_large_files_s2

  • list_backups_s1

  • list_backups_s2

  • curl_domain

Documentation obligatoire

La mémoire persistante du projet se trouve dans docs/.

Avant toute modification, lire :

  1. docs/GPT.md

  2. docs/SUIVI.md

  3. docs/ROADMAP.md

  4. docs/TASKS.md

  5. docs/SECURITY.md

  6. docs/MCP_TOOLS.md

  7. docs/AGENTS_ARCHITECTURE.md

  8. docs/AI_SKILLS.md

Déploiement recommandé

  • Hébergement : S1

  • Dossier : /opt/apps/wealthtech-mcp-ssh-bridge

  • Runtime initial : PM2 ou Docker Compose

  • Reverse proxy : Nginx/Plesk vers 127.0.0.1:8787

  • HTTPS obligatoire

  • Authentification historique : header Authorization: Bearer <MCP_AUTH_TOKEN>

  • Authentification ChatGPT : OAuth minimal via les routes .well-known et /oauth/*

Règle de sécurité

Le MCP ne doit pas devenir une console root libre. Il doit exposer uniquement des outils contrôlés, nommés, documentés, journalisés et validés.


Règle permanente — double présence, non-régression et amélioration continue

GitHub est la source versionnée.

Le serveur MCP est la source exécutée.

Les deux doivent toujours être vérifiés ensemble avant et après toute intervention.

Aucune IA ne doit supposer que GitHub et le serveur sont synchronisés sans vérification.

Toute intervention humaine, IA ou automatisée doit respecter :

  • non-régression obligatoire ;

  • amélioration continue obligatoire ;

  • aucune suppression destructive sans sauvegarde, justification et validation ;

  • aucun secret dans GitHub ;

  • vérification GitHub + serveur avant modification ;

  • documentation dans SUIVI.md après modification ;

  • vérification service, logs et endpoints après déploiement.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    A read-only MCP server that provides access to Charles Schwab account data and market information, including portfolio positions, real-time quotes, options chains, price history, and account balances through AI assistants.
    9
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that enables remote SSH command execution and bidirectional file transfers through a standardized interface. It allows AI assistants to securely manage remote servers while keeping credentials isolated and applying command-level security controls.
    ISC