Use o OSS MCP Server para integrar as capacidades de gerenciamento de dados do OSS aos seus aplicativos de IA.
Esta é uma versão Alpha e está sujeita a mudanças significativas.
Ferramentas
O OSS MCP Server oferece as seguintes ferramentas:
Listar buckets (ListBuckets)
Parâmetros aceitos:
[prefix]: O prefixo que os nomes dos buckets retornados devem conter.[marker]: A posição a partir da qual iniciar a consulta. A consulta retorna os resultados em ordem alfabética, começando pela entrada que segue o marcador.[maxKeys]: O número máximo de buckets a serem retornados. O valor padrão é 100. Por favor, configure o valor máximo desse parâmetro na instância do OSS MCP Server.[resourceGroupId]: O ID do grupo de recursos ao qual os buckets retornados pertencem.[region]: O ID da região específica do OSS, como oss-cn-hangzhou. Este parâmetro especifica o endpoint da requisição.
Visualizar informações do bucket (GetBucketInfo)
Para obter detalhes, visualize as informações do bucket.
Parâmetros aceitos:
bucket: O nome do bucket.[region]: O ID da região específica do OSS, como oss-cn-hangzhou. Este parâmetro especifica o endpoint da requisição.
Obter a capacidade de armazenamento, a quantidade de arquivos e o número de partes multipart de um bucket (GetBucketStat)
Parâmetros aceitos:
bucket: O nome do bucket.[region]: O ID da região específica do OSS, como oss-cn-hangzhou. Este parâmetro especifica o endpoint da requisição.
Requisitos de ambiente
Node.js >= 18.20.5
STDIO
Comunique-se com o MCP Server por meio da entrada e saída padrão (STDIO).
Cursor
Para começar, edite o arquivo ~/.cursor/mcp.json:
{
"mcpServers": {
"alibabacloud-oss": {
"command": "npx",
"args": ["-y", "alibabacloud-oss-mcp-server@alpha"],
"env": {
"OSS_ACCESS_KEY_ID": "your-access-key-id",
"OSS_ACCESS_KEY_SECRET": "your-access-key-secret"
}
}
}
}
Variáveis de ambiente opcionais:
OSS_SECURITY_TOKEN: O token de segurança. Obrigatório ao usar credenciais de identidade temporárias.OSS_REGION: O ID da região específica do OSS, como oss-cn-hangzhou.OSS_ENDPOINT: O endpoint.
Cherry Studio
Tipo: Entrada e saída padrão
Comando:
npxParâmetros:
-y alibabacloud-oss-mcp-server@alpha-
Variáveis de ambiente:
OSS_ACCESS_KEY_ID=your-access-key-id(Obrigatório)OSS_ACCESS_KEY_SECRET=your-access-key-secret(Obrigatório)OSS_SECURITY_TOKEN=your-security-token(Opcional. Obrigatório ao usar credenciais de identidade temporárias.)OSS_REGION=oss-cn-hangzhou(Opcional)OSS_ENDPOINT=https://oss-cn-hangzhou.aliyuncs.com(Opcional)
Streamable HTTP
Comunique-se com o MCP Server por HTTP.
Implantação no lado do servidor
Nota sobre acesso remoto : O OSS MCP Server escuta apenas no localhost. Para implantações remotas, use um proxy reverso para encaminhamento de porta. Também é recomendável configurar HTTPS e proteção por autenticação.
Execute o seguinte comando para iniciar o service HTTP:
export OSS_ACCESS_KEY_ID="your-access-key-id"
export OSS_ACCESS_KEY_SECRET="your-access-key-secret"
npx -y -p alibabacloud-oss-mcp-server@alpha -p express alibabacloud-oss-mcp-server --transport=streamable-http --port=18081
Variáveis de ambiente opcionais:
OSS_SECURITY_TOKEN: O token de segurança. Obrigatório ao usar credenciais de identidade temporárias.OSS_REGION: O ID da região específica do OSS, como oss-cn-hangzhou.OSS_ENDPOINT: O endpoint.
Endpoint do lado do servidor: http://localhost:18081/mcp
Configuração do cliente
Para se conectar, configure o cliente ao endpoint do servidor HTTP implantado.
Cherry Studio
Tipo: Streamable HTTP
url:
http://localhost:18081/mcp
dify
url do endpoint do lado do servidor:
http://localhost:18081/mcp
Uso programático
Para integrar o OSS MCP Server diretamente ao seu código, crie e configure uma instância de service programaticamente.
Instalação
Antes de usar, instale o pacote no seu ambiente.
npm install alibabacloud-oss-mcp-server@alpha
Uso básico
import { OSSMcpServer, OSSMcpServerTransport } from 'alibabacloud-oss-mcp-server/server';
const server = new OSSMcpServer({
accessKeyId: process.env.OSS_ACCESS_KEY_ID,
accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
securityToken: process.env.OSS_SECURITY_TOKEN,
region: process.env.OSS_REGION,
endpoint: process.env.OSS_ENDPOINT,
transportType: OSSMcpServerTransport.STDIO
});
await server.runServer();
Opções de configuração
Ao criar uma instância do OSSMcpServer, forneça as seguintes opções de configuração:
Configuração do cliente OSS
accessKeyId: O accesskey ID.accessKeySecret: O segredo do accesskey.[securityToken]: O token de segurança.[refreshCredentials]: O método para atualizar as credenciais de acesso. Se usar credenciais de identidade temporárias, defina este parâmetro e o parâmetrorefreshCredentialsIntervalpara evitar que as credenciais expirem.[refreshCredentialsInterval]: O período de validade das credenciais de acesso em milissegundos (ms). O valor padrão é 300000 ms, o que equivale a 5 minutos.[lastRefreshCredentialsTime]: O horário da última atualização das credenciais de acesso. O valor padrão é o horário de inicialização da instância do cliente.[region]: O ID da região ou o ID da região específica do OSS. O valor padrão é oss-cn-hangzhou. Este parâmetro é convertido para o ID da região na assinatura.[endpoint]: O endpoint do service. Por padrão, o sistema gera um endpoint de internet com base no parâmetroregion. Se definir este parâmetro, o sistema ignora o parâmetrointernal. Se este parâmetro incluir um protocolo, o sistema ignora o parâmetrosecure. É recomendável que você defina este parâmetro se o parâmetroregionestiver definido como um ID de região ou se for necessário acessar o OSS usando outro nome de domínio.[internal]: Indica se deve usar um endpoint de rede interna. O valor padrão é false.[secure]: Indica se deve usar HTTPS para acessar o OSS. O valor padrão é true.[cname]: Indica se o parâmetroendpointé um nome de domínio personalizado. O valor padrão é false. Se definido como true, também defina o parâmetroendpoint.[sldEnable]: Indica se deve usar um domínio de segundo nível para acessar o OSS. O valor padrão é false.[signVersion]: A versão da assinatura. O valor padrão é ESignVersion.V4, que corresponde à versão 4 da assinatura.[isRequestPay]: Indica se deve usar o modo de pagamento pelo solicitante (pay-by-requester). O valor padrão é false. Se definido como true, o sistema adiciona o cabeçalho de requisiçãox-oss-request-payeràs requisições com o valor definido como requester.[userAgent]: Um User-Agent personalizado. O sistema envia este valor como parte do cabeçalho de requisiçãoUser-Agent.[timeout]: O tempo limite da requisição em milissegundos (ms). O valor padrão é 60000 ms, o que equivale a 60 segundos.[disabledMD5]: Indica se deve ignorar o cálculo do valor Content-MD5. O valor padrão é false.[proxy]: As configurações de proxy para requisições HTTP.[retryMax]: O número máximo de tentativas para uma requisição com falha. O valor padrão é 0.[requestErrorShouldRetry]: O método para determinar se deve tentar novamente uma requisição com falha. Por padrão, o sistema repete todas as requisições com falha.[amendTimeSkewed]: O desvio de tempo a ser corrigido em milissegundos (ms). O valor padrão é 0.[customRequestFunction]: Um método de requisição personalizado.[customSign]: Um método de assinatura personalizado. Após configurar este parâmetro, o sistema assina todas as requisições que exigem assinatura, exceto as assinaturas POST, usando este método.
Configuração do MCP Server
[transportType]: O tipo de comunicação. O valor padrão é entrada e saída padrão (stdio).[port]: A porta em que o servidor HTTP escuta. Válido apenas para comunicação Streamable HTTP. O valor padrão é 18081.[tools]: A lista de ferramentas. Por padrão, todas são ativadas. Se precisar, ative uma ferramenta específica.[listToolsMaxKeysMaxValue]: O valor máximo (1-1000) para o parâmetromaxKeysem ferramentas baseadas em listas. O valor padrão é 100.[listToolsDefaultMaxKeys]: O valor padrão para o parâmetromaxKeysem ferramentas baseadas em listas. O padrão é o valor delistToolsMaxKeysMaxValue.[httpServer]: Uma instância de servidor HTTP personalizada. Válida apenas para comunicação Streamable HTTP.[logger]: Uma instância de logger.[xmlContentText]: Indica se o sistema deve retornar o resultado como uma string XML bruta após o sucesso de uma requisição de ferramenta. O valor padrão é false, o que significa que o sistema retorna uma string json.[toolsRequestSuccessCallback]: A função de callback para requisições de ferramenta bem-sucedidas.[toolsRequestErrorCallback]: A função de callback para requisições de ferramenta com falha.