MCP-Access: Microsoft Access through an agent

MCP-Access

An MCP server with 69 tools for .accdb databases: forms, VBA, tables, queries and controls over COM, Windows only

  • 67 ★ on the repository
  • Last commit
MCP server

Broad access

Why this level

  • The agent changes forms, VBA and table structure of the database, and SQL and object deletion are available behind confirmation flags
  • With MCP_ACCESS_ALLOW_CODE_EXEC on, the agent runs arbitrary VBA on your computer
All reasons and checks

unmateria/mcp-access

Install

Manual install

claude mcp add access -- python C:\path\to\access_mcp_server.py

The README command. Use the real path to the server script and install pywin32 and pillow first.

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The agent changes forms, VBA and table structure of the database, and SQL and object deletion are available behind confirmation flags
  • With MCP_ACCESS_ALLOW_CODE_EXEC on, the agent runs arbitrary VBA on your computer

This is third-party code. Review the repository files before installing.

What it does

MCP-Access drives an installed Microsoft Access through COM automation and gives the agent 69 tools. For forms and reports it offers create, clone, export, import and screenshots. VBA code can be read, written, replaced line by line or by whole procedure and compiled. Controls are created, changed and deleted, including those inside TabControl pages. For tables and SQL the server works through DAO: it creates and alters tables, runs queries and batches of statements and searches text across all Text and Memo fields. Linked ODBC tables, relationships, indexes, references, queries and macros are supported. Maintenance includes compact and repair, decompiling bloated databases and exporting structure to Markdown. The access_lint_form tool flags objectively broken layouts: white-on-white text, overlaps, truncation and off-canvas controls. The installed Office is autodetected. Running VBA and macros is off by default.

Who it is for. Developers and admins who maintain Microsoft Access databases with forms and VBA and want to speed up edits through an agent.

Good fit when

  • A form with a list, date filters and a search button should be created from a description
  • A click handler in VBA must be added to a form module and the project compiled
  • An audit table with time, user and action fields should be created through DAO
  • A bloated database needs compacting, repairing and a Markdown structure export
  • Form layouts should be checked for white-on-white text and overlaps

Not a fit when

  • You need macOS, Linux or web Access: the server uses COM and runs on Windows only
  • Only the Access runtime is installed without the full program: full Microsoft Access 2010 or newer is needed
  • Trusted access to the VBA object model is off: without it the VBA tools will not work

Example request

Create a form Invoices in the database with a list, two date filters and a search button, then add a VBA handler to the button.

MCP

Transport
stdio
Authentication
not required

Environment variables

MCP_ACCESS_ALLOW_CODE_EXEC
Enables the VBA and macro run tools

Limitations

It works only on Windows with Microsoft Access installed, any version from 2010 that has a VBA editor, and Python 3.10 or newer. In the Trust Center you must enable trusted access to the VBA project object model, and the enable_vba_trust.ps1 script does it. The author tested the server only with Claude Code. Macro and VBA run tools execute arbitrary code, so they are enabled by a separate MCP_ACCESS_ALLOW_CODE_EXEC variable. Destructive SQL and object deletion need explicit confirmation flags. The repository states no license.

How to disable. Run claude mcp remove access. Delete the script and dependencies by hand and turn off trusted access to the VBA object model in the Access Trust Center.

FAQ

Which systems are supported?

Windows only, because automation goes through COM. Microsoft Access 2010 or newer and Python 3.10 or newer must be installed.

How do I enable running VBA?

Set the MCP_ACCESS_ALLOW_CODE_EXEC environment variable. Without it access_run_macro, access_run_vba and access_eval_vba refuse because they run arbitrary code.

Are destructive operations guarded?

Yes. Object deletion, DELETE, DROP and ALTER in SQL and field deletion need an explicit confirm or confirm_destructive flag.

What does access_lint_form do?

Checks a form for objective layout defects: white-on-white text, overlaps, truncated text and off-canvas controls. It is a checker and does not do design.

Can I edit existing forms and modules?

Yes, access_get_code exports an object definition as text and access_set_code imports the modified text back. Cloning preserves VBA and binary sections.

Discussion

No questions or reviews yet.

An MCP server that knows every class, table and form in your D365FO code and checks X++ signatures before the agent writes code

MCP serverBroad access171Repository stars

An MCP server that lets an agent read files, search code and run commands in a workspace

MCP serverBroad access1.2KRepository stars
Russian stack

A Python MCP server connecting to a 1C infobase via V83.COMConnector, with nothing to install inside the base itself

MCP serverBroad access
Russian stack

A Python proxy between an MCP client and a 1C HTTP service: reads metadata, object structure and predefined data, with optional OAuth2

MCP serverExtended access9Repository stars

An MCP server for SAP ABAP: an agent finds objects, reads and edits sources, checks syntax and handles transports through ADT

MCP serverBroad access213Repository stars

1C OData MCP with a JSON cache

MCP сервер для работы с OData 1C

Russian stack

A Python MCP server over 1C OData: reads and changes catalogs and documents, saving everything to JSON files for local analysis without repeat queries

MCP serverBroad access4Repository stars

README in short

The README shows example prompts, a feature list, requirements, dependency installation and enabling trusted VBA access. Registration in Claude Code and other clients and tool tables by group follow.

README badge

Report a problem