Skip to main content
Glama
ayush-s-tomar

Portfolio MCP Server

Portfolio MCP Server

Ein MCP-Server, der mein KI-Projektportfolio in etwas verwandelt, das man abfragen kann – nicht nur lesen.

Richte einen beliebigen MCP-Client (Claude Desktop, Cursor, eigene Agents) darauf und frage „Was hat Ayush mit LangGraph gebaut?" oder „Was ist sein Flaggschiff-Projekt?" — er antwortet aus strukturierten Live-Daten, nicht aus einem statischen PDF.

License: MIT Python 3.10+ PyPI MCP CI Code style: ruff PRs Welcome

TL;DR

  • 📦 Veröffentlicht, nicht nur gebaut — live auf PyPI und im offiziellen MCP-Registry; pip install portfolio-mcp-server bringt es in unter einer Minute in jedem MCP-Client zum Laufen, ohne Repo-Klon.

  • 🔧 5 echte Tools — Liste, Detailabfrage, Stack-Suche, Flaggschiff-Auswahl und Lebenslauf-Zusammenfassung, alle basierend auf strukturierten Daten statt eines statischen README-Scrolls.

  • Bei jedem Push CI-getestet — Lint, Typprüfung und ein echter stdio-Smoke-Test, der alle 5 Tools aufruft und das JSON-Schema jeder Antwort validiert.


Inhaltsverzeichnis

Related MCP server: toad-mcp-server

Warum es das gibt

Die meisten KI-Entwickler-Portfolios sind eine Liste von Links. Das hier ist ein funktionierender MCP-Server — dasselbe Protokoll, das agentische Produkte zur Anbindung von Tools verwenden — rund um mein eigenes Portfolio gebaut. Es ist sowohl eine echte Implementierung der Spezifikation als auch eine Antwort auf „Zeig mir, dass du wirklich mit MCP gebaut hast", nicht nur darüber geredet.

Demo

MCP Inspector — Tool-Erkennung

Live-Chat-Demo

MCP Inspector Demo

MCP Chat Demo

https://github.com/user-attachments/assets/4c1b844a-087f-48a6-b156-bdef27282acc

Setup → Tool-Aufrufe → Live-Antworten, Ende zu Ende.

Bereitgestellte Tools

Tool

Beschreibung

list_projects

Kurzzusammenfassung aller 9 Projekte

get_project_details(project_name)

Vollständige Details für ein Projekt

search_projects_by_stack(technology)

Findet Projekte, die eine bestimmte Technologie verwenden

get_flagship_project

Das beste Projekt für den Einstieg

get_resume_summary

Hintergrund, Zielrolle und Kern-Stack

Schnellstart

Option A — von PyPI installieren (am schnellsten):

pip install portfolio-mcp-server

Option B — Klonen und aus dem Quellcode ausführen (für lokale Änderungen/Tests):

git clone https://github.com/ayush-s-tomar/portfolio-mcp-server.git
cd portfolio-mcp-server

python -m venv venv
source venv/bin/activate        # Windows: venv\Scripts\activate

pip install -r requirements.txt

Teste es interaktiv mit dem MCP Inspector, bevor du es in einen Client einbindest:

mcp dev server.py

Dies öffnet eine Browser-Oberfläche, in der du jedes Tool manuell aufrufen und die rohen Request/Response-Payloads inspizieren kannst.

Mit Claude Desktop verbinden

Öffne die Konfigurationsdatei von Claude Desktop:

Betriebssystem

Pfad

macOS

~/Library/Application Support/Claude/claude_desktop_config.json

Windows

%APPDATA%\Claude\claude_desktop_config.json

Wenn die Datei bereits einen mcpServers-Schlüssel mit anderen Servern enthält, füge den Eintrag "portfolio" innerhalb des vorhandenen Objekts hinzu, anstatt die Datei zu überschreiben.

Wenn du über PyPI installiert hast (Option A oben):

{
  "mcpServers": {
    "portfolio": {
      "command": "portfolio-mcp-server"
    }
  }
}

Wenn du aus einem geklonten Quellcode-Checkout ausführst (Option B oben): verwende den absoluten Pfad zu server.py auf deinem Rechner:

{
  "mcpServers": {
    "portfolio": {
      "command": "python",
      "args": ["/absolute/path/to/portfolio-mcp-server/server.py"]
    }
  }
}

Starte Claude Desktop neu und frage dann zum Beispiel:

„Welche Projekte hat Ayush mit FastAPI gebaut?"

Claude wird search_projects_by_stack aufrufen und aus den Live-Daten antworten.

Stack

  • Python 3.10+

  • MCP Python SDK (FastMCP)

  • stdio-Transport

  • Für PyPI verpackt und im offiziellen MCP-Server-Registry registriert (io.github.ayush-s-tomar/portfolio-mcp-server)

Tests & CI

Jeder Push und Pull Request durchläuft GitHub Actions:

  • Lintruff check .

  • Typprüfungmypy server.py

  • Smoke-Test — startet den Server und ruft jedes der 5 Tools über stdio auf, um zu bestätigen, dass sie gültiges, schema-konformes JSON zurückgeben

Siehe .github/workflows/ci.yml. Führe dieselben Prüfungen lokal aus, bevor du einen PR eröffnest:

pip install -r requirements-dev.txt
ruff check .
mypy server.py
pytest

Projektstruktur

portfolio-mcp-server/ ├── server.py # FastMCP server + tool definitions ├── data/ │ └── projects.json # Project data the tools read from ├── tests/ │ └── test_tools.py # Smoke tests for each tool ├── requirements.txt ├── requirements-dev.txt ├── pyproject.toml # PyPI packaging config ├── server.json # MCP registry manifest └── .github/workflows/ci.yml

Roadmap

  • Als installierbares Paket auf PyPI veröffentlichen

  • Im offiziellen MCP-Server-Registry veröffentlichen

  • search_projects_by_stack — Unterstützung für die gleichzeitige Suche nach mehreren Technologien

  • Eine HTTP/SSE-Transportoption neben stdio für entfernte Clients hinzufügen

  • Lebenslauf-/Projektdaten mit einem leichten Aktualisierungs-Endpunkt statt statischem JSON cachen

Lizenz

Veröffentlicht unter der MIT-Lizenz.

Autor

Ayush TomarGitHub

Wenn das als Referenz für den Bau deines eigenen MCP-Servers nützlich war, ist

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers