LabscoMCP early access ↗
infatonMCP SERVER

Infaton 1c MCP

Reach a 1C:Enterprise database from an AI assistant — metadata, queries, documents and registers, accounting balances, rights audit and SKD reports.

by infaton ↗ERP & Vertical Business SystemsCommunity

LABSCO SUMMARY

Set `ONEC_ALLOWED_TOOLS` before you connect it to a live database.

This reaches into a production ERP, and several tools change it: execute_code runs arbitrary BSL in privileged mode, delete_object marks records for deletion, import_data creates and modifies in bulk, run_scheduled_job starts jobs, and posting tools alter register movements. The README ships a read-only allow list for exactly this reason — start from it, add what a given scenario needs, and give the server its own 1C user with minimal rights rather than an administrator's.

What it is

An MCP server that runs inside 1C:Enterprise itself. A configuration extension publishes an HTTP service in the database, and a Node.js wrapper bridges stdio clients to it over Basic Auth. The README counts 91 tools in version 6.0.2, but its catalogue tables cover only the base 51, grouped from metadata and querying through CRUD, administration and accounting. The later additions — reports, rights audits, user settings, snapshots and ERP business data — are listed in Module.bsl and the changelog, so check that your server's tool list includes them before you plan around one.

What you get

  • The configuration's metadata read directly: the object tree, an object's full structure, its attributes and tabular sections, enum values, register dimensions, a document's register movements, and metadata search by name or synonym — get_metadata_tree, get_object_metadata, get_object_attributes, get_object_tabular_sections, get_enum_values, get_register_dimensions, get_document_movements, search_metadata
  • Data read with arbitrary 1C queries or by reference, code, name and filter, including register records and filtered document lists — execute_query, get_object_by_ref, get_list, find_by_code, find_by_name, get_register_records, get_document_list
  • Objects created, updated, copied, marked for deletion, posted and unposted, down to a single attribute — create_object, update_object, copy_object, delete_object, post_document, unpost_document, set_attribute
  • Accounting answers rather than raw rows: balances and turnover on any chart of accounts, accumulation-register totals, a document's debit/credit entries, and the chain of documents entered on the basis of one another — get_balance, get_register_totals, get_accounting_entries, get_related_documents
  • Operational checks before you commit: a document validated without posting, duplicates found in a catalogue by attribute, a managed form's structure, and the current user's rights on an object — validate_document, find_duplicates, get_form_structure, get_rights
  • Administration: active users and sessions, the event log with filters, current data locks, platform and configuration info, referential integrity checks, scheduled jobs and installed extensions — get_active_users, get_event_log, get_locks, get_server_info, check_references, run_scheduled_job, get_configuration_extensions
  • Integration and bulk work: data exchange runs and their log, JSON import, batch execution of several tools in one call, and changes since a timestamp for change capture — exchange_execute, get_exchange_log, import_data, execute_batch, get_changes_since
  • Reports and code: SKD reports generated, print forms produced through the printing subsystem, module text read, and expressions evaluated — generate_report, get_print_form, get_module_text, evaluate_expression

Requirements

A 1C:Enterprise database you can install a configuration extension into: load INFATON_MCP.cfe in the Configurator and update the database, which publishes the HTTP service. The client then needs ONEC_URL pointing at that service plus ONEC_USER and ONEC_PASSWORD. The stdio wrapper is not on npm, so it runs from a clone of the repository: the client starts index.mjs inside the MCP35 folder, with Node.js 18+. Platform 8.3.20+ , tested on 8.3.27.1989, against ERP 2.5, УПП 1.3, Бухгалтерия 3.0, УТ 11 and КА 2. Basic Auth sends the credentials base64-encoded, so publish the service over HTTPS.

Setup effort

Build from source — git clone https://github.com/infaton/MCP35.git