mcp_server

Rahulghuge94/mcp_server

3.1

If you are the rightful owner of mcp_server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

The Model Context Protocol (MCP) server is a Ruby-based implementation designed to facilitate communication and data exchange between modeling software and external clients.

mcp_server

Model Context Protocol (MCP) implementation in Ruby 2.4.xx.

Overview

mcp_server is a Ruby-based implementation of the Model Context Protocol (MCP), designed to facilitate communication and data exchange between modeling software and external clients. It provides a server interface for handling MCP requests, supporting multiple transport protocols and integration with Innovyze InfoWorks ICM and WS Pro environments.

Features

  • Supports multiple MCP transport protocols (STDIO, TCP and HTTP)
  • Modular server architecture for easy extension
  • Ruby 2.4.xx compatibility

Directory Structure

.
ā”œā”€ā”€ Gemfile                  # Ruby gem dependencies
ā”œā”€ā”€ LICENSE                  # License information
ā”œā”€ā”€ README.md                # Project documentation
ā”œā”€ā”€ mcp_server.gemspec       # Gem specification
ā”œā”€ā”€ lib/
│   └── mcp_server.rb        # Main library file
ā”œā”€ā”€ scripts/
│   ā”œā”€ā”€ icm_mcp_server.rb    # ICM-specific server script
│   └── mcp_server.rb        # General server script

Installation

  1. Ensure you have Ruby 2.4.xx installed.
  2. Clone this repository:
    git clone <repository-url>
    cd mcp_server
    
  3. Install dependencies:
    bundle install
    

Usage

You can run the MCP server using the provided scripts. STDIO Mode. For example:

ruby scripts/icm_mcp_server.rb

`:

Example For integration with InfoWorks ICM:

ruby scripts/icm_mcp_server.rb

VS Code and Claude Desktop Setup

VS Code Configuration

  1. Open the project folder in VS Code.
  2. Ensure your Ruby interpreter is set to version 2.4.xx.
  3. Create mcp.json under .vscode folder
    {
     "mcpServers": 
         {
             "ICM_MCP": {
                 "command": "iexchange",
                 "args": [
                     "{script_path}/{your_server_script_name}.rb",
                     "/ICM"
                 ],
                 "env": {}
             }
         }
     }
    
    if vscode doesnt understand the iexchange command enter full path to iexchange.exe i.e. C:\Program Files\Innovyze\Infoworks ICM 2024.5\iexchange.exe

Claude Desktop Setup

  1. Download and install Claude Desktop from the official source.
  2. Open claude desktop configuration from File -> Settings -> Developer and click on 'Edit config'
  3. And add same json file used for vscode.
  4. Restart claude desktop and Enjoy interacting with your application.

Contributing

Contributions are welcome! Please fork the repository and submit a pull request.

License

See the file for details.