Skip to main content
Glama

Fegis-Banner

Basierend auf MCPUnterstützt von QdrantUnterstützt durch Semantik

Fegis

Fegis ist ein Framework für semantische Programmierung und ein Tool-Compiler, der YAML-Spezifikationen – sogenannte Archetypen – in strukturierte, wiederverwendbare Tools für große Sprachmodelle (LLMs) transformiert. Basierend auf dem Model Context Protocol (MCP) kompiliert Fegis jeden Archetyp in schemavalidierte Schnittstellen, wobei Feldnamen und Parameter als semantische Anweisungen für die Inhaltsgenerierung dienen.

Jeder Tool-Aufruf wird in einem hybriden Speichersystem gespeichert, das Vektoreinbettungen mit strukturierten Metadaten kombiniert. Dadurch entsteht ein emergenter Wissensgraph , der dauerhaftes Speichern, semantisches Abrufen und die Erkundung miteinander verbundener Ideen ermöglicht.

Kernkomponenten

1. MCP-Server-Implementierung

Fegis implementiert das Model Context Protocol (MCP). Im Gegensatz zu typischen MCP-Servern, die sich auf die Verbindung von LLMs mit externen Systemen konzentrieren, erstellt Fegis semantisch reichhaltige, intern definierte Tools mithilfe von YAML-Archetypen. Es erweitert das MCP-Framework um Parameter und Frames, die das Verständnis und die Interaktion von Sprachmodellen mit diesen Tools beeinflussen.

2. Semantisches Programmierframework

Fegis führt eine praktische Form der semantischen Programmierung ein, bei der die YAML-Struktur als Gerüst für das Verhalten des Sprachmodells dient. Anstatt detaillierte Eingabeaufforderungen oder Verfahrensanweisungen zu schreiben, definieren Sie die Absicht mithilfe aussagekräftiger Feldnamen, Frames und Parameter.

Dieser Ansatz behandelt Struktur als Code : Feldnamen sind nicht nur Beschriftungen – sie steuern und begrenzen die Generierung des LLM. Parameter übergeben nicht nur Werte – sie formen den Ausdrucksraum des Modells durch das von ihnen bereitgestellte Gerüst.

3. Hybrides Speichersystem

Fegis verfügt über ein hybrides Speichersystem, das Vektor-Embeddings mit strukturierten Metadaten kombiniert und so einen leistungsstarken, durchsuchbaren Verlauf aller Tool-Aufrufe erstellt. Dieser Speicher fungiert als emergenter Wissensgraph und ermöglicht das Entdecken und Durchlaufen vernetzter Informationspfade. Alle Embedding- und Speicherdaten bleiben standardmäßig lokal, sofern nicht ausdrücklich anders konfiguriert.

Related MCP server: Figma MCP Server

Wie LLMs Archetypen verarbeiten

Um zu verstehen, wie das funktioniert, schauen wir uns an, was passiert, wenn ein LLM das Gerüst eines Archetyps verarbeitet:

archetype_context: | You have tools for scientific education that allow you to clearly explain complex concepts with accuracy and accessibility. Focus on making information understandable while maintaining technical precision. parameters: Length: description: "Level of detail and wordiness in explanations" example_values: [terse, brief, moderate, comprehensive, exhaustive] Tone: description: "Communication style that shapes how scientific content is presented" example_values: [formal, informative, conversational, enthusiastic, socratic] tools: Summary: description: "Create a concise summary of important information." parameters: Length: brief Tone: informative frames: key_points: type: List required: true conclusion:

Jedes Element in dieser YAML-Definition dient einem bestimmten Zweck:

  1. Der Archetypkontext – Definiert den konzeptionellen Raum und Zweck dieser Werkzeuge. Dieser Text kann zur Dokumentation verwendet oder bei Bedarf eingefügt werden, um die Verwendung dieser Werkzeuge zu dokumentieren.

  2. Der Parameterabschnitt – Definiert semantische Dimensionen, die die Ausgabe beeinflussen:

    • Der Parametername („Länge“) gibt an, welcher Aspekt konfiguriert wird

    • Die Beschreibung liefert eine klare Definition des Zwecks des Parameters

    • Beispielwerte legen ein Spektrum möglicher Werte fest ([knapp…erschöpfend])

    • Bei der Verwendung in einem Tool lösen bestimmte Werte („Brief“) zugehörige Sprachmuster aus

  3. Der Toolname „Zusammenfassung“ – das Modell erkennt dies als Tool und aktiviert zugehörige Muster zur Verdichtung von Informationen.

  4. Die Toolbeschreibung – „Erstellen Sie eine prägnante Zusammenfassung …“ – legt das spezifische Ziel und den Zweck fest.

  5. Die Rahmenfelder definieren, welcher Inhalt generiert werden soll:

    • Der Feldname „key_points“ leitet das Modell zur Identifizierung wichtiger Elemente

    • Die Typbeschränkung „Liste“ formatiert die Ausgabe als diskrete Elemente

    • Die Anforderung „erforderlich: wahr“ stellt sicher, dass dieses Feld immer ausgefüllt wird

    • Feldname „Schlussfolgerung“ veranlasst die Erstellung einer zusammenfassenden Aussage

Diese Architektur erzeugt einen strukturierten Ablauf, bei dem jedes Element einem bestimmten Zweck dient:

┌─────────────────────────────────────────────────┐ │ YAML ↔ LLM Processing │ │ │ │ [Optional] archetype_context → Sets context │ │ parameters → Define semantic dimensions │ │ tool name → Identifies functional category │ │ description → States specific purpose │ │ frames → Structure and guide content creation │ └─────────────────────────────────────────────────┘

Beispielinteraktion: Kognitive Tools

Um Fegis in Aktion zu sehen, sehen Sie sich dieses Beispiel einer Interaktion mit kognitiven Tools an, das zeigt, wie Denk- und Reflexionstools mit dem Gedächtnissystem zusammenarbeiten.

Was können Sie mit Fegis bauen?

Fegis wurde verwendet, um Folgendes zu erstellen:

  • Denkrahmen, die LLMs durch komplexe Denkprozesse führen

  • Web-Explorationsschnittstellen mit Tools zum Kuratieren und Verknüpfen von Inhalten

  • Optimierungssysteme inspiriert von biologischen Netzwerken

  • Werkzeuge zum symbolischen Denken mit Emoji als visuelle Sprache

Schnellstart

# Install uv # Windows winget install --id=astral-sh.uv -e # macOS/Linux curl -LsSf https://astral.sh/uv/install.sh | sh # Clone the repository git clone https://github.com/p-funk/Fegis.git # Start Qdrant docker run -d --name qdrant -p 6333:6333 -p 6334:6334 qdrant/qdrant:latest

Claude Desktop konfigurieren

Aktualisieren Sie claude_desktop_config.json :

"mcpServers": { "mcp-fegis-server": { "command": "uv", "args": [ "--directory", "<FEGIS_PATH>", "run", "fegis" ], "env": { "QDRANT_URL": "http://localhost:6333", "QDRANT_API_KEY": "", "COLLECTION_NAME": "trace_archive", "FAST_EMBED_MODEL": "nomic-ai/nomic-embed-text-v1.5", "CONFIG_PATH": "<FEGIS_PATH>/archetypes/example.yaml" } } }

Mehr erfahren

  • Beispiele – Beispielarchetypen für den Einstieg

weitere Dokumente folgen in Kürze ...

Support-Entwicklung

Kauf mir einen Kaffee
💖 Sponsor auf GitHub

Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert – weitere Einzelheiten finden Sie in der Datei LICENSE.

Die MIT-Lizenz ist freizügig und einfach: Machen Sie mit dem Code, was Sie wollen, solange Sie die Quelle korrekt angeben und die Autoren nicht haftbar machen.

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/p-funk/FEGIS'

If you have feedback or need assistance with the MCP directory API, please join our Discord server