Good morning Goswin,
This is just an idea I want to run by you.
A week ago in F# weekly, there was a post about an mcp server for F# interactive. The goal by Jo van Eyck was to have an LLM agent support the F# scripting, not only by having access to the F# script, but also to the fsi input/output.
Last week I gave it a try using fsi-mcp-server, and it does improve my REPL experience by opting-in the LLM support when I think it is helpful. For example, I can point the LLM agent to the Autodesk API documentation, and it does seem to grasp how to use it.
The way fsi-mcp seems to work, is to let your IDE call an fsi-mcp-server.exe instead of fsi.exe directly and it seems to happen in here. The fsi.exe stdin/stdout is redirected via this executable, which in turn accepts the stdin from your IDE, or listens to a port for the LLM input output. All in all a pretty lightweight but robust setup.
Now for my question: do you think Fesh.Revit could be opened up in a similar fashion (mcp service style) to the outside world? That would mean a path for an LLM agent to drive a part of the Revit modelling. I am aware you do not use fsi.exe, but the F# compiler service, but that should bring the same capabilities.
Curious to hear your perspective on this.
All the best, Dennis
Good morning Goswin,
This is just an idea I want to run by you.
A week ago in F# weekly, there was a post about an mcp server for F# interactive. The goal by Jo van Eyck was to have an LLM agent support the F# scripting, not only by having access to the F# script, but also to the fsi input/output.
Last week I gave it a try using fsi-mcp-server, and it does improve my REPL experience by opting-in the LLM support when I think it is helpful. For example, I can point the LLM agent to the Autodesk API documentation, and it does seem to grasp how to use it.
The way fsi-mcp seems to work, is to let your IDE call an fsi-mcp-server.exe instead of fsi.exe directly and it seems to happen in here. The fsi.exe stdin/stdout is redirected via this executable, which in turn accepts the stdin from your IDE, or listens to a port for the LLM input output. All in all a pretty lightweight but robust setup.
Now for my question: do you think Fesh.Revit could be opened up in a similar fashion (mcp service style) to the outside world? That would mean a path for an LLM agent to drive a part of the Revit modelling. I am aware you do not use fsi.exe, but the F# compiler service, but that should bring the same capabilities.
Curious to hear your perspective on this.
All the best, Dennis