Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este artigo mostra como uma MCP aplicação anfitriã pode listar, ligar-se e interagir com os MCP servidores registados no Windows usando a ferramenta odr.exe do registo de agentes instalada no dispositivo Windowsodr.exe. Este guia usará uma aplicação anfitriã de exemplo do MCP repositório de exemplos do Windows, github.com/microsoft/mcp-on-windows-samples.
Observação
Algumas informações estão relacionadas ao produto pré-lançado, que pode ser substancialmente modificado antes de ser lançado comercialmente. A Microsoft não oferece garantias, expressas ou implícitas, em relação às informações fornecidas aqui.
Pré-requisitos
- Windows compilação 26220.7262 ou superior
- Uma aplicação de anfitriã com identidade de pacote MCP. Para mais informações sobre a identidade do pacote, consulte Uma visão geral da Identidade do Pacote em aplicações Windows. A identidade do pacote é concedida às aplicações que são empacotadas usando o formato de pacote MSIX. Para mais informações, consulte O que é o MSIX?.
- Nota Este requisito não é aplicado na versão pública de pré-visualização, mas será aplicado na versão estável.
Clonar o exemplo
Clone o exemplo do host Windows MCP para o seu dispositivo e aceda a este:
git clone https://github.com/microsoft/mcp-on-windows-samples.git
cd mcp-on-windows-samples/mcp-client-js
Configurar e construir a amostra
Execute estes comandos:
npm install
npm run start
A ferramenta apresenta-lhe uma interface de linha de comandos que lhe permite interagir com os MCP servidores registados no seu dispositivo. As secções seguintes mostrarão o código Javascript utilizado pela ferramenta para implementar várias funcionalidades de uma MCP aplicação anfitriã.
Lista de servidores disponíveis MCP
Liste os servidores disponíveis MCP que executam a chamada odr.exe listde linha de comandos. Este comando devolve a lista de servidores em formato JSON, que é armazenada e usada em exemplos subsequentes:
const { stdout, stderr } = await execFileAsync('odr.exe', ['list']);
if (stderr) {
console.error('Warning:', stderr);
}
const servers = JSON.parse(stdout);
Liga-te a um MCP servidor
Liga-te a um dos servidores disponíveis MCP obtendo o comando e os argumentos a partir do JSON devolvido no passo anterior. Crie um StdioClientTransport, passando o comando e os argumentos. Cria um novo Client objeto.
Liga-te para te ligares ao 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);
Listar ferramentas a partir de um servidor
Chame listTools para listar as ferramentas registradas pelo servidor MCP.
// List available tools
const toolsResponse = await client.listTools();
const tools = toolsResponse.tools || [];
Chamar uma ferramenta
Cada MCP ferramenta tem um nome e um conjunto opcional de parâmetros. A função gatherToolParameters do exemplo ajudará a recolher parâmetros de entrada, e em seguida pode utilizar a ferramenta diretamente.
const parameters = await gatherToolParameters(tool); // This function is from the sample code
const result = await client.callTool({
name: tool.name,
arguments: parameters
});
Próximas Etapas
- Aprenda a construir e registar um MCP servidor que possa ser descoberto e utilizado por uma aplicação anfitriã. Para mais informações, consulte Registar um MCP servidor.