Démarrage en français
Deux modes : télécharger le serveur et l’exécuter localement, ou connecter explicitement un collecteur sortant à votre compte OUTSEED. Le mode local indépendant ne nécessite pas de compte et ne contient ni télémétrie cachée ni arrêt à distance.
Prérequis : Python 3.10+, accès autorisé à l’hôte ou à l’API et certificat de confiance. Téléchargez le fichier .py, comparez son SHA-256 puis configurez votre client MCP pour lancer python3 avec le chemin absolu du fichier. Les commandes d’installation et noms de variables restent identiques dans les deux langues.
Connexion hébergée
Dans Compte → MCP connections, créez une connexion après confirmation d’identité. Conservez le jeton client et le code d’appairage affichés une seule fois. Le code expire après dix minutes ; les jetons après trente jours.
Exécutez --pair avec un fichier local distinct, puis --connect. Le collecteur utilise une connexion HTTPS sortante ; les identifiants de la plateforme restent configurés localement. Le client IA utilise l’URL MCP et le jeton client, jamais le jeton du collecteur.
Usages et limites
Linux : référence hôte, stockage et services. VMware : inventaire vCenter, sans prise en charge SOAP directe ESXi. Proxmox : ressources, stockage et état du cluster. OpenShift : pods, services, PVC et événements dans un projet autorisé ; santé des opérateurs de cluster en option.
Les outils sont en lecture seule. Une donnée manquante reste inconnue. Le résultat d’un import disque n’est pas une validation applicative. Les actions de migration, redémarrage et modification d’infrastructure ne sont pas proposées.
Confidentialité et administration
Les résultats peuvent être transmis au fournisseur IA choisi par votre client. En mode hébergé, les arguments/résultats transitent temporairement par OUTSEED et sont supprimés après livraison ou expiration. Ne transmettez pas d’identifiants dans les arguments.
L’administrateur voit téléchargements, IP, pays approximatif et connexions hébergées. Conservation : IP/activité détaillée 30 jours ; agrégats et audit administratif 365 jours. La quarantaine bloque les appels ; la révocation interdit la reconnexion. Les installations locales indépendantes restent sous votre contrôle.
La référence technique exhaustive ci-dessous est en anglais ; les noms d’outils, schémas et commandes constituent la même interface dans les deux langues.
1. What is available in this release?
Four standalone Python 3.10+ source packages, one per platform, use the same read-only evidence tools. No third-party Python dependency is required. The Linux collector runs on the Linux host; VMware, Proxmox and OpenShift collectors run on a customer-controlled management host with access to the platform API.
Status: Preview. Protocol/fixture and permission-boundary tests are distinct from real infrastructure compatibility. No customer lab/platform version is claimed tested until evidence is published. Direct ESXi SOAP, kubeconfig exec plugins, arbitrary SSH commands, Docker images and automatic migration execution are not implemented.
2. Download and verify
Download the versioned .py file from the package page. The response includes X-Checksum-SHA256; obtain it with a HEAD request and compare it with a local SHA-256 calculation before execution. Downloads do not require an OUTSEED account.
Python 3.10+ is required. The package is MIT licensed; preserve its attribution. This license does not grant vendor trademark rights or imply VMware, Proxmox or Red Hat endorsement.
curl -I https://outseed.me/api/platform/mcp-hub/downloads/openshift/0.1.0
sha256sum outseed-openshift-0.1.0.py
python3 outseed-openshift-0.1.0.py --help
3. Local MCP client setup (stdio)
Configure the AI client to launch the downloaded script with python3, using an absolute path. The process receives newline-delimited JSON-RPC on stdin and writes only protocol messages to stdout. Diagnostic messages use stderr.
This is an example of the commonly used mcpServers stdio configuration. Client-specific configuration location, environment inheritance and tool permission prompts vary; consult the client documentation. Named third-party client compatibility is not certified by our protocol fixture tests.
{
"mcpServers": {
"outseed-openshift": {
"command": "python3",
"args": ["/absolute/path/outseed-openshift-0.1.0.py"]
}
}
}
4. Credentials, targets and TLS
Set platform credentials only in the local launch environment or an approved local secret store. They are never parameters accepted from the AI client. Do not place credentials in URLs, tickets, browser forms or source repositories.
OUTSEED_TARGET_URL must be a credential-free HTTPS origin, without a path/query/fragment. OUTSEED_CA_FILE optionally names a trusted PEM CA bundle. Certificate verification is always enabled, and HTTP redirects are refused to prevent forwarding credentials to another origin.
For VMware use OUTSEED_USERNAME and OUTSEED_PASSWORD; only API session creation/deletion mutate session state. For Proxmox use OUTSEED_API_TOKEN in user@realm!tokenid=secret format (the script supplies the PVEAPIToken= prefix). OpenShift uses an API bearer token and one OUTSEED_NAMESPACE. Do not reuse an administrator credential when read-only scope is sufficient.
5. Hosted connection: pair an outbound connector
Sign in and open Account → MCP connections. Create a platform/label, complete identity confirmation and save the one-time client token and pairing code. Only approved active accounts can create connections, with a maximum of ten current connections.
On the customer-controlled host, configure platform credentials locally, download the matching package and pair it. The code expires in ten minutes and is single-use. Connector credentials are written to a new local file with restrictive POSIX permissions; choose a different token file for each connection. Windows operators must apply equivalent ACL restrictions.
Pairing initiates no infrastructure operation. Start --connect explicitly to enable outbound polling. Idle polling is every ten seconds, busy polling every five seconds. Keep the process running under a supervisor you manage; inbound platform/API exposure is unnecessary.
python3 outseed-openshift-0.1.0.py --pair <one-use-code> --token-file ~/.config/outseed/openshift.json
python3 outseed-openshift-0.1.0.py --connect --token-file ~/.config/outseed/openshift.json
6. Connect an AI client to the hosted endpoint
Configure a client that supports stateless Streamable HTTP POST with a manually configured Authorization: Bearer header. Endpoint: https://outseed.me/api/platform/mcp-hub/rpc. Use the client token shown once in your account, not the connector token. OAuth discovery, browser-based OAuth grants and SSE subscriptions are not provided in this preview.
The service accepts initialize, ping, tools/list, tools/call and initialized/cancelled notifications for protocol 2025-03-26 and 2025-06-18. Each registered connection is a separately revocable client/connector pair. Tokens expire after thirty days; create a new pair to rotate.
Each connection permits one in-flight tool call. A result must arrive within 25 seconds; remote collection timeouts may exceed that bound, so retry only after reviewing connector health. Unknown tools, target overrides, malformed arguments and excessive traffic are rejected.
7. Tool reference and evidence schema
inventory.read accepts only resource: overview, storage, network, events or health. Supported resources differ per platform; an unsupported or unauthorized resource returns an error instead of an invented empty success. No secrets, pod logs, exec, arbitrary URL or shell tools are exposed.
migration.assess accepts up to 100 explicit VM records with name and optional firmware, encrypted, vtpm, passthrough, virtioReady, backupVerified, networkMapped and applicationTested. Missing facts remain UNKNOWN. True encryption/vTPM/passthrough flags require review; this planner does not migrate those devices. All prerequisites explicitly met yields PILOT_CANDIDATE, not production approval.
evidence.compare accepts before and after JSON objects and reports changed top-level fields. Nested objects count as a changed field; this is not a semantic application test.
Evidence is marked outseed.evidence/v1 with platform, tool, observedAt and readOnly. Platform APIs are capped at 128 KiB, inventory records are bounded, commands have fixed arguments/timeouts, and truncation/continuation is reported. A partial inventory cannot establish completeness.
{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"inventory.read","arguments":{"resource":"overview"}}}
8. Practical workflow: application or host incident
Capture overview and the relevant health/storage/network evidence. Preserve observation time, target identity and API permissions used. Identify failed readiness conditions, pending volumes, failed services or mismatched configuration before proposing changes.
OpenShift network collection covers Service configuration, not packet reachability or Route/Ingress probes. Events include reason/type/count/timestamps but not free-text message/log dumps. Cluster health is opt-in and checks ClusterOperator conditions, not a complete upgrade readiness certification.
Correlate results with approved application-owner tests and vendor guidance. Record unresolved questions, inaccessible resources and data age. Repeat collection after a separately approved change and compare the evidence.
9. Troubleshooting and limitations
HTTP 401/403: review token validity, account approval, connector state and target permissions. Revoked/quarantined hosted identities stop collecting new work; a revoked connector exits. Only a current quarantined pair can be restored; revoked credentials require a new pair.
TLS/connectivity failure: verify the final API origin, CA chain, DNS and firewall path from the local connector. Never solve this by disabling verification. VMware requires the vCenter /api REST interface, not direct ESXi; validate your installed version.
Missing commands or permissions: Linux reports unavailable commands; it never uses sudo automatically. OpenShift health needs explicit OUTSEED_CLUSTER_READ=true and separate cluster permissions. Large responses fail closed at 128 KiB; reduce scope.
Hosted timeout: check the process heartbeat, networking and local collection duration. One tool per connection is allowed; duplicate submissions can be rejected. Disconnecting a read-only session cannot undo an external operation already accepted elsewhere.
10. Data handling, telemetry and retention
Independent local mode makes no OUTSEED telemetry calls and has no remote kill switch. Your MCP/AI client may transmit tool output to its configured AI provider. The result scrubber removes fields with secret-like names but is not a guarantee that all sensitive content is detected. Review evidence and client settings.
Hosted mode is explicitly opted in. Tool arguments/results are temporarily queued in OUTSEED D1, deleted after delivery or expiry, and are not saved as assessment history. Expired queue data is removed by the 15-minute scheduled job. Infrastructure credentials stay local; avoid supplying secrets as evidence.
OUTSEED records download starts, package/version, trusted source IP and approximate country/region/city when available. A 10-minute IP/browser/package/version window deduplicates retries; HEAD is not counted, range requests are served as full downloads, known bots are separated. Completion and installation are not measured.
Raw IP and detailed activity are retained for 30 days; non-identifying download aggregates and administrator/security configuration audit for 365 days. Administrator raw-data access requires identity confirmation and is audited. Independent mirrors/downloads outside OUTSEED cannot be measured.
11. Administration and malicious connections
The sole administrator can review client/connector origins, last heartbeat, state, account, platform and request metadata in Account → MCP administrator operations. Stale/offline is distinct from an active stored credential.
Quarantine denies new calls and polling. Terminate and revoke invalidates both hosted sides and cancels queued work; in-flight result delivery is denied after revocation. Suspending MCP service access affects all of that user’s hosted connections, without modifying their general OUTSEED account.
Temporary IP blocks expire after one hour; the administrator cannot block their own current IP. IP/location changes alone do not imply malicious behavior. Rate limits and authorization reject prohibited requests automatically; ambiguous activity requires administrator review.
12. Upgrade, remove and test
Versioned downloads remain stable. Compare checksums, review release notes and test in a lab before replacing a client command path. Revoke old hosted connections and create fresh credentials for rotation.
To uninstall: stop the connector process, revoke the OUTSEED pair, remove the local token file, remove the MCP client entry, and revoke target API credentials if no longer needed. Local process control remains with the operator.
OUTSEED_FIXTURE is an explicit local synthetic-fixture mode for protocol testing. Its output is marked SYNTHETIC_FIXTURE and is not live platform evidence. Do not use fixture output to claim platform readiness. Release 0.1.0 provides assessment only; orchestration, infrastructure mutation and automatic upgrades/migrations are absent.