The shape of the API decides how you use it: `login` returns a session id that every other call carries, so a working sequence always starts there and the session id should not be shared. Use the API credentials generated in the platform rather than your own login, and prefer the prompted-input setup so the password is stored by the editor instead of sitting in a config file.
An MCP server for the AverbePorto platform, which handles cargo insurance endorsements for Brazilian shipping documents. It covers the working loop: authenticate, upload an XML document, look up protocols, search what was sent, and break a 44-digit access key into its parts.
- Authentication that returns a `sessionId` every other tool reuses — `login`, taking `user` and `pass`
- XML document upload returning an `uploadId`, with optional recipient and version — `upload`
- Protocol lookup in both directions, key to protocol or protocol to key, with output as json, xml or csv — `consultProtocol`
- A search over documents already sent — by type (DI, MDF-e, CT-e, NF-e, Minuta CT-e), by date range with `dtStart` and `dtLimit`, by date type (Update, Emission, Send), with paging and filters on the parties involved — `retrieveDocument`
- A 44-digit NF-e, CT-e or MDF-e access key decomposed for analysis — `decomposeKey`
An AverbePorto account, with API credentials generated in the platform under user registration. Node running the built `build/index.js`, or the Smithery one-liner `npx -y @smithery/cli install @GHSix/averbeporto-mcp --client claude`. The VS Code and Copilot setup is documented with prompted inputs that store the credentials and inject them as `AVERBEPORTO_USER` and `AVERBEPORTO_PASS`, so they are not written into the config file. The package version is 1.1.0.
One command plus a key — npx -y @smithery/cli install @GHSix/averbeporto-mcp --client claude, then supply credentials
