Skip to main content
Glama
ramide1

arca-mcp

by ramide1

arca-mcp

MCP server for ARCA (Agencia de Recaudacion y Control Aduanero) - provides tools via stdio transport.

Installation

bun install

Related MCP server: ArcaMCP

Usage

# Start the server
bun run start

# Type check (no emission due to noEmit: true in tsconfig)
bun tsc

Environment Variables

Required for AFIP authentication (WS-AAA):

  • ARCA_WSAA_CERT: Certificate file (default: ghf.crt)

  • ARCA_WSAA_PRIVATE_KEY: Private key file (default: ghf.key)

  • ARCA_WSAA_PASSWORD: Private key password (default: empty)

  • ARCA_TEST_MODE: Set to false for production; any other value (or unset) uses homologation

  • ARCA_FETCH_LIMIT: SOAP retry attempts (default: 3)

Certificate and key files are expected in the current directory (or currentDir tool parameter).

Important Notes

  • CUIT format: All tools require CUIT in XX-XXXXXXXX-X format (validated via Zod)

  • WSDL caching: WSDL files are downloaded to ./{service}_{env}.wsdl (e.g., wsfe_test.wsdl) and reused for 1 year

  • OpenSSL required: The signTra function uses openssl cms for signing; ensure OpenSSL is installed and in PATH

  • SOAP services: Communicates with AFIP's WS-FE (electronic invoicing) and WSAA (authentication) services

  • Temp files: Creates TRA_*.xml and TA_*.xml files in the directory specified by currentDir (default: ./)

  • TypeScript: Strict type checking enabled; moduleResolution: bundler (Bun-specific)

Project Structure

src/
├── main.ts           # Entry point
├── tool.ts           # MCP tool definitions (AFIP service wrappers)
├── arcaService.ts    # SOAP client implementation
└── interface.ts      # Unused (empty)

Development Notes

  • No test framework configured; manual testing via MCP tools recommended

  • No lint/formatter config in repo (though .gitignore references ESLint/Prettier)

  • Uses Bun's built-in test runner? Not configured

  • WSDL downloads occur on first use or when cached file >1 year old

License

MIT

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    F
    maintenance
    Argentine electronic invoicing (facturación electrónica) MCP Server for ARCA/AFIP. Emit invoices, manage credentials, check delegations, and look up taxpayers. 10 tools.
    12
    378 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server for automating AFIP/ARCA electronic invoicing, certificate management, and Web Service authorization in Argentina.
    7 npm
    21
    MIT