
France Travail Mcp
io.github.JoJoLaBagarrePublished by GitHub account JoJoLaBagarrev0.1.1Updated Oct 24, 2026
Serveur MCP des API officielles France Travail : offres d'emploi, ROME 4.0 et ROMEO.
Overview
A local MCP server that connects an assistant to the official France Travail APIs for French job offers, the ROME 4.0 occupational taxonomy and ROME code lookup
- What you can do
- Search and read job offers with multi-criteria filters (keywords, ROME code, location, contract type, salary) and fetch full offer details, plus look up reference codes and labels such as communes and contract types. Find ROME occupations by text, read an occupation's definition and access conditions, and get its skills and knowledge sheets. Predict a ROME code from a free-text job title. Optionally search companies with high hiring potential via La Bonne Boîte, disabled by default.
- When to use it
- Useful when working with the French labour market: finding current job offers, translating a trade or job title into a ROME code, or exploring ROME occupation descriptions and skills. It suits assistants used in French job-search or career contexts.
- Requirements
- Runs locally over stdio, typically via npx with Node.js 18 or later, or as a Claude Desktop bundle. Needs a free France Travail account with an application subscribed to the relevant APIs, and the FT_CLIENT_ID and FT_CLIENT_SECRET environment variables. Each API group requires its own subscription and OAuth scope.
Installation
In SourceWeft
- Open France Travail Mcp in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
🇫🇷 France Travail MCP
[npm version] [CI] [License: MIT] [Node]
Serveur MCP (Model Context Protocol) pour les API officielles de France Travail : offres d'emploi, référentiel des métiers ROME 4.0, prédiction ROMEO, et entreprises qui recrutent (La Bonne Boîte).
An MCP server connecting any AI assistant (Claude, Cursor, VS Code…) to the official France Travail APIs: real-time job offers, the ROME occupational taxonomy, ROME-code prediction, and hiring-company search.
Branchez votre assistant IA sur le marché de l'emploi français : il cherche des offres en temps réel, traduit un métier en code ROME, et cible les entreprises qui recrutent — directement dans la conversation.
C'est, à notre connaissance, le premier serveur MCP basé sur les API REST officielles de France Travail (les autres « MCP France Travail » sont des scrapers du site web, fragiles et non officiels).
⚡ Installation en 30 secondes
Dans tous les cas, il vous faut des identifiants France Travail (gratuits) — voir Obtenir vos identifiants.
🖱️ Option A — La plus simple, sans terminal (Claude Desktop)
- Téléchargez le fichier
france-travail-mcp.mcpbdepuis la page Releases. - Double-cliquez dessus : Claude Desktop l'installe et vous demande votre
Client ID/Client Secretdans un formulaire (le secret est stocké dans le trousseau de votre système). - C'est prêt — aucune édition de fichier JSON.
⌨️ Option B — Une ligne (Claude Code)
🧩 Option C — Copier-coller (Claude Desktop, Cursor, VS Code…)
📖 Guide complet par client (Cursor, VS Code/Cline, et Ollama 100 % local) → INSTALL.md.
🔑 Obtenir vos identifiants
- Créez un compte sur francetravail.io.
- Créez une application dans votre espace.
- Souscrivez aux API souhaitées (au minimum Offres d'emploi v2 ; puis ROME 4.0 – Métiers, ROME 4.0 – Fiches métiers, ROMEO 2, La Bonne Boîte v2 selon les outils voulus).
- Récupérez le Client ID (
PAR_…) et le Client Secret.
Prérequis : Node.js ≥ 18 (sauf l'option A, qui est autoportée).
🧰 Outils exposés
La Bonne Boîte est une API à accès conditionné : la simple souscription ne suffit pas, France Travail exige une habilitation validée manuellement (sans elle, l'API renvoie
403 Invalid scope). L'outilft_search_entreprisesest donc désactivé par défaut ; une fois l'accès accordé, activez-le avec la variable d'environnementFT_ENABLE_LABONNEBOITE=true(son endpoint exact reste à confirmer).Les autres outils s'activent automatiquement dès que l'API correspondante est souscrite, sans changement de code.
🧪 Exemple — l'agent enchaîne les outils tout seul
« Je suis pâtissier et je cherche un CDI vers Lyon. »
ft_predict_rome("pâtissier")→ code ROMED1104ft_search_offres(codeROME=["D1104"], commune="69381", typeContrat=["CDI"])ft_search_entreprises(...)pour les candidatures spontanées.
⚠️ Paris, Lyon et Marseille s'indiquent par arrondissement (Lyon 1er =
69381, Paris 1er =75101, Marseille 1er =13201) : les codes « globaux »69123/75056/13055sont refusés par l'API (erreur 400). Récupérez les bons codes avecft_list_referentiel.
🔐 Correspondance outils ↔ scopes OAuth
Chaque API a son propre scope. Le serveur demande un token par scope (mis en cache ~25 min). Pour activer un groupe d'outils, votre application doit avoir souscrit à l'API correspondante :
🛠️ Développement
Stack : TypeScript · @modelcontextprotocol/sdk · zod · axios. Transport stdio.
Architecture : src/services (auth OAuth2 + client HTTP + erreurs), src/schemas, src/tools (un fichier par domaine). Voir CONTRIBUTING.md.
📦 Publication (mainteneur)
La publication est automatique sur un tag de version (npm puis registre MCP officiel) :
Voir .github/workflows/publish-mcp.yml. Secret requis dans le dépôt : NPM_TOKEN (jeton npm). L'authentification au registre MCP se fait par OIDC (aucun secret supplémentaire).
🔒 Sécurité
- Le fichier
.envn'est jamais committé (voir.gitignore). - Les identifiants sont fournis au serveur via les variables d'environnement du client MCP (ou le formulaire sécurisé du bundle
.mcpb). - Ne partagez jamais votre
client_secret. En cas de fuite, régénérez-le sur francetravail.io.
🗺️ Feuille de route
- La Bonne Alternance (offres + formations en alternance)
- Marché du travail (statistiques, tensions de recrutement par bassin)
- Validation/finalisation de
ft_search_entreprises(La Bonne Boîte) - Publication npm + registre MCP + bundle
.mcpb
🤝 Contribuer
Les contributions sont bienvenues : ouvrez une issue ou une pull request. Voir CONTRIBUTING.md.
📄 Licence & avertissement
Sous licence MIT (voir LICENSE).
Projet non officiel, non affilié à France Travail. Il consomme les API publiques de France Travail ; leur usage est soumis aux conditions d'utilisation de francetravail.io. « France Travail », « ROME » et « La Bonne Boîte » sont des marques de France Travail.
Source: README.md at commit 5dcc963
Tools
0Version history
1- v0.1.1LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts