# Sienge — MCP server on mcp.ai > Read your construction numbers from Sienge in Claude, ChatGPT or through the API: projects, budget and inputs, schedule, measurements, supplier contracts, budgeted vs incurred cost, payables and receivables, and unit inventory. By: mcp.ai · official Page: https://mcp.ai/sienge ## Connect (MCP protocol) Remote MCP endpoint (HTTP, streamable): https://api.mcp.ai/p_sienge?ms=1794515220000 Add it as a custom/remote MCP connector, then authenticate when prompted. ## REST API (no MCP client required) Every tool is also a REST endpoint, authed with a workspace API key. Discover: GET https://api.mcp.ai/api/sienge/_endpoints # public; lists every endpoint Call: POST https://api.mcp.ai/api/sienge/ Authorization: Bearer sk_live_… # create one at https://mcp.ai/settings/api-keys Content-Type: application/json Body: { …args } → { "ok": true, "tool": "", "result": { … } } ## Developer docs Install guide (prompt + clients + REST), markdown: https://mcp.ai/sienge/index.md How to use (MCP or REST), markdown: https://mcp.ai/sienge/skill.md Postman collection (v2.1): https://mcp.ai/sienge/postman.json ## Tools - sienge_bulk(recurso: string, data_inicio?: string, data_fim?: string, tipo_data?: string, empresa_id?: integer, centros_custo_ids?: integer[], obra_id?: integer, unidade_construtiva_id?: integer, cliente_id?: integer, indexador_correcao_id?: integer, data_correcao?: string, data_base?: string, max_linhas?: integer, account?: string) — Consulta em MASSA do Sienge (bulk-data): o período inteiro numa chamada, sem paginação. Para sincronizar ou analisar volume grande. - sienge_centros_custo(limite?: integer, offset?: integer, max_paginas?: integer, account?: string) — Centros de custo (id, nome, empresa, CNPJ). O id é o costCenterId dos filtros financeiros e do custo orçado x realizado. - sienge_clientes(cpf?: string, cnpj?: string, obra_id?: integer, so_ativos?: boolean, alterados_desde?: string, incluir_contato?: boolean, limite?: integer, offset?: integer, max_paginas?: integer, account?: string, obra_ids?: integer[]) — Clientes (compradores) cadastrados: id, tipo de pessoa, nome, CPF/CNPJ. O id é o customerId de sienge_contas_receber. Contato (e-mail, telefones, endereços) só com incluir_contato=true. - sienge_contas_pagar(data_inicio: string, data_fim: string, por_alteracao?: boolean, empresa_id?: integer, credor_id?: integer, centro_custo_id?: integer, numero_documento?: string, status?: string, limite?: integer, offset?: integer, max_paginas?: integer, account?: string, empresa_ids?: integer[], credor_ids?: integer[], centro_custo_ids?: integer[]) — Títulos de contas a pagar por período da data de EMISSÃO (ou da data de ALTERAÇÃO com por_alteracao=true, para sincronização incremental): credor, empresa (debtorId), documento, nº de parcelas, valor - sienge_contas_pagar_parcelas(titulo_ids: integer[], incluir_apropriacao_obra?: boolean, account?: string) — Parcelas de títulos de contas a pagar: número, vencimento, data-base, valor, forma de pagamento, situação e envio ao banco. Com incluir_apropriacao_obra=true traz também a apropriação do título nas ob - sienge_contas_receber(cliente_id: integer, empresa_id?: integer, centro_custo_id?: integer, quitados?: boolean, limite?: integer, offset?: integer, max_paginas?: integer, account?: string, cliente_ids?: integer[], empresa_ids?: integer[], centro_custo_ids?: integer[]) — Títulos de contas a receber de UM cliente (o Sienge exige o cliente; o id vem de sienge_clientes): documento, emissão, valor, empresa, inadimplente, sub judice, quitação e unidade. Visão do período in - sienge_contas_receber_parcelas(titulo_ids: integer[], account?: string) — Parcelas de títulos de contas a receber: vencimento, saldo devedor, tipo de condição, portador e se o boleto foi gerado. 1 requisição por título. - sienge_contrato_detalhe(contratos: object[], account?: string) — Detalhe de contratos de suprimento: saldos de mão de obra e material, caução, e as obras com unidades construtivas do contrato. Com obra_id + unidade_construtiva_id no item, traz também os itens do co - sienge_contratos(data_inicio: string, data_fim: string, empresa_id?: integer, obra_id?: integer, limite?: integer, offset?: integer, max_paginas?: integer, account?: string, empresa_ids?: integer[], obra_ids?: integer[]) — Contratos de suprimento (empreitadas, fornecedores) por período da data do contrato: documento + número do contrato (a chave), fornecedor, empresa, status, aprovação, autorização, vigência, objeto, va - sienge_credores(nome?: string, cpf?: string, cnpjs?: string[], limite?: integer, offset?: integer, max_paginas?: integer, account?: string) — Credores (fornecedores, corretores, funcionários) com CPF/CNPJ, situação, endereço, telefones e contatos. Busque por nome (trecho), CPF ou CNPJ. - sienge_custo_orcado_realizado(centros_custo_ids: integer[], data_inicio: string, data_fim: string, limite?: integer, offset?: integer, max_paginas?: integer, account?: string) — Mapa Imobiliário por empreendimento no período: custo orçado x custo incorrido (acumulado, do mês, a incorrer), VGV e POC, receita apropriada, recebimentos, custo apropriado (estoque, garantia, comiss - sienge_empresas(limite?: integer, offset?: integer, max_paginas?: integer, account?: string) — Empresas cadastradas no Sienge (id, razão social, nome fantasia, CNPJ). O id é o companyId/debtorId usado nos filtros das outras tools. - sienge_indexadores(limite?: integer, offset?: integer, max_paginas?: integer, account?: string) — Indexadores de correção (INCC, IGP-M, CUB…) com o último valor. O id é o indexador_correcao_id de sienge_bulk (contas a pagar exige um). - sienge_list_accounts(account?: string) — Lista as conexões Sienge (id, apelido, subdomínio do cliente, client_ref quando veio de Connect Session). Não chama a API. - sienge_medicao_itens(documento_id: string, numero_contrato: string, obra_id: integer, medicao_numero: integer, incluir_titulos?: boolean, account?: string, documento_ids?: string[], obra_ids?: integer[]) — Uma medição de contrato por inteiro: totais (material, mão de obra, descontos, impostos, caução, líquido), os itens medidos (quantidade, acumulado, %, valores e apropriação na planilha da obra) e, com - sienge_medicoes_contratos(documento_id?: string, numero_contrato?: string, obra_id?: integer, fornecedor_id?: integer, data_inicio?: string, data_fim?: string, limite?: integer, offset?: integer, max_paginas?: integer, account?: string, documento_ids?: string[], obra_ids?: integer[], fornecedor_ids?: integer[]) — Medições de contratos de suprimento: contrato, obra, número, data e vencimento, responsável, aprovação, autorização, liberação, valores de mão de obra e material, líquido e a liberar. Filtre por contr - sienge_obra_detalhe(obra_ids: integer[], account?: string) — Detalhe de obras/empreendimentos por id: endereço, status do orçamento e da obra, nível de apropriação, dados da construção (responsável técnico, pavimentos, área, início e fim), dados de venda e cent - sienge_obras(empresa_id?: integer, tipo?: integer, so_habilitadas_integracao?: boolean, limite?: integer, offset?: integer, max_paginas?: integer, account?: string, empresa_ids?: integer[]) — Empreendimentos e obras (no Sienge a obra é um "enterprise": o id dele é o buildingId de orçamento, planejamento, contratos e medições). Traz id, nome, nome comercial, CNPJ, tipo, empresa, tabela de c - sienge_orcamento_insumos(obra_id: integer, unidade_construtiva_id?: integer, limite?: integer, offset?: integer, max_paginas?: integer, account?: string, obra_ids?: integer[], unidade_construtiva_ids?: integer[]) — Insumos orçados da obra: item da planilha (WBS), código do insumo, descrição, unidade, quantidade, preço unitário e total, data do preço, detalhe e marca. Filtre por unidade construtiva. - sienge_orcamento_itens(obra_id: integer, unidade_construtiva_id: integer, limite?: integer, offset?: integer, max_paginas?: integer, account?: string, obra_ids?: integer[], unidade_construtiva_ids?: integer[]) — Itens de uma planilha do orçamento atual (EAP): código WBS, descrição, unidade, quantidade, preço unitário e total, e preço por categoria (material, mão de obra…). Para todas as obras e versões de uma - sienge_orcamento_planilhas(obra_id: integer, limite?: integer, offset?: integer, max_paginas?: integer, account?: string, obra_ids?: integer[]) — Planilhas da versão atual do orçamento de uma obra: uma por unidade construtiva (building unit). O id da planilha é o unidade_construtiva_id de sienge_orcamento_itens, sienge_orcamento_insumos e sieng - sienge_planejamento_medicoes(obra_id?: integer, unidade_construtiva_id?: integer, data_inicio?: string, data_fim?: string, medicao_numero?: integer, limite?: integer, offset?: integer, max_paginas?: integer, account?: string, obra_ids?: integer[], unidade_construtiva_ids?: integer[]) — Medições de avanço físico do planejamento (progress logs): número da medição, data, responsável, consistência e aprovação. - sienge_planejamento_tarefas(obra_id: integer, unidade_construtiva_id: integer, limite?: integer, offset?: integer, max_paginas?: integer, account?: string, obra_ids?: integer[], unidade_construtiva_ids?: integer[]) — Cronograma (versão atual do planejamento) de uma planilha da obra: tarefas com nível, início e fim, duração, quantidade, valor, execução planejada mês a mês (% planejado) e itens de orçamento ligados. - sienge_unidades(obra_id?: integer, situacao_comercial?: string, nome?: string, limite?: integer, offset?: integer, max_paginas?: integer, account?: string, obra_ids?: integer[]) — Unidades dos empreendimentos (estoque de imóveis): nome, tipo, situação comercial, áreas privativa/comum/terreno, fração ideal, andar, previsão de entrega e avaliação. ## Example prompts - "Which projects are active and what is the budgeted vs incurred cost of each this year?" - "Show the schedule for project 12 and what was planned for this month" - "How much do we owe in the next 30 days, by project and by supplier?" ## Links Docs: https://mcp.ai/docs/mcps/sienge Website: https://mcp.ai/mcps/sienge