Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se muestra cómo una
Nota:
Parte de la información hace referencia al producto de versión preliminar, el cual puede sufrir importantes modificaciones antes de que se publique la versión comercial. Microsoft no ofrece ninguna garantía, expresa o implícita, con respecto a la información proporcionada aquí.
Prerrequisitos
- Compilación de Windows 26220.7262 o posterior
- Una MCP aplicación host con identidad de paquete. Para obtener más información sobre la identidad del paquete, consulte Introducción a la identidad del paquete en las aplicaciones de Windows. La identidad del paquete se concede a las aplicaciones que se empaquetan mediante el formato de paquete MSIX. Para obtener más información, consulte ¿Qué es MSIX?.
- Nota Este requisito no se aplica en la versión preliminar pública, pero estará en la versión estable.
Clonación del ejemplo
Clone el MCP ejemplo en el host de Windows a su dispositivo y acceda a él:
git clone https://github.com/microsoft/mcp-on-windows-samples.git
cd mcp-on-windows-samples/mcp-client-js
Configuración y compilación del ejemplo
Ejecute estos comandos:
npm install
npm run start
La herramienta le presentará una interfaz de usuario de línea de comandos que le permite interactuar con los MCP servidores registrados en el dispositivo. En las secciones siguientes se mostrará el código Javascript usado por la herramienta para implementar varias características de una MCP aplicación host.
Enumerar servidores disponibles MCP
Enumere los servidores disponibles MCP que ejecutan la llamada de la línea de comandosodr.exe list. Este comando devuelve la lista de servidores en formato JSON, que se almacena y se usa en ejemplos posteriores:
const { stdout, stderr } = await execFileAsync('odr.exe', ['list']);
if (stderr) {
console.error('Warning:', stderr);
}
const servers = JSON.parse(stdout);
Conexión a un MCP servidor
Conéctese a uno de los servidores disponibles MCP obteniendo el comando y los argumentos a partir del JSON que recibiste en el paso anterior. Cree un StdioClientTransport, pasando el comando y los argumentos. Cree un nuevo Client objeto. Llame a connect para conectarse al MCP servidor.
const command = server.manifest?.server?.mcp_config?.command;
const args = server.manifest?.server?.mcp_config?.args || [];
if (!command) {
throw new Error('Server configuration missing command.');
}
// Create MCP client with stdio transport
// Set stderr to 'ignore' to silence server info logs
const transport = new StdioClientTransport({
command: command,
args: args,
stderr: 'ignore'
});
const client = new Client({
name: 'mcp-client',
version: '1.0.0'
}, {
capabilities: {}
});
// Connect to the server
await client.connect(transport);
Enumerar herramientas de un servidor
Llame listTools para enumerar las herramientas registradas por el servidor MCP.
// List available tools
const toolsResponse = await client.listTools();
const tools = toolsResponse.tools || [];
Llamada a una herramienta
Cada MCP herramienta tiene un nombre y un conjunto opcional de parámetros. La gatherToolParameters función del ejemplo ayudará a recopilar parámetros de entrada y, a continuación, puede llamar a la herramienta directamente:
const parameters = await gatherToolParameters(tool); // This function is from the sample code
const result = await client.callTool({
name: tool.name,
arguments: parameters
});
Pasos siguientes
- Obtenga información sobre cómo compilar y registrar un MCP servidor que una aplicación host puede detectar y usar. Para obtener más información, consulte Registro de un MCP servidor.