Hub documentation
Construindo com o SDK
Construindo com o SDK
Crie agentes com suporte a MCP usando os SDKs agênticos da Hugging Face. As bibliotecas huggingface_hub (Python) e @huggingface/tiny-agents (JavaScript) fornecem tudo o que você precisa para conectar LLMs a ferramentas MCP.
Instalação
pip install "huggingface_hub[mcp]"npm install @huggingface/tiny-agents
# or
pnpm add @huggingface/tiny-agentsInício rápido: Execute um agente
A maneira mais rápida de começar é com o CLI tiny-agents:
tiny-agents run julien-c/flux-schnell-generator
npx @huggingface/tiny-agents run "julien-c/flux-schnell-generator"Isso carrega um agente da coleção tiny-agents, conecta-se aos seus servidores MCP e inicia um chat interativo.
Usando a Classe Agent
A classe Agent gerencia o loop de chat e a execução de ferramentas MCP. Ela usa Inference Providers para executar o LLM.
from huggingface_hub import Agent
import asyncio
agent = Agent(
model="Qwen/Qwen2.5-72B-Instruct",
provider="novita",
servers=[
{
"type": "sse",
"url": "https://evalstate-flux1-schnell.hf.space/gradio_api/mcp/sse"
}
]
)
async def main():
async for chunk in agent.run("Generate an image of a sunset"):
if hasattr(chunk, 'choices'):
delta = chunk.choices[0].delta
if delta.content:
print(delta.content, end="")
asyncio.run(main())Consulte a referência do Agent para todas as opções.
import { Agent } from "@huggingface/tiny-agents";
const agent = new Agent({
model: "Qwen/Qwen2.5-72B-Instruct",
provider: "novita",
apiKey: process.env.HF_TOKEN,
servers: [
{
type: "sse",
url: "https://evalstate-flux1-schnell.hf.space/gradio_api/mcp/sse"
}
]
});
await agent.loadTools();
for await (const chunk of agent.run("Generate an image of a sunset")) {
if ("choices" in chunk) {
const delta = chunk.choices[0]?.delta;
if (delta.content) {
console.log(delta.content);
}
}
}Consulte a documentação do tiny-agents para todas as opções.
Usando o MCPClient diretamente
Para mais controle, use MCPClient para gerenciar servidores MCP e chamadas de ferramentas diretamente.
import asyncio
from huggingface_hub import MCPClient
async def main():
async with MCPClient(
model="Qwen/Qwen2.5-72B-Instruct",
provider="novita",
) as client:
# Connect to an MCP server
await client.add_mcp_server(
type="sse",
url="https://evalstate-flux1-schnell.hf.space/gradio_api/mcp/sse"
)
# Process a request with tools
messages = [{"role": "user", "content": "Generate an image of a sunset"}]
async for chunk in client.process_single_turn_with_tools(messages):
if hasattr(chunk, 'choices'):
delta = chunk.choices[0].delta
if delta.content:
print(delta.content, end="")
asyncio.run(main())Consulte a referência do MCPClient para todas as opções.
O SDK em JavaScript usa a classe Agent para interações com o MCP. Para um controle de nível inferior, consulte o pacote @huggingface/mcp-client.
Compartilhe Seu Agente
Contribua com agentes para a coleção tiny-agents no Hub. Inclua:
agent.json- Configuração do agente (obrigatório)PROMPT.mdouAGENTS.md- Prompt de sistema (opcional)EXAMPLES.md- Prompts de exemplo e casos de uso (opcional)
Saiba Mais
- Referência do MCP do huggingface_hub - Referência da API em Python
- Documentação do tiny-agents - Referência da API em JavaScript
- Provedores de Inferência - Provedores de LLM disponíveis
- coleção tiny-agents - Navegue pelos agentes da comunidade
- Guia do Servidor MCP - Conecte-se ao Servidor MCP do Hugging Face