<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>MCP |</title><link>https://clementgodbarge.com/nl/tag/mcp/</link><atom:link href="https://clementgodbarge.com/nl/tag/mcp/index.xml" rel="self" type="application/rss+xml"/><description>MCP</description><generator>HugoBlox Kit (https://hugoblox.com)</generator><language>nl-nl</language><lastBuildDate>Tue, 05 May 2026 00:00:00 +0000</lastBuildDate><image><url>https://clementgodbarge.com/media/icon_hu_64a6c3bec25b3d7b.png</url><title>MCP</title><link>https://clementgodbarge.com/nl/tag/mcp/</link></image><item><title>tei-mcp v0.3: TEI coderen zonder de bron te herschrijven</title><link>https://clementgodbarge.com/nl/post/tei-mcp-span-locked/</link><pubDate>Tue, 05 May 2026 00:00:00 +0000</pubDate><guid>https://clementgodbarge.com/nl/post/tei-mcp-span-locked/</guid><description>&lt;p&gt;Toen ik
, was het doel te
voorkomen dat AI-assistenten TEI-markup hallucineren. Schemaverankering loste
een deel van het probleem op: met rechtstreekse, op tools gebaseerde toegang
tot de P5-specificatie hoeft het model niet langer te raden wat een element
betekent of welke attributen het aanvaardt. De uitvoer valideert.&lt;/p&gt;
&lt;p&gt;Maar hallucinatie heeft bij TEI-codering twee gezichten, en het schema vangt
er maar één van op. Validatie tegen de specificatie vertelt je dat de &lt;em&gt;markup&lt;/em&gt;
welgevormd is. Ze zegt niets over de &lt;em&gt;tekst&lt;/em&gt; die de markup omsluit. En juist
daar – in de tekst zelf – schuilen de schadelijkste hallucinaties.
Span-locked composition, het paradepaardje van v0.3, is speciaal ontworpen
om die te voorkomen.&lt;/p&gt;
&lt;details class="print:hidden xl:hidden" &gt;
&lt;summary&gt;Inhoudsopgave&lt;/summary&gt;
&lt;div class="text-sm"&gt;
&lt;nav id="TableOfContents"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#de-hallucinatie-die-het-schema-niet-kan-vangen"&gt;De hallucinatie die het schema niet kan vangen&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#span-locked-composition"&gt;Span-locked composition&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#wat-dit-is-en-wat-het-niet-is"&gt;Wat dit is, en wat het niet is&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#waarom-dit-verder-reikt-dan-tei"&gt;Waarom dit verder reikt dan TEI&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#de-update-ophalen"&gt;De update ophalen&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/nav&gt;
&lt;/div&gt;
&lt;/details&gt;
&lt;h2 id="de-hallucinatie-die-het-schema-niet-kan-vangen"&gt;De hallucinatie die het schema niet kan vangen&lt;/h2&gt;
&lt;p&gt;Vraag een model een zestiende-eeuwse Franse brief te coderen en je krijgt vaak
een TEI-document terug dat er onberispelijk uitziet. De header is ingevuld, de
&lt;code&gt;&amp;lt;persName&amp;gt;&lt;/code&gt;-tags staan op de juiste plaats, de &lt;code&gt;&amp;lt;dateline&amp;gt;&lt;/code&gt; is welgevormd. Haal
het door &lt;code&gt;validate_document&lt;/code&gt; en het slaagt.&lt;/p&gt;
&lt;p&gt;Vergelijk dan de lopende tekst met de bron.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;mesme&lt;/code&gt; is &lt;code&gt;même&lt;/code&gt; geworden. Een komma is verhuisd. &lt;code&gt;luy&lt;/code&gt; is stilzwijgend
gemoderniseerd tot &lt;code&gt;lui&lt;/code&gt;. Een zinsdeel dat in het handschrift moeilijk leesbaar
was, is “verbeterd” tot iets netters. Om geen van die wijzigingen is gevraagd.
Geen ervan wordt gemeld. Het document is schemageldig en in alle stilte fout.&lt;/p&gt;
&lt;p&gt;Voor een archivistische workflow – waarin de gecodeerde tekst de blijvende
versie wordt waarop latere lezers, zoekindexen en citaties vertrouwen – is dit
de faalwijze die er het meest toe doet. Een misvormde tag is vervelend. Een
gemoderniseerde spelling die vijf jaar lang niemand opmerkt, is een corruptie.&lt;/p&gt;
&lt;h2 id="span-locked-composition"&gt;Span-locked composition&lt;/h2&gt;
&lt;p&gt;De nieuwe versie (v0.3) bevat een mechanisme tegen hallucinaties dat precies
op deze faalwijze mikt. Het ontwerpdoel is hallucinaties in de lopende tekst
per constructie onmogelijk te maken, niet alleen onwaarschijnlijk.&lt;/p&gt;
&lt;p&gt;Het idee is eenvoudig: &lt;strong&gt;het model typt nooit lopende tekst&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;De workflow ziet er in plaats daarvan zo uit:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Het model roept &lt;code&gt;get_source(&amp;quot;letter_001&amp;quot;)&lt;/code&gt; aan en ontvangt de platte
brontekst als onveranderlijke string.&lt;/li&gt;
&lt;li&gt;Voor elke tag die het wil aanbrengen, roept het
&lt;code&gt;tag_span(&amp;quot;letter_001&amp;quot;, start, end, element_path, attrs)&lt;/code&gt; aan – het
registreert daarmee een TEI-element op een tekenbereik in de bron.&lt;/li&gt;
&lt;li&gt;Is het klaar, dan roept het &lt;code&gt;compose(&amp;quot;letter_001&amp;quot;)&lt;/code&gt; aan. De server vlecht
de geregistreerde tags door de oorspronkelijke platte tekst, rendert de
definitieve TEI en controleert vervolgens &lt;em&gt;byte voor byte&lt;/em&gt; of de platte
tekstinhoud van het gerenderde document gelijk is aan de bron.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Komen de bytes overeen, dan komt het document terug. Zo niet – als de tags van
het model op een of andere manier een lopende tekst impliceren die ook maar één
teken van de bron afwijkt – dan werpt &lt;code&gt;compose()&lt;/code&gt; een fout op in plaats van een
corrupt document terug te geven.&lt;/p&gt;
&lt;p&gt;Er is geen route door deze workflow waarlangs het model een TEI-document
produceert waarvan de lopende tekst van de bron afwijkt. De invariant is
mechanisch, niet gedragsmatig. Je hoeft er niet op te vertrouwen dat het model
niet hallucineert; je hoeft alleen te vertrouwen op een &lt;code&gt;==&lt;/code&gt;-vergelijking
tussen twee bytestrings.&lt;/p&gt;
&lt;h2 id="wat-dit-is-en-wat-het-niet-is"&gt;Wat dit is, en wat het niet is&lt;/h2&gt;
&lt;p&gt;Span-locked composition is een &lt;strong&gt;aanvulling&lt;/strong&gt; op schemaverankering, geen
vervanging ervan. De tools voor schemaverankering (&lt;code&gt;validate_document&lt;/code&gt;,
&lt;code&gt;lookup_element&lt;/code&gt;, &lt;code&gt;valid_children&lt;/code&gt; en de rest van de oorspronkelijke zestien)
helpen het model &lt;em&gt;geldige&lt;/em&gt; TEI te produceren. Span-locked composition
garandeert dat de lopende tekst binnen die TEI &lt;em&gt;trouw&lt;/em&gt; is aan de bron. Een
inzetbare codeerworkflow moet aan beide eisen voldoen, en nu dekt één server
ze allebei.&lt;/p&gt;
&lt;p&gt;Het is ook geen wondermiddel voor alles. &lt;code&gt;compose()&lt;/code&gt; controleert nog niet of
de geregistreerde tags toelaatbaar zijn volgens een geladen ODD-customisatie –
dat komt later. Geregistreerde tags leven in het procesgeheugen en overleven
een herstart niet. En de bronbestanden moeten leesbaar zijn vanaf de plek waar
de server draait. Dat valt allemaal op te lossen; niets ervan ondergraaft de
kerninvariant.&lt;/p&gt;
&lt;h2 id="waarom-dit-verder-reikt-dan-tei"&gt;Waarom dit verder reikt dan TEI&lt;/h2&gt;
&lt;p&gt;Het patroon laat zich veralgemenen. Telkens wanneer een model wordt gevraagd
een stuk tekst te annoteren, te transformeren of te omsluiten – en telkens
wanneer de integriteit van de onderliggende tekst zwaarder weegt dan het
vermogen van het model om die te “verbeteren” – past dezelfde vorm van
oplossing. Vraag het model niet de tekst over te typen. Vraag het instructies
over de tekst te produceren, en laat een deterministische composer die
toepassen onder een gelijkheidsinvariant.&lt;/p&gt;
&lt;p&gt;Voor digitale edities in het bijzonder verandert dit wat je een model
verantwoord kunt vragen. Coderen wordt ineens een taak die je kunt delegeren
zonder elke uitvoer handmatig met de bron te hoeven vergelijken. De machine
neemt de saaie weg; de editeur beoordeelt de markup, niet de spelling.&lt;/p&gt;
&lt;h2 id="de-update-ophalen"&gt;De update ophalen&lt;/h2&gt;
&lt;p&gt;Heb je tei-mcp al geïnstalleerd:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;uvx tei-mcp@latest
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Of bij een nieuwe installatie:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pip install tei-mcp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Om span-locked composition te gebruiken, wijs je de server naar een map met
platte bronbestanden:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;export&lt;/span&gt; &lt;span class="nv"&gt;TEI_MCP_SPAN_SOURCE_ROOT&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/path/to/sources
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;uvx tei-mcp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;De naam van elk bestand (zonder extensie) wordt zijn document-ID
(&lt;code&gt;letter_001.txt&lt;/code&gt; → &lt;code&gt;letter_001&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;Broncode, volledige documentatie en de ontwerpnotities bij de invariant:
&lt;/p&gt;</description></item><item><title>tei-mcp</title><link>https://clementgodbarge.com/nl/code/tei-mcp/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://clementgodbarge.com/nl/code/tei-mcp/</guid><description>&lt;h2 id="tei-mcp-tei-p5-voor-ai-agents"&gt;tei-mcp: TEI P5 voor AI-agents&lt;/h2&gt;
&lt;p&gt;tei-mcp is een opensource-server voor
die AI-codeerassistenten rechtstreeks toegang geeft tot de
-specificatie. In plaats van te vertrouwen op uit het hoofd geleerde trainingsdata – wat vaak plausibele maar foute markup oplevert – kan de AI de specificatie in realtime bevragen.&lt;/p&gt;
&lt;h2 id="functies"&gt;Functies&lt;/h2&gt;
&lt;p&gt;De server parseert de ODD van TEI P5 en biedt 16 tools aan:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Opzoeken&lt;/strong&gt; van elk element, elke klasse, macro of module op naam, hoofdletterongevoelig en met suggesties bij tikfouten&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Attributen oplossen&lt;/strong&gt; over de volledige TEI-klassenhiërarchie (lokaal + geërfd)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Inhoudsmodellen uitklappen&lt;/strong&gt; tot gestructureerde bomen, met resolutie van klassen en macro&amp;rsquo;s&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Nesting valideren&lt;/strong&gt; – directe ouder-kindrelatie of recursieve bereikbaarheid, met padregistratie&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Documenten valideren&lt;/strong&gt; tegen TEI P5: inhoudsmodellen, attributen, gesloten waardelijsten, referentie-integriteit en waarschuwingen bij verouderde elementen&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Afzonderlijke elementen valideren&lt;/strong&gt; voor incrementele bewerkingsworkflows&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ODD-customisaties laden&lt;/strong&gt; om het schema te beperken tot een projectspecifieke deelverzameling&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Zoeken&lt;/strong&gt; in alle entiteitstypen met reguliere expressies&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="installatie"&gt;Installatie&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pip install tei-mcp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Of rechtstreeks uitvoeren met:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;uvx tei-mcp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="gebruik"&gt;Gebruik&lt;/h2&gt;
&lt;p&gt;Voeg toe aan elke MCP-compatibele client (Claude, Cursor, Windsurf enz.):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;mcpServers&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;tei&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;command&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;uvx&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;args&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;tei-mcp&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;De broncode en documentatie vind je in de
.&lt;/p&gt;</description></item><item><title>tei-mcp: TEI P5 voor AI-agents</title><link>https://clementgodbarge.com/nl/post/tei-mcp/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://clementgodbarge.com/nl/post/tei-mcp/</guid><description>&lt;p&gt;Wie ooit een AI-codeerassistent TEI-XML heeft laten schrijven, heeft het vast
gemerkt: het gaat mis. Elementen duiken op waar ze niet horen. Attributen worden
verzonnen. Nestingregels worden genegeerd. Het model heeft een ruw idee van hoe
TEI eruitziet, maar geen betrouwbare kennis van de specificatie.&lt;/p&gt;
&lt;p&gt;tei-mcp lost dat op door AI-agents rechtstreeks, via tools, toegang te geven tot
de TEI P5 Guidelines.&lt;/p&gt;
&lt;details class="print:hidden xl:hidden" &gt;
&lt;summary&gt;Inhoudsopgave&lt;/summary&gt;
&lt;div class="text-sm"&gt;
&lt;nav id="TableOfContents"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#wat-is-mcp"&gt;Wat is MCP?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#wat-tei-mcp-doet"&gt;Wat tei-mcp doet&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#waarom-het-ertoe-doet"&gt;Waarom het ertoe doet&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#aan-de-slag"&gt;Aan de slag&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/nav&gt;
&lt;/div&gt;
&lt;/details&gt;
&lt;h2 id="wat-is-mcp"&gt;Wat is MCP?&lt;/h2&gt;
&lt;p&gt;Het
(MCP) is een open
standaard waarmee AI-toepassingen verbinding kunnen maken met externe gegevensbronnen
en tools. Zie het als een USB-poort voor AI: één protocol waarmee elke compatibele
client – Claude, Cursor, Windsurf en andere – op gespecialiseerde diensten kan
aansluiten.&lt;/p&gt;
&lt;p&gt;Een MCP-server stelt &lt;em&gt;tools&lt;/em&gt; beschikbaar die de AI tijdens een gesprek kan aanroepen.
In plaats van te vertrouwen op uit het hoofd geleerde trainingsdata kan het model
een actuele, gezaghebbende bron bevragen.&lt;/p&gt;
&lt;h2 id="wat-tei-mcp-doet"&gt;Wat tei-mcp doet&lt;/h2&gt;
&lt;p&gt;tei-mcp parseert de ODD-specificatie van TEI P5 en biedt 16 tools aan die de meest
voorkomende vragen van een editeur of encoder beantwoorden:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Wat is dit element?&lt;/strong&gt; Zoek elk element, elke klasse, macro of module op naam
op, hoofdletterongevoelig en met suggesties bij tikfouten.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Welke attributen neemt het?&lt;/strong&gt; Los attributen op over de hele klassenhiërarchie
– eerst de lokale, dan de geërfde, in volgorde.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Wat mag erin?&lt;/strong&gt; Klap inhoudsmodellen uit tot gestructureerde bomen, of vraag
een platte lijst van geldige kinderen op.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mag dit element hier staan?&lt;/strong&gt; Controleer de nesting van ouder en kind, of volg
de bereikbaarheid door de volledige elementenhiërarchie.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Is mijn document geldig?&lt;/strong&gt; Valideer een TEI-XML-bestand tegen de specificatie:
inhoudsmodellen, attribuutwaarden, gesloten waardelijsten, referentie-integriteit
en waarschuwingen bij verouderde elementen.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;En mijn projectschema?&lt;/strong&gt; Laad een ODD-customisatiebestand om dit alles te
beperken tot de specifieke TEI-deelverzameling van je project.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="waarom-het-ertoe-doet"&gt;Waarom het ertoe doet&lt;/h2&gt;
&lt;p&gt;TEI-codering vereist dat je voortdurend de Guidelines raadpleegt. Ervaren encoders
kennen de gangbaarste patronen uit het hoofd, maar zelfs zij moeten de specificatie
erbij nemen voor minder vertrouwde elementen of ingewikkelde inhoudsmodellen. Voor
AI-assistenten, die zulke verinnerlijkte kennis niet hebben, is het probleem erger:
ze hallucineren markup die er plausibel uitziet maar niet klopt.&lt;/p&gt;
&lt;p&gt;Met tei-mcp hoeft de AI niet te gokken. Het kan het antwoord in de specificatie
opzoeken voordat het één punthaak schrijft. Het resultaat is markup die voldoet
aan TEI P5 – of aan de ODD-customisatie van je project.&lt;/p&gt;
&lt;h2 id="aan-de-slag"&gt;Aan de slag&lt;/h2&gt;
&lt;p&gt;Installeer vanaf PyPI:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pip install tei-mcp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Voeg de server daarna toe aan de configuratie van je MCP-client:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;mcpServers&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;tei&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;command&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;uvx&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;args&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;tei-mcp&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;De server downloadt de TEI-specificatie bij de eerste start en werkt met elke
MCP-compatibele client.&lt;/p&gt;
&lt;p&gt;Broncode en volledige documentatie:
&lt;/p&gt;</description></item></channel></rss>