Velora Mcp Copilote — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Velora Mcp Copilote (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
POC du Learning Lab M2DFS sur le Model Context Protocol (MCP).
Il comprend :
et les politiques de l'e-commerce fictif Velora ;
utilisable avec OpenAI, un modèle local (Ollama / LM Studio) ou tout fournisseur compatible — configurable uniquement via .env.
📄 Rapport complet : docs/rapport/ (5 blocs) — version assemblée : docs/rapport/RAPPORT.md. 🎓 Atelier + kata : docs/atelier/. 🧪 Preuves d'exécution : docs/demo/.
L'agent utilise l'API compatible OpenAI. Vous pouvez donc le faire tourner : - avec un modèle local GRATUIT (Ollama ou LM Studio) → aucune clé ; - avec OpenAI (clé payante) ; - avec tout autre fournisseur compatible (Groq, Together, OpenRouter…).
>
Il suffit de modifier les variablesLLM_*dans.env.
>
De plus, le serveur MCP ne dépend d'aucun LLM : il se teste seul, sans aucune clé, vianpm testou le MCP Inspector. Cette même indépendance permet aussi de le brancher sur Claude Desktop (cf.claude_desktop_config.example.json).
npm install
cp .env.example .env # profil "Ollama local" actif par défaut
npm run db:setup # crée la base SQLite + données fictives Velora
npm run build # compile le serveur (dist/)npm test # 12 tests (outils MCP + boucle agent simulée)
npm run showcase # appels réels des outils -> docs/demo/outils-demo.md
npm run inspect # MCP Inspector sur http://localhost:6274# 1) installer Ollama puis récupérer un modèle qui gère le tool-calling :
ollama pull llama3.1
# (ollama tourne en service ; sinon `ollama serve`)
# 2) .env est déjà réglé sur le profil Ollama. Lancer :
npm run agent -- "Où en est la commande VEL-1003 ?"
npm run demo # rejoue plusieurs questions -> docs/demo/transcripts/Dans .env, commentez le profil Ollama et décommentez le profil OpenAI (LLM_MODEL=gpt-4o-mini recommandé), renseignez LLM_API_KEY, puis :
npm run agent -- "Avez-vous la robe Lila en taille S ?"⚠️ Le modèle choisi doit supporter le function/tool calling. Reco locale fiable :llama3.1(8B) ; alternatives :qwen2.5,mistral.
.env| Variable | Rôle |
|---|---|
DATABASE_URL | Base SQLite (laisser file:./dev.db) |
LLM_BASE_URL | Endpoint compatible OpenAI (Ollama/OpenAI/LM Studio…) |
LLM_API_KEY | Clé API (valeur factice acceptée par Ollama) |
LLM_MODEL | Nom du modèle |
LLM_TEMPERATURE | Température (défaut 0.2) |
AGENT_MAX_STEPS | Nb max d'allers-retours tool-use (défaut 6) |
Outils : search_products, get_product, check_stock, get_order_status, get_return_policy, create_return_request. Ressources : policy://returns, policy://shipping. Prompt : conseiller_reply.
src/
server.ts # serveur MCP (stdio)
db.ts # client Prisma (adapter SQLite)
tools/ # 1 fichier par outil (Zod + handler)
resources/ # ressources + politiques (.md)
prompts/ # prompt conseiller
agent/ # config, mcpClient, bridge (MCP↔OpenAI), agent, cli
prisma/ # schema + migrations + seed
tests/ # vitest (outils, bridge, boucle agent)
scripts/ # showcase, demo, smoke, build du rapport
docs/ # rapport, atelier (kata), preuves, diagrammes| Script | Effet |
|---|---|
npm run db:setup | génère le client + migre + seed |
npm run build | compile TypeScript → dist/ |
npm test | tests (sans clé) |
npm run showcase | appels réels des outils → docs/demo/outils-demo.md |
npm run inspect | MCP Inspector |
npm run agent -- "…" | pose une question au copilote (LLM requis) |
npm run demo | transcripts multi-questions (LLM requis) |
npm run report:html | assemble le rapport → docs/rapport/RAPPORT.html |
npm run report:htmlOuvrez docs/rapport/RAPPORT.html puis Imprimer → Enregistrer en PDF. (Le Markdown des docs/rapport/*.md se lit aussi directement sur GitHub.)
Outils en lecture seule par défaut ; seule écriture create_return_request restreinte aux commandes livrées (mention human-in-the-loop) ; system prompt anti-invention ; schémas d'entrée validés (Zod) ; logs serveur sur stderr.
TypeScript · @modelcontextprotocol/sdk · Prisma 7 + SQLite · SDK openai · Zod · Vitest.
MIT.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.