Microsoft Access Database MCP server
Read and edit Microsoft Access databases (.accdb/.mdb) - forms, VBA, tables, queries. Windows.
54 stars
Reviews
Write oneNobody has reviewed Microsoft Access Database yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Microsoft Access Database tools (36, 7 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
access_closeCloses the COM session and releases the .accdb/.mdb file.
access_compact_repairCompacts and repairs the database. Closes, compacts to temp, replaces original and reopens. Returns sizes.
access_compile_vbaCompiles and saves all VBA modules. A dialog watchdog always runs and dismisses any error MsgBox; the watchdog is given `timeout` seconds (default 2) of grace after the compile call returns before being stopped.
access_create_databasewrite actionCreates an empty Access database (.accdb). Error if the file already exists.
access_create_relationshipwrite actionCreates a relationship between two tables. attributes: 256=cascade update, 4096=cascade delete (combinable with OR).
access_delete_controlwrite actionDeletes a control from a form/report via COM.
access_delete_objectwrite actionDeletes an Access object (module, form, report, query, macro). Requires confirm=true.
access_eval_vbaEvaluates a VBA/Access expression via Application.Eval. Works with: domain functions (DLookup, DCount...), built-in VBA functions (Date(), Len()...), form properties of OPEN forms (Forms!frmX.Prop), public functions in standard modules. Does NOT work with: class instances (even default/predeclared), variables, Subs. For class instances use access_run_vba with a wrapper function, or this tool will
access_export_textExports form/report/module as text (SaveAsText). Does NOT open in Design view — does not recalculate positions. File is UTF-16 LE.
access_get_controlFull definition (Begin...End) of a control by name.
access_get_db_propertyReads a database property (CurrentDb.Properties) or Access option (GetOption).
access_get_field_propertiesReads all properties of a field: DefaultValue, ValidationRule, Description, Format, etc.
access_import_textImports form/report/module from text (LoadFromText). REPLACES if exists. Does NOT open in Design view — does not recalculate positions. For forms/reports with CodeBehindForm: separates VBA automatically and injects via VBE (same as access_set_code).
access_list_controlsLists controls of a form/report with name, type, caption, control_source, position.
access_list_indexesLists indexes of a table: name, fields, primary, unique, foreign.
access_list_objectsLists database objects by type (table, module, form, report, query, macro, all). System tables (MSys*, ~*) are filtered out. Macros are fully supported as a regular object_type — combine with access_get_code / access_set_code / access_run_macro for end-to-end macro workflows.
access_list_referencesLists VBA references: name, GUID, path, is_broken, built_in.
access_list_relationshipsLists relationships between tables: name, tables, fields, cascade flags.
access_list_startup_optionsLists the 14 common startup options with their current values.
access_manage_indexwrite actionCreates or deletes an index. create requires fields [{name, order?}]. primary/unique optional.
access_manage_referenceAdds (add) or removes (remove) a VBA reference. add: requires guid or path. remove: requires name.
access_run_macrowrite actionExecutes an Access macro by name.
access_run_vbawrite actionExecutes a VBA Sub/Function. Supports 3 syntaxes: 'Module.MySub' (standard module via Application.Run), 'MySub' (same), 'Forms.FormName.Method' (form module via COM — form must be open). Returns result if Function. With timeout, automatically dismisses MsgBox/InputBox if exceeded.
access_screenshotCaptures the Access window as PNG. Optionally opens a form/report before capturing. Returns path, dimensions and metadata. wait_ms pumps Windows messages (Timer events, ActiveX init).
access_search_queriesSearches for text or regex in the SQL of ALL queries. Returns [{query_name, sql}].
access_set_control_propsModifies properties of a control via COM. Numeric/boolean values are converted automatically.
access_set_db_propertySets a database property or Access option. Creates the property if it does not exist.
access_set_field_propertySets a field property. Creates the property if it does not exist.
access_set_form_propertySets form/report-level properties (RecordSource, Caption, DefaultView, HasModule, etc.) via COM in Design view.
access_table_infoTable structure via DAO: fields, types, size, required, record_count, is_linked.
access_tipsTips and gotchas for working with Access via MCP. Topics: eval, controls, gotchas, sql, vbe, compile, design_vbe, macros, lint, layout, design, subform_tabcontrol. Without topic returns the list.
access_ui_clickClick at image coordinates on the Access window. Coordinates are relative to a previous screenshot (image_width required for scaling).
access_ui_typeTypes text or sends keyboard shortcuts to the Access window. Use 'text' for normal text, 'key' for special keys (enter, tab, escape, f1-f12, etc.), 'modifiers' for combinations (ctrl, shift, alt).
access_vbe_appendAppends code to the end of a VBA module.
access_vbe_get_linesReads a range of lines from a VBA module via VBE COM. Provide either count or end_line (not both).
access_vbe_search_allSearches for text or regex in ALL VBA modules (modules, forms, reports) in the database.
Public scan report
scanner v0.1.9 · 2026-09-20 · same rubric, same numbers if you re-run it
- Code scan26 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 13 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Install directly
claude mcp add msaccess-database -- uvx mcp-msaccess-database
Microsoft Access Database: common questions
- Is Microsoft Access Database MCP server safe?
- Yes, by our scan: it is graded A (92/100). Read the Microsoft Access Database safety report
- How do I install Microsoft Access Database?
- It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
- Does Microsoft Access Database need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Microsoft Access Database maintained?
- The last commit was 14 days ago (2026-09-06). The latest release is v0.7.59.
- What can I use instead of Microsoft Access Database?
- Servers from other publishers that do the same job: CADBridge MCP Server for AutoCAD, DBHub MCP server and MCP Toolbox for Databases MCP server. Compare all Microsoft Access Database alternatives.
Alternatives to Microsoft Access Database
Same job from other publishers: the closest match first, then the best rated.
CADBridge MCP Server for AutoCADControl AutoCAD with AI: commands, read/edit/write drawing database, AutoLISP, scripts, PDF plots.not reviewedNewC- DBHubToken-efficient database MCP server for PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, SQLitenot reviewedWidely usedA
- MCP Toolbox for DatabasesMCP Toolbox for Databases enables your agent to connect to your database.not reviewedEstablishedA
- NeonOfficial Neon MCP server for managing Neon projects and Lakebase Postgres databases.not reviewedEstablishedA
- LINQ to DBInspect database schemas and execute SQL queries across multiple database providers with LINQ to DB.not reviewedEstablishedA