GitHub Knowledge Base MCP

Servidor MCP para conectarse y usar cualquier repositorio público de GitHub como base de conocimiento (documentos markdown/notebook)

Documentación

GitHub Knowledge Base MCP

Un servidor MCP simple construido con FastMCP que te permite conectarte a cualquier repositorio público de GitHub como base de conocimiento. Tiene algunas herramientas sencillas para encontrar y leer documentos Markdown y cuadernos de Jupyter.

Entrada de blog: https://stefanbschneider.github.io/blog/posts/fastmcp/

Conjunto de herramientas disponible:

  • knowledge_base_info
  • list_documents
  • read_document
  • list_documents_with_metadata
  • list_latest_documents
  • search_documents

knowledge_base_info incluye:

  • document_file_count: total de archivos compatibles
  • document_type_counts: recuentos por extensión (por ejemplo, .md, .markdown, .ipynb)

list_documents_with_metadata es útil para recuperar las últimas entradas de blog configurando sort_by="last_modified_utc" y descending=true.

Ejemplo: recuperar las últimas entradas de blog

Solicitud:

{
	"tool": "list_latest_documents",
	"arguments": {
		"limit": 5,
		"extension_filter": ".md"
	}
}

Forma de la respuesta:

[
	{
		"path": "blog/2026-04-10-launch-post.md",
		"size_bytes": 3210,
		"last_modified_utc": "2026-04-10T14:11:52Z"
	}
]

Tipos de archivo compatibles:

  • .md
  • .markdown
  • .ipynb

Configuración

Instalación

uv sync frozen

Configuración

Establece KB_GITHUB_REPO para usar un repositorio público de GitHub como base de conocimiento.

  • formatos compatibles:
    • owner/repo
    • https://github.com/owner/repo
  • ref/rama/etiqueta opcional: KB_GITHUB_BRANCH
  • si no se establece ningún ref, se utiliza la rama predeterminada del repositorio

Ejemplo:

export KB_GITHUB_REPO="microsoft/vscode"
export KB_GITHUB_BRANCH="main" # optional
python gh_kb_mcp_server.py

Detalles del manejo de cuadernos:

  • solo se indexan/leen las celdas de markdown para .ipynb
  • las salidas de los cuadernos se ignoran
  • los cuadernos no válidos devuelven errores de validación claros para lecturas directas

Todas las herramientas se ejecutan únicamente contra el repositorio de GitHub configurado.

Ejecutar el servidor

fastmcp run server.py

Configurar el MCP en VSCode

A través de la paleta de comandos, llama a "MCP: Add server..." o agrega/crea mcp.json añadiendo el siguiente bloque a tu "servers":

"GitHub Knowledge Base": {
	"type": "stdio",
	"command": "${workspaceFolder}/.venv/bin/fastmcp",
	"args": [
		"run",
		"server.py",
	],
	"env": {
		"KB_GITHUB_REPO": <public-github-repo> // eg: "stefanbschneider/blog" or "microsoft/vscode"
	}
}