SoftProbe MCP Server
Un servidor MCP para gestionar datos y recursos de pruebas de API.
Documentación
SoftProbe MCP Server
Una implementación de servidor de Model Context Protocol (MCP) para gestionar datos de prueba de API y recursos.
Descripción general
Este servidor implementa el protocolo MCP para proporcionar una forma estructurada de acceder y gestionar datos de prueba de API. Utiliza un modelo de organización jerárquica donde los recursos están delimitados bajo organizaciones y aplicaciones.
Implementación actual
Este servidor implementa actualmente MCP utilizando Herramientas (ya que Recursos y Raíces aún no son compatibles con Cursor). El servidor proporciona las siguientes herramientas:
- list-APIs: Lista todas las APIs registradas disponibles en Softprobe
- list-api-record-ids: Lista todos los registros de API grabados para una operación específica
- getApiSamples: Recupera muestras de interacciones de API grabadas en formato JSON
Configuración
El servidor se puede configurar mediante variables de entorno o a través del archivo de configuración mcp.json:
{
"mcpServers": {
"mcp-server-softprobe": {
"command": "npx",
"args": [
"-y",
"@softprobe/mcp-server"
],
"env": {
"SOFTPROBE_API_URL": "https://api-onpremise-gcp.softprobe.ai",
"SOFTPROBE_ACCESS_TOKEN": "<your-access-token>"
}
}
}
}
Variables de entorno requeridas:
SOFTPROBE_API_URL: URL base para la API de SoftprobeSOFTPROBE_ACCESS_TOKEN: Token de autenticación para el acceso a la API
Arquitectura futura
Jerarquía de raíces
softprobe://orgs/{orgId}
└── softprobe://orgs/{orgId}/apps/{appId}
└── API Samples (resources)
- Raíz de organización: Representa una organización de nivel superior
- Raíz de aplicación: Representa una aplicación dentro de una organización
- Muestras de API: Recursos de datos de prueba delimitados a aplicaciones específicas
Tipos de recursos
-
Recursos del sistema
resources/list: Lista los recursos disponiblesresources/read: Lee un recurso específicoresources/subscribe: Se suscribe a cambios de recursosroots/list: Lista las plantillas de raíz disponiblesroots/resolve: Resuelve una raíz específica
-
Recursos de muestras de API
softprobe://apiSamples/{orgId}/{appId}/{apiPath}: Accede a muestras de prueba de API
Flujo de trabajo
1. Descubrimiento de raíces
// Client calls roots/list
// Server returns:
{
roots: [
{ uri: 'softprobe://orgs/{orgId}', name: 'Organization Root' },
{ uri: 'softprobe://orgs/{orgId}/apps/{appId}', name: 'Application Root' }
]
}
2. Resolución de raíces
// Client calls roots/resolve with:
// uri: softprobe://orgs/123
// Server returns:
{
root: {
uri: 'softprobe://orgs/123',
name: 'Organization Root'
}
}
3. Acceso a recursos
// Client calls resources/list
// Server returns resources under org/123
// Client calls softprobe/apiSamples/123/456/users
// Server returns API samples for the users endpoint
4. Acceso a aplicaciones
// Client calls roots/resolve with:
// uri: softprobe://orgs/123/apps/456
// Server returns:
{
root: {
uri: 'softprobe://orgs/123/apps/456',
name: 'Application Root'
}
}
// Now all resource access is scoped to app/456
Estructura de muestras de API
{
samples: [
{
name: "test_case_name",
request: {
method: "POST",
body: { /* request body */ }
},
response: {
status: 200,
body: { /* response body */ }
}
}
]
}
Integración con el IDE de Cursor
El servidor MCP permite al IDE de Cursor:
-
Organizar datos de prueba
- Mantener los datos de prueba separados de producción
- Organizar pruebas por aplicación/funcionalidad
- Mantener el versionado de datos de prueba
-
Gestión de casos de prueba
- Acceder a casos de prueba a través del sistema de recursos
- Suscribirse a cambios de casos de prueba
- Monitorear actualizaciones de datos de prueba
-
Ejecución de pruebas
- Recuperar casos de prueba para validación
- Comparar respuestas reales con las esperadas
- Generar informes de prueba
-
Gestión de entornos
- Usar diferentes raíces para diferentes entornos
- Mantener datos de prueba específicos del entorno
- Pruebas seguras sin afectar producción
Desarrollo
Requisitos previos
- Node.js v16 o superior
- TypeScript
Configuración
npm install
npm run dev
Compilación
npm run build
Ejecución
npm start
Licencia
MIT