> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nekt.com/llms.txt
> Use this file to discover all available pages before exploring further.

# iRancho as an MCP

> Let your AI agents use iRancho in real time through the Nekt MCP Gateway.

iRancho is a livestock and farm management platform. Through the Nekt MCP Gateway, your AI agents can look up animal records, manage products, check inventory, and record stock purchases directly in your iRancho account.

| | Available |
| :- | :- |
| **Nekt Express** | Yes |
| **GCP** | Yes |
| **AWS** | Yes |

## Adding iRancho as an MCP

Before you start, make sure the [MCP Server](/mcp-server/setup) is set up. See [MCPs](/mcps/overview) for how MCPs work.

1. Go to **Activate → [MCPs](https://app.nekt.ai/mcps)**, click **New MCP** and choose **iRancho**.
2. **Name your MCP** and describe what it is used for. The agent reads the description to choose between MCPs of the same provider.
3. **Setup access**. To connect, you need an integration token from iRancho.
   1. Log into your iRancho account.
   2. Navigate to your account settings to find or generate your integration token.
   3. Fill in the following field in Nekt:
   * **Api Token**: Token de integração gerado nas configurações da conta no iRancho (enviado no header x-access-token-ws). (Required)
4. **Select tools**. Pick the tools your agents can use. See [Available tools](#available-tools) below.
5. Click **Save**. On Growth and Custom plans, choose who can use it; see [Access levels](/mcps/overview#access-levels).

## Example prompts

* "Find the animal with the farm ID 998877."
* "List all the stock locations we have configured in our account."
* "Check if the supplier with CNPJ 12345678000199 exists. If they don't, register them as 'Agro Supplies'."
* "Register a new product called 'Premium Cattle Feed' in the system and give me its new ID."
* "Record a stock entry for the purchase of items on invoice number 5544 from our supplier, placing them into the main warehouse."

## Available tools

Choose which of these tools your agents can use in **Select tools**.

<Note>
  **What changed in v1.1.** Added: `alterar_produto`, `incluir_fornecedor`, `incluir_produto`, `registrar_entrada_estoque`. Updated: `buscar_entrada_estoque`, `buscar_pessoa_por_documento`, `buscar_produto`, `listar_categorias_produto`, `listar_embalagens`, `listar_estoques`, `listar_unidades_medida`. Removed: `atualizar_produto`, `criar_entrada_estoque`, `criar_fornecedor`, `criar_produto`.
</Note>

### Read tools

| Tool | Description | Parameters |
| :- | :- | :- |
| `buscar_animal` | Busca um animal específico por ID da fazenda, registro de nascimento ou definitivo. Endpoint: GET /animal/buscar-animal | `id_animal_fazenda` (string), `registro_definitivo` (string), `registro_nascimento` (string), `filtra_animais_inativos` (boolean) |
| `buscar_entrada_estoque` | Busca movimentações de estoque no iRancho (por padrão, entradas e compras). Endpoint: GET /produto/\{idProduto}/movimentacao (id\_produto "0" = todos os produtos) Datas em dd/mm/aaaa ou AAAA-MM-DD (data\_final padrão = data\_inicial). Lê todas as páginas. Filtros no conector: numero… | `data_inicial` (string, required), `tipos` (array), `numero_nf` (string), `data_final` (string), `id_produto` (string), `fornecedor_nome` (string) |
| `buscar_pessoa_por_documento` | Busca pessoas/contatos (fornecedores, funcionários...) no iRancho por id, CPF/CNPJ ou nome. Endpoint: GET /pessoa/\{id} ou GET /pessoa (sem filtro na API: o filtro é feito no conector) cpf\_cnpj: com ou sem formatação; compara o número inteiro (só dígitos). nome: trecho do nome, s… | `nome` (string), `cpf_cnpj` (string), `id_pessoa` (string) |
| `buscar_produto` | Busca produtos no iRancho por id, "ID único" ou nome (inclui inativos). Endpoint: GET /produto?allProducts=true (sem filtro na API: o filtro é feito no conector) id\_produto: id do iRancho (o que vai em idProduto numa entrada). id\_unico: o "ID único" da tela (campo id\_produto\_ass… | `nome` (string), `id_unico` (string), `id_produto` (string) |
| `listar_animais` | Lista animais cadastrados no iRancho com filtros opcionais. Endpoint: GET /animal | `lote` (integer), `raca` (integer), `sexo` (integer), `limite` (integer), `pagina` (integer), `fazenda` (integer), `categoria` (integer), `subdivisao` (integer) |
| `listar_categorias_produto` | Lista as categorias de produto do iRancho com as subcategorias (idSubcategoria é obrigatório em incluir\_produto). Endpoints: GET /lista/categoria-produto e GET /lista/subcategoria-produto?id\_produto\_categoria= Sem id\_categoria: categorias (\{value, label}) com "subcategorias" ani… | `id_categoria` (integer) |
| `listar_embalagens` | Lista as embalagens utilizáveis para uma unidade de medida. Endpoint: GET /produto/embalagem/\{idUnidadeMedida} | `id_unidade_medida` (integer, required) |
| `listar_estoques` | Lista os locais de estoque do iRancho (id\_produto\_estoque usado em registrar\_entrada\_estoque). Endpoint: GET /produto/estoques | — |
| `listar_fazendas` | Lista todas as fazendas cadastradas na conta do iRancho. Endpoint: GET /fazenda | — |
| `listar_unidades_medida` | Lista as unidades de medida do iRancho (\{value, label}). Endpoint: GET /lista/unidade-medida | — |

### Write tools

| Tool | Description | Parameters |
| :- | :- | :- |
| `alterar_produto` | Altera um produto existente no iRancho. Endpoint: PUT /produto/\{id\_produto} (corpo Produto) O Swagger não diz se o PUT substitui o produto inteiro ou só os campos enviados: por isso os quatro obrigatórios da inclusão são exigidos aqui também. Envie o produto completo. id\_unico:… | `nome` (string, required), `id_produto` (string, required), `id_categoria` (integer, required), `id_subcategoria` (integer, required), `id_unidade_base` (integer, required), `carencia` (integer), `id_unico` (string), `monitorar` (boolean), `embalagens` (array), `usado_pasto` (boolean), `idade_maxima` (integer), `idade_minima` (integer), `id_fabricante` (string), `pct_materia_seca` (number), `produzido_fazenda` (boolean), `quantidade_maxima` (number), `quantidade_minima` (number), `pct_proteina_bruta` (number), `especifico_para_sexo` (boolean), `pct_nutrientes_digestiveis_totais` (number) |
| `incluir_fornecedor` | Cadastra um fornecedor no iRancho só quando o CPF/CNPJ ainda não existe. Endpoint: POST /pessoa (corpo Pessoa) num\_cpf\_cnpj (obrigatório, é a chave): procura antes pelo CPF/CNPJ; se achar, devolve o existente com replay\_idempotente=true e NÃO altera o cadastro. tipo\_pessoa: pess… | `nome` (string, required), `num_cpf_cnpj` (string, required), `cep` (string), `email` (string), `endereco` (string), `categoria` (array), `id_estado` (string), `sobrenome` (string), `tipo_pessoa` (string), `id_municipio` (string), `tel_comercial` (string), `tel_residencial` (string), `num_insc_estadual` (string), `endereco_complemento` (string) |
| `incluir_produto` | Cadastra um produto no iRancho. Endpoint: POST /produto (corpo Produto) Obrigatórios: nome, id\_categoria, id\_subcategoria (listar\_categorias\_produto) e id\_unidade\_base (listar\_unidades\_medida). id\_unico (EXPERIMENTAL): "ID único" do produto (código Omie). O Swagger não documenta… | `nome` (string, required), `id_categoria` (integer, required), `id_subcategoria` (integer, required), `id_unidade_base` (integer, required), `carencia` (integer), `id_unico` (string), `monitorar` (boolean), `embalagens` (array), `usado_pasto` (boolean), `idade_maxima` (integer), `idade_minima` (integer), `id_fabricante` (string), `pct_materia_seca` (number), `produzido_fazenda` (boolean), `quantidade_maxima` (number), `quantidade_minima` (number), `pct_proteina_bruta` (number), `especifico_para_sexo` (boolean), `pct_nutrientes_digestiveis_totais` (number) |
| `registrar_entrada_estoque` | Registra no iRancho a entrada de produtos de uma nota fiscal de compra. Endpoint: POST /produto/movimentacao (corpo PedidoDeMovimentacao) fornecedor: id\_pessoa do fornecedor (buscar\_pessoa\_por\_documento / incluir\_fornecedor). numero\_nf: obrigatório (chave de idempotência). dt\_en… | `estoque` (integer, required), `produtos` (array, required), `numero_nf` (string, required), `dt_entrada` (string, required), `fornecedor` (string, required), `frete` (number), `tp_movimentacao` (integer) |

## Troubleshooting

* **Revoked or expired token**: If your integration token is regenerated or deleted in iRancho, the MCP will show that it needs to reconnect. Go to the MCP's page in Nekt and update the token to restore access.
* **Write operation failures**: Adding products or recording stock entries requires exact internal IDs for categories, units of measure, and storage locations. If the agent cannot find a matching configuration in your account, it will fail to save the record. Ensure your iRancho account has the necessary categories and locations set up.

## Need help?

Contact our support team if you have trouble connecting iRancho.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.