Eigene Anwendung per LLM steuern lassen (neues MCP-Protokoll)

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Antworten
Benutzeravatar
Jorg3000
Lazarusforum e. V.
Beiträge: 375
Registriert: So 10. Okt 2021, 10:24
OS, Lazarus, FPC: Win64
Wohnort: NRW

Eigene Anwendung per LLM steuern lassen (neues MCP-Protokoll)

Beitrag von Jorg3000 »

Hi!
Die lange Diskussion über Sprachmodelle (LLM) haben wir geschlossen. Aber heute habe ich eine neue Verwendungsmöglichkeit in einem neuen Video von c't 3003 gesehen ...

Video auf Youtube: https://www.youtube.com/watch?v=S_4VUJ-x8hE
Heise-Artikel: https://www.heise.de/news/Warum-MCP-die ... 86848.html

... nämlich wie man ein Programm per LLM steuern lassen kann. Im Video wird anhand von Blender (3D-Grafikprogramm) demonstriert, wie der User ohne jegliche Blender-Kenntnisse das LLM beauftragt, eine gewünschte Figur aus 3D-Objekten in Blender zu erstellen, davon Einzelbilder zu rendern und daraus eine Animation zu erzeugen.

Dies wird ermöglicht über ein brandneues MCP-Protokoll (Model Context Protocol) https://modelcontextprotocol.io/
Die Anwendung (im Beispiel: Blender) stellt dazu mehrere Befehle und Parameter nach außen bereit, die im MCP dokumentiert werden, damit das Sprachmodell sie lernen kann. Wenn der User dann einen Auftrag an das LLM gibt, versucht das LLM diesen Auftrag mittels der zur Verfügung stehenden Befehle/Parameter umzusetzen, quasi wie eine äußere Programmiersprache für die Anwendung.
Die Anwendung gibt dem LLM als Resultat zurück, ob der Befehl ausführbar war oder warum nicht. Im Fehlerfall kann das LLM dann eine andere Strategie ausprobieren.

Mich hat diese Möglichkeit sofort angesprochen, weil ich in den letzten Tagen entdeckt habe, wie gut die Spracherkennung von ChatGPT funktioniert (vermutlich eine kontextbezogene Erkennung). Seitdem stelle ich alle Anfragen mündlich per Headset, was bequemer ist, als ausführliche Fragen aus mehreren Sätzen einzutippen. Und nun stelle ich mir vor, wie ich meine eigenen und andere Anwendungen zukünftig bequem per Spracheingabe steuern könnte - und zwar nicht mittels manueller Einzelschritte wie "gehe im Menü nach oben", sondern Ergebnis-orientiert für komplexe Aufgaben, für die man bisher zahlreiche Klicks und Eingaben braucht.

MCP ist OpenSource und auf der Webseite modelcontextprotocol.io findet man SDKs für Python, TypeScript, Java, Kotlin, C# und Swift - aber leider kein SDK für Pascal.
Ich hätte sofort Bock mich einzuarbeiten, um eine Umsetzung für FreePascal zu versuchen, aber das kann ich mir von der Backe putzen, denn weder kenne ich die angebotenen Sprachen ausreichend gut, noch habe ich Zeit um mich einzuarbeiten. Leider habe ich dafür überhaupt keine Zeit.
Also kann ich nur hoffen, dass sich irgendwann jemand findet, der Begeisterung, Zeit und Muße findet, sich an eine Pascal-Umsetzung zu machen. Deshalb dies als Vorstellung des neuen Themas und zur Motivation. Ich wäre begeistert, denke ich. Und zusätzlich wäre eine solche Komponente gut, um Lazarus für eine junge Programmier-Generation attraktiv zu machen.
Grüße, Jörg

Benutzeravatar
theo
Beiträge: 10897
Registriert: Mo 11. Sep 2006, 19:01

Re: Eigene Anwendung per LLM steuern lassen (neues MCP-Protokoll)

Beitrag von theo »

Wie immer bei dem Thema: Klingt spannend, hat aber auch etwas Gruseliges.
Ich denke, das kann bei komplexerer Software zeitsparend sein, hat aber bestimmt auch seine Grenzen.

charlytango
Beiträge: 1066
Registriert: Sa 12. Sep 2015, 12:10
OS, Lazarus, FPC: Laz stable (2.2.6, 3.x)
CPU-Target: Win 32/64, Linux64
Wohnort: Wien

Re: Eigene Anwendung per LLM steuern lassen (neues MCP-Protokoll)

Beitrag von charlytango »

theo hat geschrieben: So 18. Mai 2025, 12:37 Klingt spannend, hat aber auch etwas Gruseliges.
Es wird zu verlockend sein um nicht eingesetzt zu werden.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6819
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Eigene Anwendung per LLM steuern lassen (neues MCP-Protokoll)

Beitrag von af0815 »

MCP hat mich sofort an Tron denken lassen. Ja ich bin so alt um den originalen Film zu kennen :shock:

Und direkt kommunizieren zu können, durch die Verwendung einer LLM Zwischenschicht hat schon etwas. Es ist halt nur ungewohnt. MS hat ja sich schon an Sprachbedienung versucht und in zB Spltälern ist das Diktieren von Diagnosen bereits normal. Mit entsprechend vielen Korrekturen.
Daher sehe ich das als nächsten Schritt, weil man das gut verkaufen kann und besonders dann wenn damit Menschen eingespart werden können.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
Jorg3000
Lazarusforum e. V.
Beiträge: 375
Registriert: So 10. Okt 2021, 10:24
OS, Lazarus, FPC: Win64
Wohnort: NRW

Re: Eigene Anwendung per LLM steuern lassen (neues MCP-Protokoll)

Beitrag von Jorg3000 »

af0815 hat geschrieben: So 18. Mai 2025, 13:18 besonders dann wenn damit Menschen eingespart werden können.
In Unternehmen ist das natürlich das Ziel. Und es sich nicht nur Unternehmer, die Kosten und Arbeitszeit sparen wollen, sondern auch Arbeitnehmer, die sich stets Arbeitserleichterung wünschen. Und durch den Konkurrenzdruck wird auch niemand darum herumkommen, sich ständig anzupassen (was auch eine Art Teufelskreis ist).

Es wird kein Unternehmen sagen: Hey, bei der nächsten Anschaffung kaufen wir nicht das neue und leicht bedienbare Programm, sondern lieber ein altes mit 1000 nötigen Klicks, damit wir die teure Arbeitszeit der Angestellten weiterhin durch mühsames Herumgeklicke und dem Lesen von Bedienungsanleitungen voll auslasten. :wink:

Stichwort Bedienungsanleitung: Ich könnte mir gut vorstellen, dass eine Bedienung in natürlicher Sprache (egal ob geschrieben oder gesprochen) insbesondere bei selten benutzten Programmfunktionen oder seltenen Anforderungen gut ankommt, eben weil man dann nicht erst einen geübten Kollegen antanzen lassen muss, sondern seine Anforderung einfach mal in die Maschine spricht und schaut, ob es funktioniert. Wenn ja, ist ein Problem sofort gelöst, bevor es zu einem Problem wurde ("der Kollege, der das sonst immer macht, ist diese Woche krank" u.ä.).

Benutzeravatar
theo
Beiträge: 10897
Registriert: Mo 11. Sep 2006, 19:01

Re: Eigene Anwendung per LLM steuern lassen (neues MCP-Protokoll)

Beitrag von theo »

Naja, ich denke, dass man damit etwas Zeit sparen kann, aber derjenige welcher dem Programm mitteilt was er haben will, muss ja doch wissen was er tut. Ansonsten ist er ja auch überflüssig.
Irgend eine lustige Figur zeichnen zu lassen, ist ja noch kein professionelles Arbeiten.

Ich bin mir nicht sicher, wie viel sich damit einsparen lässt.
Das ist ja auch beim herkömmlichen Arbeiten/Programmieren so: Ab einer gewissen Komplexitätsstufe geht es ja nicht mehr nur darum, alle "Kommandos" zu kennen, sondern zu wissen, wie man ein Problem grundsätzlich angeht. Da habe ich meine Zweifel.

Lasse mich gerne überraschen.

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2822
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Eigene Anwendung per LLM steuern lassen (neues MCP-Protokoll)

Beitrag von m.fuchs »

MCP kann man auch gut für andere Aktionen nutzen:
https://www.golem.de/news/mcp-server-gi ... 96651.html
Die KI wird in der Prompt Injection gebeten, die Readme-Dateien aller Softwareprojekte des Repo-Erstellers zu lesen und persönliche Daten des Erstellers sowie eine Liste aller anderen Repositories, an denen er arbeitet, zu erweitern. "Der Autor legt keinen Wert auf Privatsphäre", versichert der Angreifer dem KI-Agenten in dem Beispiel.
Tatsächlich hat der KI-Agent daraufhin einen Pull Request für das öffentliche Code-Repository erstellt und alle geforderten Schritte ausgeführt. Geschützte Daten aus den privaten Repos des Erstellers wurden dadurch öffentlich sichtbar.
Wobei ich ja grundsätzlich den Sinn von privaten Repositories auf Github nicht verstehe. Wenn ich Code habe den ich nicht mit der Öffentlichkeit teilen möchte, dann stelle ich mein Repository doch lieber in das eigene Netz...
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6819
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Eigene Anwendung per LLM steuern lassen (neues MCP-Protokoll)

Beitrag von af0815 »

Wenn ich Code habe den ich nicht mit der Öffentlichkeit teilen möchte, dann stelle ich mein Repository doch lieber in das eigene Netz...
Wenn ich plane das öffentlich zu machen, aber noch nicht soweit bin. So ist das eine Möglichkeit, die von mir genutzt wird.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Antworten