Using AI to speed up development

I believe more in generalization and re-use of code than automatic generation of "duplicate" code.

Imb.

It is very instructive to explore the generalization of underlying processes in Access.
It can go beyond the borders of standard Access.
In that area AI can not help.

It brings me to the question: Is standard Access - the way it is developped - the ONLY way to work with?
Or are there other ways for more functionality but different "cosmetics"?
 
I try to create projects that correspond roughly to subjects of development, so that it has a chance to put chunks of memory about certain things in certain places, then create new chats within that Project when appropriate, it seems to work better
 
Hm. It's almost like you have assumed the role of "Project Manager" and assigned your AI the role of "Able Assistant".
 
It is very instructive to explore the generalization of underlying processes in Access.
It can go beyond the borders of standard Access.
In that area AI can not help.

It brings me to the question: Is standard Access - the way it is developped - the ONLY way to work with?
Or are there other ways for more functionality but different "cosmetics"?
Explain why AI can not help generalize processes.

What is it within the AI LLM that prevents this possibility?
 
It brings me to the question: Is standard Access - the way it is developped - the ONLY way to work with?
Or are there other ways for more functionality but different "cosmetics"?

If you have something suitable, even an old copy of VB6, that can generate machine code and can make a callable entry point to a SUB or FUNCTION, you can create your own "reference" library, using Access and/or VBA as scaffolding. That could lead to different functionality or cosmetics. But in the final analysis, if Access is your base, what you do is going to have to look like something that Access itself could have done. In a sense, this is the old conundrum of "If what you have is a hammer, everything needs to capable of being nailed." (Or percussively adjusted.)

If you write something in another environment, you have to be able to call appropriate tools to modify Access native data or use ODBC methods for SQL Server stuff. Because as along as the "standard tools" still are involved - in this case, Access or SQL Server - you can't make it look totally like something else. If it was supposed to be a database, it has to look like a database at the end of the day.

If you try something web-based, the ugliest issue is calling functions from a web page. Access no longer handles ADP, so that is out of the window. If you tried to download some program as part of a web page, your anti-virus or internet security package would screech like a banshee about that download attempt.

So I guess the answer is, within limits, a "definite MAYBE, but don't go too far astray" on different functionality and cosmetics.
 
Hm. It's almost like you have assumed the role of "Project Manager" and assigned your AI the role of "Able Assistant".
tell my manager, sounds like I need a raise!

but no actually, in all honesty, we just experienced a small lay-off at our company which impacted my closest coworker. So I"m lucky and grateful to still have the job.
 
Further remarks about AI usage.
I eventually abandoned Chat GPT as i became fed up with the frequency of ChatGPT internal adverts/promotions etc. that had the effect of making ChatGPT lose its "memory" Also its approach to debugging was akin to chasing rabbits through a warren. I am now using Claude and I am very impressed. I also like the way it doesn't keep stroking my ego like ChatGPT did.
The best thing I have learned through the migration process is that while it can be useful to have one AI check the work of another, one has be be careful in that I think most AI Agents have been "taught" to rather start from scratch. When one can convince AI to rather examine the code and look for ways of improving it, Claude, in particular is great. To be fair, my limited experience with Gemini has also been impressive.
Bottom line, using AI to do the "grunt" work after I have created a structures and processes has made me immeasurably more productive.
Its like working in an office with a thousand of the world's best programmers and finding that all of them are excited to be able to help all the time. And none of them get snarky when I ask a dumb question:giggle:
 
It is very instructive to explore the generalization of underlying processes in Access.
It can go beyond the borders of standard Access.
In that area AI can not help.

It brings me to the question: Is standard Access - the way it is developped - the ONLY way to work with?
Or are there other ways for more functionality but different "cosmetics"?
There are some Access MCP servers to help with development on GitHub. I've listed several repo names below. All should be compatible with any AI that uses MCP, like Copilot or Claude.

Repo names:

• unmateria/MCP-Access
• brickly26/MS-Access-mcp
• sub-arjun/OMNI-MS-Access-MCP
• canzy/mcp-server-access-mdb
 
There are some Access MCP servers to help with development on GitHub. I've listed several repo names below. All should be compatible with any AI that uses MCP, like Copilot or Claude.

Repo names:

• unmateria/MCP-Access
• brickly26/MS-Access-mcp
• sub-arjun/OMNI-MS-Access-MCP
• canzy/mcp-server-access-mdb
Perhaps it would help to have a brief summary of the concept of an MCP and what it does. Thanks.
 
Perhaps it would help to have a brief summary of the concept of an MCP and what it does. Thanks.
Model Context Protocol (MCP) is an open-source standard that allows AI models (like Claude or GPT) to seamlessly connect with external data sources and tools—such as databases, files, and APIs. Developed by Anthropic, it acts as a universal translator, enabling AI to securely perform actions (tools) and read data (resources) rather than just providing text responses.

I use the unmateria/MCP-access server to give AI the ability to read, create, edit, delete, and compile all objects in Microsoft Access databases (.accdb /.mdb) via pywin32 COM automation in VS Code Copilot chat or CLI. I use Python in my other areas of work, so it was a good choice for me. Other MCPs use node/npx or C#/.NET as the language of choice for automation. It also gives the AI the ability to import any .bas or .cls files and take screenshots of the database. It does this for UI verification through image recognition a lot. The images are temporary, stored in a temp folder in the user's profile, and are deleted almost immediately.

Basically, MCP can do everything for you in Access. You don't even need to touch any of the code if you don't want to. You do have to clear some error/debug windows from time to time, and help guide the AI to success. This has greatly improved my development speed because I'm not copying code, importing things or going back and forth between the AI chat window and Access during the development process.
 
Model Context Protocol (MCP) is an open-source standard that allows AI models (like Claude or GPT) to seamlessly connect with external data sources and tools—such as databases, files, and APIs. Developed by Anthropic, it acts as a universal translator, enabling AI to securely perform actions (tools) and read data (resources) rather than just providing text responses.

I use the unmateria/MCP-access server to give AI the ability to read, create, edit, delete, and compile all objects in Microsoft Access databases (.accdb /.mdb) via pywin32 COM automation in VS Code Copilot chat or CLI. I use Python in my other areas of work, so it was a good choice for me. Other MCPs use node/npx or C#/.NET as the language of choice for automation. It also gives the AI the ability to import any .bas or .cls files and take screenshots of the database. It does this for UI verification through image recognition a lot. The images are temporary, stored in a temp folder in the user's profile, and are deleted almost immediately.

Basically, MCP can do everything for you in Access. You don't even need to touch any of the code if you don't want to. You do have to clear some error/debug windows from time to time, and help guide the AI to success. This has greatly improved my development speed because I'm not copying code, importing things or going back and forth between the AI chat window and Access during the development process.
Sounds great in theory. In practice, are you saying that the MCP directly modifies the accdb itself?
 
Sounds great in theory. In practice, are you saying that the MCP directly modifies the accdb itself?
Yes sir. The AI agent uses the MCP server to directly modify the accdb through tool calling, which are functions that your LLM can actively call, and decides when to use them based on user requests. Tools can write to databases, call external APIs, modify files, or trigger other logic.

Tools are schema-defined interfaces that LLMs can invoke. MCP uses JSON Schema for validation. Each tool performs a single operation with clearly defined inputs and outputs. Tools may require user consent prior to execution, helping to ensure users maintain control over actions taken by a model.
 
Last edited:
Yes sir. The AI agent uses the MCP server to directly modify the accdb through tool calling, which are functions that your LLM can actively call, and decides when to use them based on user requests. Tools can write to databases, call external APIs, modify files, or trigger other logic.

Tools are schema-defined interfaces that LLMs can invoke. MCP uses JSON Schema for validation. Each tool performs a single operation with clearly defined inputs and outputs. Tools may require user consent prior to execution, helping to ensure users maintain control over actions taken by a model.
HI,
How difficult is it to set up an MCP server on one's own machine? I am pretty happy with CLAUDE atm and on occasion use Gemini.
What are the benefits to me going the MCP route? It sounds like possibly a steep learning curve.
Regards

Alan
 
HI,
How difficult is it to set up an MCP server on one's own machine? I am pretty happy with CLAUDE atm and on occasion use Gemini.
What are the benefits to me going the MCP route? It sounds like possibly a steep learning curve.
Regards

Alan
Using Claude Code, I created a very basic MCP server to interact with a database and pull out specific, pre-defined data that can be emailed to another person requesting that data. I did it as a proof of concept. Maybe 2 hours of interacting with Claude Code to accomplish that starting from 0 knowledge or experience. I cite that as an example.

A working MCP that manages Access development would surely be more complex, but with the assistance of an AI, it's quite doable.

You'll find an interesting video published by two Access MVPs, Juan Soto and JuanJo Luna, a day or two ago. In this video they describe this scenario using Northwind as an example.

It just occurred to me. The sequence of events in this discussion and the appearance of this video are indicative of the accelerating speed of change in AI capabilities and implementation.
 
I use Cursor, which is an AI editor and coding agent based on a heavily modified VS Code fork. It has an exceptionally fast & intelligent tab-complete based on SuperMaven, which was a non-LLM, purpose-built, code autocompletion AI. Basically, Cursor is like a much better VS Code + Copilot.

I use the msaccess-vcs-addin to export my Access applications to text files which give Cursor the complete context of what I'm working on. Cursor can read & edit multiple VBA files at the same time, create new files, etc. So it can do things like make changes to the code for a form and its subforms where they're affected. I've also experimented a little, and found some success, having it create/modify forms themselves. It might be viable for just roughing things out so you don't have to create all the controls from scratch. It wasn't that good with layout. I haven't tried in a while with the newer models; it could be even better by now.

I basically never use the VBE to code; all coding is done in Cursor, essentially VS Code, which is a million times better than the VBE. (If you haven't used multiple-cursor editing or regex find-replace, you haven't lived!) I usually just copy and paste from Cursor into the VBE, but the msaccess-vcs-addin can also import the changes directly. I'm sure there's a way to automate the process more but I just haven't looked into it yet. (Does anyone still code in the VBE?)

I use Git for version control, so it's very easy to see the history of everything that's changed (and not worry about the AI, or me, messing things up), not just the VBA, even changes to the forms themselves - like every setting, every control and it's properties, etc. - and basically everything else that makes up an Access project - queries, table definitions, etc. That's actually gotten me out of some jams when something got corrupted and messed up my forms or data sources, but I was able to edit the export files and re-import them.

I never thought of looking for an Access MCP until I read this thread. Sounds like it might be able to keep me from having to copy and paste code. I'm definitely going to try that out.
 

Attachments

  • Cursor AI.png
    Cursor AI.png
    298.9 KB · Views: 5
HI,
How difficult is it to set up an MCP server on one's own machine? I am pretty happy with CLAUDE atm and on occasion use Gemini.
What are the benefits to me going the MCP route? It sounds like possibly a steep learning curve.
Regards

Alan
It's not difficult if you have experience working in other languages besides VBA. I mentioned in an earlier post that I use Python for other things, so I use unmateria/MCP-access server, which has the most features for interacting with the database via Python. It took me all of 30 seconds to set up. I just installed the Python dependencies, cloned the repo, and added the necessary .vscode/mcp.json folder/file to my workspace.

If set up properly, the AI will recognize it. All the Access MCP servers I listed in an earlier post should have installation instructions in their repos. If you can't figure it out, your AI assistant can usually help troubleshoot. I've attached a screenshot of the .vscode/mcp.json folder/file that I mentioned above. The arg is the path to the access_mcp_server.py script. Hopefully that helps a bit.

1774553253963.png
 
Hi guys! :) Im that Unmateria oldie from the mcp ahhhahah... :D The easiest way (for me) to install the mcp is just to download the repository and tell claude code to install it. Later, u only have to write /mcp, selecct access-mcp and tell him what to do with any accdb. Any bug you see or any thing u would like to see implemented, just tell me, altough the mcp born like a personal tool for personal use, Im opened for everything and mostly everyday I implement something on it (well, claude implements it, im just the boss hahahhaha)
 
Using Claude Code, I created a very basic MCP server to interact with a database and pull out specific, pre-defined data that can be emailed to another person requesting that data. I did it as a proof of concept. Maybe 2 hours of interacting with Claude Code to accomplish that starting from 0 knowledge or experience. I cite that as an example.

A working MCP that manages Access development would surely be more complex, but with the assistance of an AI, it's quite doable.

You'll find an interesting video published by two Access MVPs, Juan Soto and JuanJo Luna, a day or two ago. In this video they describe this scenario using Northwind as an example.

It just occurred to me. The sequence of events in this discussion and the appearance of this video are indicative of the accelerating speed of change in AI capabilities and implementation.
Making an MCP on this times is really easy and fast and debugging it even a pleasure! :) hahahha... Yep, my mcp is complex but the implementation was really easy thanks to CC. Check it and maybe blow your mind because that video is just past nowadays with Access.
 
Further remarks about AI usage.
I eventually abandoned Chat GPT as i became fed up with the frequency of ChatGPT internal adverts/promotions etc. that had the effect of making ChatGPT lose its "memory" Also its approach to debugging was akin to chasing rabbits through a warren. I am now using Claude and I am very impressed. I also like the way it doesn't keep stroking my ego like ChatGPT did.
The best thing I have learned through the migration process is that while it can be useful to have one AI check the work of another, one has be be careful in that I think most AI Agents have been "taught" to rather start from scratch. When one can convince AI to rather examine the code and look for ways of improving it, Claude, in particular is great. To be fair, my limited experience with Gemini has also been impressive.
Bottom line, using AI to do the "grunt" work after I have created a structures and processes has made me immeasurably more productive.
Its like working in an office with a thousand of the world's best programmers and finding that all of them are excited to be able to help all the time. And none of them get snarky when I ask a dumb question:giggle:
I have been using Copilot for coding support. The latest was a SQL Server query to close stale connections. While it did produce functional T-SQL, I find it to be a sloppy programmer. The query required editing for simple things like defining variables at the top of the code. Does Claude do a better job with the basics?
 
I have been using Copilot for coding support. The latest was a SQL Server query to close stale connections. While it did produce functional T-SQL, I find it to be a sloppy programmer. The query required editing for simple things like defining variables at the top of the code. Does Claude do a better job with the basics?
CC does it extremely good. As an example, I refactored tonight like 10000 lines of code in 320 subs ... just made 2 or 3 bugs (2 of them, he forgot a CLNG, and the other he forgot to make a sub altought he documented it) because when context window gets full (about 200k tokens), it begins to forget some stupid things (like all LLMs). Just mantain it under 200k, and Claude Code + opus 4.6 with mcp is really a game changer (nothing similar I've ever tested... and believe me that I have slept little this year testing things hahhahah)
 

Users who are viewing this thread

Back
Top Bottom