Token导航 LogoToken导航

MCP Server · 搜索检索

Azure Rag Foundry Workshop

基于Azure AI Foundry的PDF文档问答系统,支持语义搜索、工具调用和异步处理。

stdio官方级别未说明来源级核验工具 4
检索增强生成搜索PythonVS CodeAI代理

快速开始

作者 / 组织
alemcuevas
提供方
alemcuevas

工具数量

4

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Azure Rag Foundry Workshop 属于搜索检索类 MCP Server,公开资料标注 4 个工具,通过stdio 本地进程接入,适配 VS Code,有可以直接复制的安装命令;接入前要先准备 API Key。

分类

搜索检索

传输方式

stdio

认证方式

API Key

部署方式

公开资料未说明

安装与配置

安装命令

pip install -r requirements.txt

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 对应的运行时,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 4 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

🤖 RAG Chat con Azure AI Foundry

Sistema de chat con Retrieval-Augmented Generation (RAG) usando Azure AI Foundry, Azure AI Search y Tool Calling.

📋 Descripción

Este proyecto implementa un sistema completo de Q&A sobre documentos PDF que incluye:

  • Indexación de PDFs con extracción de texto e imágenes
  • Búsqueda semántica con Azure AI Search (vectorial + híbrida)
  • Tool Calling para que el modelo use herramientas automáticamente
  • Procesamiento asíncrono con Azure Service Bus y Functions
  • MCP Server para integración con VS Code Copilot

🏗️ Arquitectura

┌─────────────────┐     ┌──────────────────┐     ┌─────────────────┐
│   Frontend      │────▶│   Web App        │────▶│  Azure OpenAI   │
│   (HTML/JS)     │     │   (FastAPI)      │     │  (GPT-4.1)      │
└─────────────────┘     └────────┬─────────┘     └─────────────────┘
                                 │
                    ┌────────────┼────────────┐
                    ▼            ▼            ▼
            ┌───────────┐ ┌───────────┐ ┌───────────────┐
            │ AI Search │ │  Service  │ │   Computer    │
            │ (Vectors) │ │   Bus     │ │    Vision     │
            └───────────┘ └─────┬─────┘ └───────────────┘
                                │
                                ▼
                        ┌───────────────┐
                        │ Azure Function│
                        │ (Queue Worker)│
                        └───────────────┘

📁 Estructura del Proyecto

proyecto-rag-azure/
├── webapp/                    # Aplicación web principal
│   ├── backend/
│   │   ├── app.py            # API FastAPI con RAG y Tool Calling
│   │   └── queue_processor.py # Procesador de cola (local)
│   ├── frontend/
│   │   ├── index.html        # Interfaz del chat
│   │   ├── app.js            # Lógica del frontend
│   │   └── styles.css        # Estilos
│   ├── requirements.txt      # Dependencias Python
│   ├── run.py                # Script para ejecutar localmente
│   └── startup.sh            # Script de inicio en Azure
│
├── functions/                 # Azure Function para procesar cola
│   ├── function_app.py       # Trigger de Service Bus
│   ├── host.json             # Configuración de Functions
│   └── requirements.txt      # Dependencias
│
├── mcp/                       # MCP Server para VS Code
│   ├── mcp_server.py         # Versión completa (offline)
│   └── mcp_server_lite.py    # Versión lite (usa API)
│
├── scripts/                   # Scripts auxiliares
│   ├── crear_indice_rag.py   # Crear índice en AI Search
│   ├── indexar_documentos.py # Indexar PDFs manualmente
│   ├── busqueda_rag.py       # Probar búsquedas
│   └── verificar_ambiente.py # Verificar configuración
│
├── .vscode/
│   └── mcp.json              # Configuración MCP para Copilot
│
├── .env                       # Variables de entorno
└── README.md                  # Este archivo

🚀 Requisitos Previos

Azure Resources

  • Azure AI Foundry con modelos desplegados:

- gpt-4.1 (o similar) para chat - text-embedding-3-small para embeddings

  • Azure AI Search (Basic o superior)
  • Azure App Service (Linux, Python 3.11)
  • Azure Service Bus (opcional, para cola)
  • Azure Storage (opcional, para blobs)
  • Azure Functions (opcional, para procesamiento async)

Local

  • Python 3.11+
  • Azure CLI (az login)
  • VS Code con GitHub Copilot (opcional, para MCP)

⚙️ Configuración

1. Variables de Entorno

Crea un archivo .env en la raíz:

# Azure OpenAI / AI Foundry
AZURE_OPENAI_ENDPOINT=https://tu-recurso.cognitiveservices.azure.com/
AZURE_OPENAI_API_VERSION=2024-08-01-preview
AZURE_CHAT_MODEL=gpt-4.1
AZURE_EMBEDDING_MODEL=text-embedding-3-small

# Azure AI Search
AZURE_SEARCH_ENDPOINT=https://tu-search.search.windows.net
AZURE_SEARCH_KEY=tu-api-key
AZURE_SEARCH_INDEX=documentos-pdf-rag

# Azure Computer Vision (para imágenes en PDFs)
AZURE_VISION_ENDPOINT=https://tu-recurso.cognitiveservices.azure.com/

# Azure Service Bus (opcional)
AZURE_SERVICEBUS_NAMESPACE=tu-namespace.servicebus.windows.net
AZURE_SERVICEBUS_QUEUE=pdf-processing-queue

# Azure Storage (opcional)
AZURE_STORAGE_ACCOUNT=tu-storage
AZURE_STORAGE_CONTAINER=pdf-uploads

# Web App URL (para MCP lite)
AZURE_WEBAPP_URL=https://tu-webapp.azurewebsites.net

2. Instalar Dependencias

cd webapp
pip install -r requirements.txt

🖥️ Ejecución Local

Opción 1: Script de inicio

cd webapp
python run.py

Opción 2: Uvicorn directo

cd webapp/backend
uvicorn app:app --reload --port 8000

Abre http://localhost:8000 en tu navegador.

☁️ Despliegue en Azure

Web App

cd webapp
az webapp up --name tu-webapp --resource-group tu-rg --runtime "PYTHON:3.11"

Configurar Startup Command

az webapp config set --name tu-webapp --resource-group tu-rg \
  --startup-file "cd backend && gunicorn --bind=0.0.0.0:8000 --workers=2 --timeout=120 app:app -k uvicorn.workers.UvicornWorker"

Azure Function (para cola)

cd functions
func azure functionapp publish tu-function-app

🔧 Uso del MCP con VS Code

1. Configurar .vscode/mcp.json

{
  "servers": {
    "workshop-rag": {
      "type": "stdio",
      "command": "python",
      "args": ["${workspaceFolder}/mcp/mcp_server_lite.py"],
      "env": {
        "PYTHONUNBUFFERED": "1",
        "MCP_API_BASE": "https://tu-webapp.azurewebsites.net"
      }
    }
  }
}

2. Recargar VS Code

Ctrl+Shift+P → "Developer: Reload Window"

3. Usar en Copilot Chat

Cambia a modo Agent y las herramientas estarán disponibles:

  • buscar_documentos - Buscar en PDFs indexados
  • chat - Hacer preguntas con RAG
  • listar_documentos - Ver documentos disponibles
  • estado_sistema - Verificar conexión

📖 Endpoints de la API

MétodoEndpointDescripción
GET/api/healthHealth check
GET/api/documentosListar documentos indexados
POST/api/uploadSubir PDF para indexar
POST/api/chatEnviar mensaje al chat
GET/api/jobsVer estado de procesamiento
GET/api/jobs/{id}Estado de un job específico

Ejemplo: Chat con RAG

curl -X POST https://tu-webapp.azurewebsites.net/api/chat \
  -H "Content-Type: application/json" \
  -d '{"mensaje": "¿Qué dice el documento sobre sostenibilidad?"}'

🛠️ Herramientas Disponibles (Tool Calling)

El modelo tiene acceso a estas herramientas:

HerramientaDescripción
buscar_documentosBúsqueda semántica en el índice
listar_documentosLista todos los PDFs indexados
obtener_fecha_horaFecha y hora actual
calcularCalculadora matemática

📊 Recursos de Azure Creados

RecursoNombrePropósito
AI ServicesFoundryWSTOpenAI + Computer Vision
AI Searchsearch-foundry-workshopÍndice vectorial
Web Appchat-foundry-workshopFrontend + API
Function Appfunc-foundry-workshopProcesa cola PDFs
Service Bussb-foundry-workshopCola de mensajes
StoragestfoundryworkshopAlmacenamiento blobs

🔍 Troubleshooting

Error 429 (Rate Limit)

Aumenta la capacidad del modelo de embeddings:

az cognitiveservices account deployment create \
  --name tu-ai-services \
  --resource-group tu-rg \
  --deployment-name text-embedding-3-small \
  --model-name text-embedding-3-small \
  --model-version 1 \
  --model-format OpenAI \
  --sku-capacity 350 \
  --sku-name Standard

MCP no carga

  1. Verifica que mcp_server_lite.py existe
  2. Revisa que MCP_API_BASE apunta a la URL correcta
  3. Recarga VS Code completamente

Documentos no aparecen

El endpoint /api/documentos consulta Azure AI Search. Verifica:

  1. El índice existe: documentos-pdf-rag
  2. Hay documentos indexados
  3. La API key es correcta

📄 Licencia

MIT License - Libre para uso educativo y comercial.

👥 Autor

Creado durante el Azure AI Foundry Workshop.

工具与能力

工具数量

4

资源数量

0

提示词数量

0

能力标签

检索增强生成Python本地部署语义搜索PDF处理AzureAI工具调用

支持客户端

VS Code

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

查资料带出处

把网页、论文和文档的检索结果连同链接一起带回对话。

站内知识检索

在自己的文档库里做语义搜索,比关键词更贴题。

事实核对

交叉多个来源确认一条信息,减少模型凭记忆作答。

选择建议

值得选的地方

  • 只提供 4 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 运行环境,换机器要重新装一遍。
  • 需要自备API Key,没有凭据没法直接试。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。

更适合

  • 需要在搜索检索场景里让模型直接调用外部能力的人。
  • 已经在用 VS Code 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到API Key的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Azure Rag Foundry Workshop

MCP World · 本页

4stdio有1 个2026-05-17
Baidu Netdisk

MCP World

未标注未说明未标注1 个2026-05-17
Sequentialthinking

MCP.so

1SSE有2 个2026-05-17
Brave Search 433812ff

MCP World

2未说明未标注1 个2026-05-17
mindsdb (430e18)

MCP World

0未说明有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Azure Rag Foundry Workshop 怎么安装?

公开资料给出的安装命令是 pip install -r requirements.txt,运行环境为 未标注。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Azure Rag Foundry Workshop 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

Azure Rag Foundry Workshop 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Azure Rag Foundry Workshop 需要 API Key 吗?

公开资料标注的认证方式是API Key,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Azure Rag Foundry Workshop 支持哪些客户端?

公开资料标注支持 VS Code;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP