ia-cae-zurekin-mcp
IA CAE Zurekin MCP Server
Servidor MCP en Node.js para consultar de forma autenticada la web interna de CAE Zurekin.
Qué incluye
search_pages: busca contenido en el sitio autenticadoget_page: obtiene una página concretaextract_page_content: devuelve contenido estructuradolist_sections: lista enlaces navegables desde una página raíz
Related MCP server: wikijs-mcp
Requisitos
Node.js 18+
Un servidor o entorno donde ejecutar este proyecto fuera del editor
Ajustar la lógica de login a la web real si el formulario no coincide con los valores por defecto
Configuración
Copia
.env.examplea.envCompleta o ajusta las variables de entorno
Instala dependencias:
npm install
Arranca el servidor:
npm start
Variables principales
CAEZ_BASE_URL: URL base del sitio internoCAEZ_USERNAME: usuario de accesoCAEZ_PASSWORD: contraseña de accesoCAEZ_LOGIN_URL: URL exacta de login si es distinta de la baseCAEZ_LOGIN_USER_FIELD: nombre real del campo usuario en el formularioCAEZ_LOGIN_PASSWORD_FIELD: nombre real del campo contraseña en el formularioCAEZ_LOGIN_EXTRA_FIELDS: JSON con campos extra del formulario, si existenCAEZ_SEARCH_PATH: ruta interna de búsqueda si el sitio tiene una URL específica para buscarPORT: puerto HTTP del servicio (por defecto3000)MCP_PATH: ruta del endpoint MCP (por defecto/mcp)
Configuración precargada para tu caso
El ejemplo ya quedó ajustado con esta base:
CAEZ_BASE_URL=https://interna.caezurekin.biz/caezurekinCAEZ_LOGIN_URL=https://interna.caezurekin.biz/caezurekinCAEZ_LOGIN_USER_FIELD=usernameCAEZ_LOGIN_PASSWORD_FIELD=password
Ajustes probables
Es muy probable que todavía tengas que adaptar:
el flujo de autenticación si hay redirecciones, tokens CSRF o SSO
la lógica de búsqueda si el sitio no tiene un endpoint claro
cualquier campo oculto adicional del formulario, si existe
Endpoint remoto MCP
Este servidor ya no está pensado para funcionar solo por stdio. Ahora expone un endpoint HTTP remoto para el conector MCP:
MCP:
POST /mcpHealthcheck:
GET /health
Si abres /mcp en el navegador, verás un mensaje indicando que debes usar POST, lo cual es esperado.
Uso con tu MCP personalizado
Cuando lo despliegues, la conexión MCP del agente debe apuntar a:
https://tu-dominio-o-render.onrender.com/mcp
No debe apuntar directamente a la web interna autenticada.
Despliegue en Render
Build command:
npm installStart command:
npm start
Después del despliegue, comprueba primero:
https://tu-dominio-o-render.onrender.com/healthhttps://tu-dominio-o-render.onrender.com/mcp
En /mcp es normal recibir un error de método si entras por navegador. Lo importante es que la ruta exista y que el conector MCP pueda hacer POST.
Nota importante de despliegue
Si el MCP personalizado que ya está conectado al agente sigue desplegado con una versión anterior del código o con variables de entorno antiguas, el agente puede seguir fallando aunque este borrador ya esté corregido. En ese caso tendrás que redeplegar el servidor MCP real con este código y con la CAEZ_BASE_URL y CAEZ_LOGIN_URL correctas.
Available Tools
4 toolsextract_page_contentC
Extrae el contenido estructurado de una p�gina.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| include_tables | No | ||
| include_links | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description bears full burden. It implies a read operation ('extracts') but does not disclose side effects, idempotency, error handling, or any behavioral traits. Insufficient for a tool with zero annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, concise and front-loaded. No extraneous information. However, lacks structure (e.g., bullet points), but this does not detract from its brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 3 parameters, no output schema, and no annotations, the description is too brief. Does not explain what 'structured content' means, how boolean parameters affect extraction, or the output format. Inadequate for effective agent usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% coverage (no property descriptions). The description does not explain what include_tables or include_links do, nor does it add any meaning beyond the schema. The description adds zero value for parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool extracts structured content from a page, using a specific verb and resource. It distinguishes from siblings like get_page (likely raw content) and list_sections (sections), but does not explicitly differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like get_page or list_sections. No context about prerequisites or scenarios where this tool is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pageC
Obtiene una p�gina concreta del sitio.
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | ||
| path | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must disclose behavioral traits. It only says 'Gets' without confirming read-only status, authentication needs, or rate limits. The description adds minimal transparency beyond the tool's name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is overly brief (one sentence), sacrificing necessary detail for brevity. It omits parameter explanations and usage context, making it under-specified rather than concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no parameter descriptions, the tool's behavior is almost entirely undocumented. The agent lacks info on return values, error handling, or how input fields relate to page retrieval, resulting in very poor completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain the meaning or expected format of parameters 'url' and 'path'. Without any parameter information, the agent cannot construct valid calls effectively.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Gets a specific page of the site' provides a verb and resource but is vague, not distinguishing it from siblings like extract_page_content or list_sections. A clearer purpose would specify what 'get' means (e.g., retrieve metadata, content, or both).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool over siblings. For instance, should users call get_page before extract_page_content? No alternatives or exclusions mentioned, leaving the agent without decision context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_sectionsC
Lista secciones navegables del sitio.
| Name | Required | Description | Default |
|---|---|---|---|
| root_path | No | / |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, and the description does not disclose any behavioral traits such as authentication requirements, rate limits, or side effects. It only states the basic function.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, which is concise but may be too minimal. It front-loads the purpose but lacks supporting details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the single parameter, no output schema, and no annotations, the description fails to provide sufficient context. It does not explain what 'navigable sections' are, how root_path affects results, or the output format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description does not explain the 'root_path' parameter or its effect. With 0% schema description coverage, the parameter semantics are left entirely to the agent to infer.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists navigable sections of the site, using a specific verb and resource. It distinguishes from sibling tools like extract_page_content, get_page, and search_pages.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of context, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_pagesC
Busca contenido dentro de la web interna autenticada.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| limit | No | ||
| section | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full responsibility for behavioral disclosure. It only states 'Busca contenido' without detailing outcomes (e.g., returns page titles, snippets, or URLs), authentication specifics, or limits on input.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, which is concise but overly sparse. It does not waste words, but it lacks sufficient detail to be fully useful, sacrificing completeness for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given three parameters, no output schema, and sibling tools, the description is incomplete. It does not explain return format, how to use the 'section' parameter, or behavior for missing/empty queries, leaving critical gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage. The description adds no explanation for any parameter (query, limit, section), leaving their meaning entirely to the schema names. This fails to add value beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Busca' (search) and the resource 'contenido dentro de la web interna autenticada' (content within the authenticated internal web). It adequately distinguishes from sibling tools like get_page and extract_page_content by indicating a search capability.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as get_page or list_sections. It does not mention any prerequisites or scenarios where this tool is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
4 tool updates
v1.0.0- First observed
extract_page_content - First observed
get_page - First observed
list_sections - First observed
search_pages
TDQS
Each tool targets a distinct operation: extracting content from a page, retrieving a specific page, listing sections, and searching within the site. There is no overlap or ambiguity between them.
All tool names follow a consistent verb_noun pattern (e.g., extract_page_content, get_page, list_sections, search_pages) using snake_case, making them predictable and easy to understand.
The server has 4 tools, which is well-scoped for a website content retrieval and navigation purpose. Each tool serves a clear and necessary function without being redundant or excessive.
The tool set covers core operations: retrieving pages, extracting content, listing sections, and searching. It lacks features like listing pages within a section or getting page metadata, but these are minor gaps for the intended domain.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for querying Forkast documentation
MCP server for web extraction and rendering via AceDataCloud WebExtrator
Personal knowledge base MCP server with semantic search, auto-categorization, metadata extraction
Related MCP Servers
- AlicenseAqualityAmaintenanceMCP server for live web search and clean-markdown page fetch over the Keenable web index.2853MIT
- FlicenseNot gradedqualityCmaintenanceMCP server to search and read documentation pages from a WikiJS instance via its GraphQL API.-
- AlicenseNot gradedqualityCmaintenanceMCP server for searching and retrieving pages from Atlassian Confluence.311MIT
- FlicenseNot gradedqualityDmaintenanceMCP server that provides web search scraping from DuckDuckGo (with Mojeek fallback) and URL content fetching as markdown/text or raw HTML.1-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/luistorres789321/ia-cae-zurekin-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server