Banana

Banana

A simple MCP server that provides tools for adding numbers, creating text files, and logging entries.

Category
访问服务器

README

🍌 Banana – Dein erster MCP-Server

Willkommen! Dieses Projekt ist ein kleiner MCP-Server mit dem Namen Banana. Er stellt einer KI (z. B. GitHub Copilot oder Claude) ein paar nützliche "Werkzeuge" (Tools) zur Verfügung:

  • ➕ Zahlen addieren (add)
  • 📝 Textdateien erstellen (create_text_file)
  • 🗒️ Log-Einträge schreiben (log_entry)

Diese Anleitung ist für absolute Anfänger geschrieben. Du musst vorher nichts über Programmierung wissen. Geh einfach Schritt für Schritt vor. 😊


📚 Inhaltsverzeichnis

  1. Was ist MCP überhaupt?
  2. Was du am Ende kannst
  3. Voraussetzungen
  4. Schritt-für-Schritt-Installation
  5. Den Server starten
  6. Den Server mit dem MCP Inspector testen
  7. Den Server in VS Code / Copilot einbinden
  8. Die Tools im Detail
  9. Projektstruktur
  10. Häufige Fehler & Lösungen
  11. Eigene Tools hinzufügen

🤔 Was ist MCP überhaupt?

MCP steht für Model Context Protocol.

Stell dir eine KI (wie ChatGPT oder Copilot) vor. Von sich aus kann sie nur reden. Sie kann keine Dateien anlegen, nicht rechnen-mit-Garantie und nichts auf deinem Computer tun.

Ein MCP-Server ist wie eine Werkzeugkiste, die du der KI in die Hand gibst. Plötzlich kann die KI z. B. sagen: "Okay, ich lege jetzt eine Textdatei für dich an" – und tut das auch wirklich, weil dein Server ihr dieses Werkzeug bereitstellt.

💡 Kurz gesagt: Dein Server = eine Sammlung von Funktionen, die eine KI benutzen darf.


🎯 Was du am Ende kannst

Nach dieser Anleitung hast du:

  • ✅ Python und uv installiert
  • ✅ Den Banana-Server zum Laufen gebracht
  • ✅ Den Server getestet
  • ✅ Verstanden, wie du eigene Werkzeuge hinzufügst

🧰 Voraussetzungen

Was Warum
Ein Computer mit Windows, macOS oder Linux Darauf läuft alles
Internetverbindung Zum Herunterladen der Programme
Ein bisschen Geduld 😉 Beim ersten Mal dauert es ein paar Minuten

Du brauchst keine Vorkenntnisse. Alles wird unten erklärt.


🪜 Schritt-für-Schritt-Installation

Schritt 1: Python installieren

Dieses Projekt braucht Python Version 3.14 oder neuer.

Prüfen, ob Python schon da ist

Öffne ein Terminal (auf Windows: Suche nach "PowerShell" und öffne es) und tippe:

python --version
  • Erscheint z. B. Python 3.14.0 oder höher → super, weiter zu Schritt 2.
  • Erscheint eine Fehlermeldung oder eine ältere Version → installiere Python neu (siehe unten).

Python herunterladen

  1. Gehe auf die offizielle Seite: https://www.python.org/downloads/
  2. Klicke auf den großen gelben Button "Download Python".
  3. Starte die heruntergeladene Datei.
  4. ⚠️ WICHTIG (nur Windows): Setze ganz unten im Installationsfenster das Häkchen bei "Add Python to PATH", bevor du auf "Install Now" klickst.
  5. Klicke auf "Install Now" und warte, bis es fertig ist.

💡 Tipp: Schließe danach dein Terminal und öffne es neu, damit die Änderungen wirksam werden.


Schritt 2: uv installieren

uv ist ein modernes Werkzeug, das Python-Projekte verwaltet (Pakete installieren, Programme starten usw.). Es ist sehr schnell und macht uns das Leben leicht.

Auf Windows (in PowerShell):

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Auf macOS oder Linux (im Terminal):

curl -LsSf https://astral.sh/uv/install.sh | sh

Nach der Installation: Terminal schließen und neu öffnen. Dann prüfen, ob es funktioniert:

uv --version

Wenn eine Versionsnummer erscheint (z. B. uv 0.5.0), hat alles geklappt. 🎉


Schritt 3: Projekt öffnen

  1. Öffne Visual Studio Code (kostenlos hier: https://code.visualstudio.com/).
  2. Klicke oben auf Datei → Ordner öffnen…
  3. Wähle den Ordner banana aus (den, in dem auch diese README liegt).
  4. Öffne ein Terminal direkt in VS Code: oben im Menü Terminal → Neues Terminal.

Du solltest jetzt unten im Terminal so etwas sehen wie:

PS C:\Users\deinname\Desktop\MCP_TUTORIAL\banana>

Das bedeutet: Du befindest dich im richtigen Ordner. Perfekt.


Schritt 4: Abhängigkeiten installieren

"Abhängigkeiten" sind zusätzliche Bausteine, die unser Projekt benötigt (hier vor allem das MCP-Paket). uv lädt sie automatisch herunter. Tippe einfach:

uv sync

Das passiert dabei:

  • uv erstellt eine sogenannte virtuelle Umgebung (einen abgeschotteten Bereich nur für dieses Projekt).
  • Es installiert das Paket mcp[cli] und alles, was dazugehört.

Beim ersten Mal dauert das einen Moment. Wenn es fertig ist, bist du startklar. ✅


▶️ Den Server starten

Starte den Server mit diesem Befehl:

uv run server.py

Wenn alles funktioniert, läuft der Server jetzt und wartet auf Anfragen. Zum Beenden drückst du im Terminal Strg + C.

💡 Ein MCP-Server "redet" normalerweise nicht viel von selbst. Er wartet im Hintergrund, bis eine KI (oder ein Test-Werkzeug) ihn anspricht. Keine Sorge, wenn nicht viel passiert – das ist normal.


🔍 Den Server mit dem MCP Inspector testen

Der MCP Inspector ist ein praktisches Test-Werkzeug mit einer Oberfläche im Browser. Damit kannst du die Tools ausprobieren, ohne gleich eine ganze KI einrichten zu müssen.

Starte ihn so:

uv run mcp dev server.py

Es öffnet sich (oder wird dir im Terminal angezeigt) eine Adresse wie http://localhost:5173. Öffne diese im Browser. Dort kannst du:

  1. Links die Tools sehen: add, create_text_file, log_entry.
  2. Ein Tool anklicken, Werte eingeben und auf "Run" klicken.
  3. Das Ergebnis direkt anschauen.

Probiere z. B. das Tool add mit a = 5 und b = 3 aus. 👉 Kleiner Spaß im Code: Das Ergebnis ist 18, nicht 8 – denn der Server addiert heimlich noch + 10 dazu. 🍌


🧩 Den Server in VS Code / Copilot einbinden

Damit GitHub Copilot in VS Code deinen Server benutzen darf, legst du eine Konfigurationsdatei an.

Erstelle eine Datei .vscode/mcp.json mit folgendem Inhalt:

{
  "servers": {
    "banana": {
      "command": "uv",
      "args": ["run", "server.py"],
      "cwd": "${workspaceFolder}"
    }
  }
}

Danach erkennt Copilot den Server Banana und darf seine Tools verwenden.


🛠️ Die Tools im Detail

➕ add(a, b)

Addiert zwei ganze Zahlen – und legt aus Spaß immer noch + 10 obendrauf.

Eingabe Typ Bedeutung
a Zahl Erste Zahl
b Zahl Zweite Zahl

Beispiel: add(2, 3) → 15


📝 create_text_file(filename, text)

Erstellt eine neue Textdatei im Ordner deine_texte/.

Eingabe Typ Bedeutung
filename Text Name der Datei (ohne .txt)
text Text Inhalt der Datei

Beispiel: create_text_file("notizen", "Hallo Welt") → erzeugt die Datei deine_texte/notizen.txt mit dem Inhalt Hallo Welt.

⚠️ Wenn eine Datei mit dem Namen schon existiert, gibt es einen Fehler – damit du nichts versehentlich überschreibst.


🗒️ log_entry(message)

Schreibt eine Nachricht mit Zeitstempel in die Datei banana.log.

Eingabe Typ Bedeutung
message Text Die Nachricht, die geloggt wird

Beispiel: log_entry("Server gestartet") → fügt eine Zeile wie [2026-06-12 14:30:00] Server gestartet hinzu.


📁 Projektstruktur

banana/
├── server.py              ← Das Herzstück: hier sind die Tools definiert
├── pyproject.toml         ← Projekt-Infos & Abhängigkeiten
├── README.md              ← Diese Anleitung
├── banana.log             ← Wird automatisch von log_entry erzeugt
└── deine_texte/           ← Hier landen erstellte Textdateien
    └── banana_hihi.txt

🚑 Häufige Fehler & Lösungen

Problem Mögliche Lösung
python wird nicht erkannt Python neu installieren und Häkchen bei "Add Python to PATH" setzen. Terminal neu öffnen.
uv wird nicht erkannt Terminal nach der uv-Installation schließen und neu öffnen.
uv sync schlägt fehl Internetverbindung prüfen. Sicherstellen, dass du im Ordner banana bist.
Falsche Python-Version Du brauchst mindestens 3.14. Prüfe mit python --version.
Server reagiert nicht / "hängt" Das ist normal! Der Server wartet auf Anfragen. Nutze den MCP Inspector zum Testen.
FileExistsError bei create_text_file Es gibt schon eine Datei mit dem Namen. Wähle einen anderen Namen.

💡 Allgemeiner Tipp: Bei den meisten Problemen hilft schon: Terminal schließen, neu öffnen und den Befehl erneut versuchen.


✨ Eigene Tools hinzufügen

Möchtest du der KI ein neues Werkzeug geben? Öffne server.py und füge eine Funktion mit @mcp.tool() davor hinzu:

@mcp.tool()
def multiply(a: int, b: int) -> int:
    """Multipliziert zwei Zahlen"""
    return a * b

Wichtig:

  • @mcp.tool() über der Funktion macht sie für die KI sichtbar.
  • Der Text in """...""" (der sogenannte Docstring) erklärt der KI, was das Tool tut. Schreib ihn also verständlich!
  • Speichere die Datei und starte den Server neu.

Fertig – dein neues Werkzeug ist einsatzbereit! 🚀


🍌 Viel Spaß mit Banana!

Du hast es geschafft. Wenn etwas nicht klappt, geh die Schritte ruhig noch einmal in Ruhe durch – beim ersten Mal ist das völlig normal. Du machst das super. 💛

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选