Skip to content
 
 

Latest commit

 

History

52 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Servidor MCP de Cloudflare AutoRAG 馃摗

Este es un servidor Protocolo de Contexto de Modelo (MCP)](https://modelcontextprotocol.io/introduction) que admite conexiones MCP remotas, con autenticaci贸n OAuth de Cloudflare integrada.

Integra herramientas basadas en la API de Cloudflare AutoRAG para permitirle acceder y consultar las instancias de AutoRAG de su cuenta.

馃敤 Herramientas disponibles

Herramientas disponibles actualmente:

| Herramienta | Descripci贸n |

| ----------- | -------------------------------------------------------------------------------- |

| list_rags | Lista las instancias de AutoRAG con paginaci贸n |

| search | Busca documentos en una instancia de AutoRAG espec铆fica mediante una consulta (URL, t铆tulo o fragmento) |

| ai_search | Realiza b煤squedas con IA en documentos de un AutoRAG espec铆fico |

Este servidor MCP a煤n est谩 en desarrollo y planeamos agregar m谩s herramientas en el futuro.

Ejemplos de comandos

  • Listar todos los AutoRAG de mi cuenta.
  • Buscar documentos en el AutoRAG con ID 'rag123' usando la consulta 'cloudflare security'.
  • Realizar una b煤squeda con IA en el AutoRAG con ID 'rag456' para 'mejores pr谩cticas para almacenes vectoriales'.

Acceder al servidor MCP remoto desde cualquier cliente MCP

Si su cliente MCP es compatible con servidores MCP remotos, le permitir谩 aceptar la URL del servidor (https://autorag.mcp.cloudflare.com) directamente en su interfaz (por ejemplo, en Cloudflare AI Playground).

Si tu cliente a煤n no admite servidores MCP remotos, deber谩s configurar su archivo de configuraci贸n correspondiente usando mcp-remote (https://www.npmjs.com/package/mcp-remote) para especificar a qu茅 servidores puede acceder.

Reemplaza el contenido con la siguiente configuraci贸n:

{
"mcpServers": {

"cloudflare": {

"command": "npx",

"args": ["mcp-remote", "https://autorag.mcp.cloudflare.com/mcp"]

}
}
}

Una vez configurado el archivo de configuraci贸n, reinicia el cliente MCP y se abrir谩 una ventana del navegador con tu p谩gina de inicio de sesi贸n OAuth. Sigue el proceso de autenticaci贸n para otorgar al cliente acceso a tu servidor MCP. Tras otorgar el acceso, las herramientas estar谩n disponibles para su uso.

v1




Servidor MCP de Cloudflare Model Context Protocol

El Protocolo de contexto de modelo (MCP) es un nuevo protocolo estandarizado para gestionar el contexto entre modelos de lenguaje grandes (LLM) y sistemas externos. En este repositorio, proporcionamos un instalador y un servidor MCP para la API de Cloudflare.

Esto le permite usar Claude Desktop, o cualquier cliente MCP, para usar lenguaje natural y lograr cosas en su cuenta de Cloudflare, por ejemplo:

  • Implemente un nuevo Worker con un objeto duradero de ejemplo.
  • 驴Puede informarme sobre los datos en mi base de datos D1 llamada '...'?
  • 驴Puede copiar todas las entradas de mi espacio de nombres KV '...' en mi dep贸sito R2 '...'?

Demostraci贸n

Configuraci贸n

  1. Ejecuta npx @cloudflare/mcp-server-cloudflare init
  2. o clona localmente tu repo: "git clone https://github.com/avilaroman/MCP.git"
Ejemplo de salida de consola
  1. Reinicia Claude Desktop. Deber铆as ver un peque帽o 铆cono 馃敤 que muestra las siguientes herramientas disponibles para usar:
Ejemplo de 铆cono de herramienta Ejemplo de lista de herramientas

Caracter铆sticas

Administraci贸n de almacenamiento de KV

  • get_kvs: enumera todos los espacios de nombres de KV en su cuenta
  • kv_get: obtiene un valor de un espacio de nombres de KV
  • kv_put: almacena un valor en un espacio de nombres de KV
  • kv_list: enumera las claves en un espacio de nombres de KV
  • kv_delete: elimina una clave de un espacio de nombres de KV

Administraci贸n de almacenamiento de R2

  • r2_list_buckets: enumera todos los dep贸sitos de R2 en su cuenta
  • r2_create_bucket: crea un nuevo dep贸sito de R2
  • r2_delete_bucket: eliminar un dep贸sito R2
  • r2_list_objects: enumerar objetos en un dep贸sito R2
  • r2_get_object: obtener un objeto de un dep贸sito R2
  • r2_put_object: colocar un objeto en un dep贸sito R2
  • r2_delete_object: eliminar un objeto de un dep贸sito R2

Administraci贸n de bases de datos D1

  • d1_list_databases: enumerar todas las bases de datos D1 en su cuenta
  • d1_create_database: crear una nueva base de datos D1
  • d1_delete_database: eliminar una base de datos D1
  • d1_query: ejecutar una consulta SQL en una base de datos D1

Administraci贸n de Workers

  • worker_list: enumerar todos los Workers en su cuenta
  • worker_get: obtener el contenido del script de un Workers
  • worker_put: crear o actualizar un script de Worker
  • worker_delete: eliminar un script de Worker

An谩lisis

  • analytics_get: recuperar datos anal铆ticos para su dominio
  • Incluye m茅tricas como solicitudes, ancho de banda, amenazas y vistas de p谩gina
  • Admite filtrado por rango de fechas

Desarrollo

En la carpeta del proyecto actual,

git clone https://github.com/avilaroman/MCP.git
cd MCP

luego ejecute:

pnpm install
pnpm build:watch

Luego, en una segunda terminal:

node dist/index.js init

Esto vincular谩 Claude Desktop con su versi贸n instalada localmente para que pueda probarla.

Uso fuera de Claude

Para ejecutar el servidor localmente, ejecute node dist/index run <account-id>.

Si est谩 usando un cliente MCP alternativo o est谩 probando cosas localmente, emita el comando tools/list para obtener una lista actualizada de todas las herramientas disponibles. Luego, puede llamarlas directamente usando el comando tools/call.

Workers

// Listar Workers
worker_list()

// Obtener el c贸digo del Worker
worker_get({ name: "my-worker" })

// Actualizar Worker
worker_put({
name: "my-worker",
script: "export default { async fetch(request, env, ctx) { ... }}",
bindings: [
{
type: "kv_namespace",
name: "MY_KV",
namespace_id: "abcd1234"
},
{
type: "r2_bucket",
name: "MY_BUCKET",
bucket_name: "my-files"
}
],
compatible_date: "2024-01-01",
compatible_flags: ["nodejs_compat"]
})

// Eliminar Workers
worker_delete({ name: "my-worker" })

KV Store

// Lista de espacios de nombres de KV
get_kvs()

// Obtener valor
kv_get({
namespaceId: "your_namespace_id",
key: "myKey"
})

// Almacenar valor
kv_put({
namespaceId: "your_namespace_id",
key: "myKey",
value: "myValue",
expirationTtl: 3600 // opcional, en segundos
})

// Lista de claves
kv_list({
namespaceId: "your_namespace_id",
prefix: "app_", // opcional
limit: 10 // opcional
})

// Eliminar clave
kv_delete({
namespaceId: "your_namespace_id",
key: "myKey"
})

R2 Almacenamiento

// Lista de dep贸sitos
r2_list_buckets()

// Crear dep贸sito
r2_create_bucket({ name: "my-bucket" })

// Eliminar dep贸sito
r2_delete_bucket({ name: "my-bucket" })

// Listar objetos en el dep贸sito
r2_list_objects({
dep贸sito: "my-bucket",
prefijo: "carpeta/", // opcional
delimitador: "/", // opcional
l铆mite: 1000 // opcional
})

// Obtener objeto
r2_get_object({
dep贸sito: "my-bucket",
clave: "carpeta/archivo.txt"
})

// Poner objeto
r2_put_object({

About

MCP Server corriendo sobre Cloudflare gratuito para que tus maquinas LLM guarden prompts y resultados en los servicios de datos de la nube.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages