Skip to main content
Glama
AniketDonode

Leave Manager

by AniketDonode

Leave Manager MCP Server

Dieses Projekt ist ein Python-MCP-Server für die Verwaltung von Mitarbeitern, Urlaubssalden und Urlaubsanträgen mit SQLite.

1. Projekt erstellen

Öffnen Sie PowerShell und erstellen Sie ein Projektverzeichnis:

mkdir D:\Coding\mcpserver\LeaveManager
cd D:\Coding\mcpserver\LeaveManager

Erstellen Sie ein uv-Python-Projekt in leave_manager_server:

uv init leave_manager_server
cd leave_manager_server
uv add "mcp[cli]>=2.1.1"

Das Projekt erfordert Python 3.14 oder neuer. uv erstellt pyproject.toml, uv.lock und die virtuelle Umgebung, die zum Ausführen des Servers verwendet wird.

Related MCP server: leave_manager

2. Server implementieren

Erstellen Sie server.py und fügen Sie die folgenden Teile hinzu:

  1. Importieren Sie MCPServer aus mcp.server.mcpserver.

  2. Erstellen Sie den Server mit MCPServer("Leave Manager").

  3. Definieren Sie die Datenmodelle Employee und LeaveRequest.

  4. Erstellen Sie eine SQLite-Datenbank neben server.py mit einem absoluten Pfad.

  5. Initialisieren Sie die Tabellen employees und leave_requests und fügen Sie beim Start Beispieldaten ein.

  6. Fügen Sie Ressourcen für Mitarbeiterverzeichnisse und Urlaubsanträge hinzu.

  7. Fügen Sie Werkzeuge hinzu, um Urlaub einzureichen und zu genehmigen, Salden zu prüfen, ausstehende Genehmigungen aufzulisten, Datenbankstatistiken abzurufen und Mitarbeiter hinzuzufügen.

  8. Starten Sie den Server aus dem __main__-Block:

if __name__ == "__main__":
		init_database()
		mcp.run()

Das Projekt verwendet MCP 2.x. Der Import der alten MCP 1.x-Version funktioniert mit dieser Abhängigkeit nicht:

from mcp.server.fastmcp import FastMCP

Die funktionierende Form für MCP 2.x ist:

from mcp.server.mcpserver import MCPServer

mcp = MCPServer("Leave Manager")

3. Server direkt ausführen

Aus dem Projektverzeichnis:

cd D:\Coding\mcpserver\LeaveManager\leave_manager_server
uv run server.py

Der Server verwendet Standardeingabe/-ausgabe für die MCP-Kommunikation, sodass er weiterläuft, während ein MCP-Client verbunden ist. Drücken Sie Ctrl+C, um ihn zu beenden.

Überprüfen Sie, ob das Modul korrekt importiert wird, ohne den langlaufenden Server zu starten:

uv run python -c "import server; print('Server import valid')"

4. Mit MCP Inspector testen

Der unterstützte Entwicklungsbefehl lautet:

cd D:\Coding\mcpserver\LeaveManager\leave_manager_server
uv run mcp dev server.py

Der MCP Inspector verwendet Node.js. Installieren Sie Node.js 22.19.0 oder neuer, bevor Sie den neuesten Inspector verwenden. Überprüfen Sie die Versionen mit:

node --version
npm --version

Führen Sie npm i nicht in diesem Python-Projektverzeichnis aus, da es keine package.json enthält. Wenn der Inspector eine fehlende native Bindung meldet, leeren Sie den temporären npx-Cache und versuchen Sie es erneut:

Remove-Item "$env:LOCALAPPDATA\npm-cache\_npx" -Recurse -Force
uv run mcp dev server.py

5. Claude Desktop verbinden

Claude Desktop liest seine Konfiguration aus:

%APPDATA%\Claude\claude_desktop_config.json

Fügen Sie diesen Servereintrag hinzu. Ersetzen Sie den Pfad, falls das Projekt an einem anderen Ort gespeichert ist:

{
	"mcpServers": {
		"leave-manager": {
			"command": "uv",
			"args": [
				"run",
				"--directory",
				"D:\\Coding\\mcpserver\\LeaveManager\\leave_manager_server",
				"server.py"
			]
		}
	}
}

Starten Sie Claude Desktop neu, nachdem Sie die Konfiguration gespeichert haben. Der Server erstellt beim ersten Start leave_manager.db neben server.py.

Verfügbare MCP-Funktionen

Ressourcen:

  • employee://{employee_id}

  • leave-requests://all

  • leave-requests://employee/{employee_id}

  • leave-requests://status/{status}

Werkzeuge:

  • submit_leave_request

  • approve_leave_request

  • check_leave_balance

  • get_pending_approvals

  • get_database_stats

  • add_employee

  • This will add my Config file automatic uv run mcp install server.py --name "leave_manager"

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

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/AniketDonode/LeaveManager'

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