MCP Fusion/Get started/Démarrage rapide
Démarrage rapide
Créez un premier connecteur avec MCP Fusion : une tool de query, un Presenter avec masquage de PII, une connexion depuis Claude Desktop et un déploiement gratuit sur Vinkius Cloud.
Ce quickstart construit un petit connecteur de facturation : une tool qui renvoie une facture, un Presenter qui garde les PII du client hors du contexte du modèle, une connexion en direct depuis un client MCP et un déploiement gratuit sur Vinkius Cloud. Il suppose que vous avez installé @mcpfusion/core et généré un projet comme montré dans Installation.
1. Créez le serveur
import { initMCPFusion } from '@mcpfusion/core';
const f = initMCPFusion();
export default f;initMCPFusion() renvoie un registre avec les tool builders fluides. Le paramètre générique AppContext est optionnel : quand vous fournissez un type, chaque handler et chaque middleware reçoit un ctx typé.
2. Définissez un Presenter
import { createPresenter, t } from '@mcpfusion/core';
const InvoicePresenter = createPresenter('Invoice')
.schema({
id: t.string,
customer: t.string,
amount_cents: t.number.describe('CENTS, divide by 100'),
status: t.enum('draft', 'paid', 'overdue'),
})
.redactPII(['customer.email', 'customer.ssn'])
.rules([
'amount_cents is in CENTS. Divide by 100 before showing money.',
])
.limit(50);Trois choses se passent ici. Le schéma dit exactement quels champs existent, donc les colonnes non déclarées n’atteignent jamais l’agent. .redactPII() retire les chemins listés à chaque réponse. .rules() deviennent des lignes de system prompt qui apprennent au modèle les unités.
3. Écrivez la tool
import { InvoicePresenter } from './presenters';
export default f.query('billing.get_invoice')
.describe('Retrieve an invoice by ID')
.withString('id', 'Invoice ID')
.returns(InvoicePresenter)
.handle(async (input) => {
return db.invoices.findUnique({
where: { id: input.id },
});
});f.query() marque la tool en lecture seule. Utilisez f.mutation() pour les écritures et f.action() pour tout ce qui a des effets de bord. .returns(InvoicePresenter) attache la couche de perception : le handler peut renvoyer la ligne brute, c’est le Presenter qui façonne.
Ne renvoyez jamais de PII depuis un handler sans Presenter attaché. Avec MCP Fusion, le Presenter est le firewall de sortie ; sans lui, tout ce que le handler renvoie part vers le modèle tel quel.
4. Connectez un client
Démarrez le dev server et connectez Claude Desktop, Cursor ou tout client MCP :
mcpfusion dev --server ./src/server.ts
claude mcp add billing npx tsx src/server.tsDemandez au client "what is invoice inv_2026_0417?" et regardez la réponse revenir en dollars, sans l’adresse e-mail du client nulle part dans le transcript.
5. Déployez gratuitement
mcpfusion deployUne seule commande bundle votre serveur et le place sur le Vinkius Edge : hébergement gratuit, sans carte bancaire. Vous recevez un token de connexion et une MCP URL comme https://edge.vinkius.com/vk_<token>/mcp. Votre connecteur apparaît dans la console Vinkius comme n’importe quel autre connecteur, avec capabilities, identifiants et contrôles de coûts déjà câblés. Consultez Deploy pour le parcours complet.
Ce que vous avez construit
| Élément | Rôle |
|---|---|
f.query() | Une tool en lecture seule que l’agent peut appeler |
createPresenter() | La couche de perception entre vos données et le modèle |
.redactPII() | La garantie que les PII n’atteignent jamais le modèle |
.returns() | Le fil entre le handler et le Presenter |
mcpfusion deploy | Hébergement gratuit sur le Vinkius Edge |
Prochaines étapes
- The MVA pattern : pourquoi les Presenter existent
- Tools : mutations, actions, middleware et erreurs
- Credentials : laissez les acheteurs configurer leurs propres clés
