# Class: com.pnfsoftware.jeb.client.mcp.JebMcpServerInstance

Factory for an MCP server bound to the current JEB engines context. 

 How to start the MCP server: 
 
- Automatic start when VIBRE dialog is brought up in the GUI. 
- Manual start from the GUI \(*File* menu\). 
- Programmatically, call one of the `start(...)` methods. 

 

 VIBRE automatically uses JEB's MCP server. However, it can be used by any agent that supports the registration of external MCP servers. Several tools use a standardized `mcpServers` key in their Json configuration file \(Claude's `claude_desktop_config.json`, LM Studio's `mcp.json`, etc.\). If you use the default settings for JEB's MCP, you add something like: 

```

 "jeb-mcp-server": {
    "command": "npx",
    "args": [
      "-y",
      "mcp-remote",
      "http://localhost:8425/mcp"
    ]
  }

 
```

## Constructor: JebMcpServerInstance


## Static Field: DEFAULT_ENDPOINT
Type: `java.lang.String`

Constant value: `/mcp`
Description: Default HTTP endpoint path.

## Static Field: DEFAULT_HOST
Type: `java.lang.String`

Constant value: `localhost`
Description: Default server hostname.

## Static Field: DEFAULT_PORT
Type: `int`

Constant value: `8425`
Description: Default server port.

## Static Method: get
- return type: `com.pnfsoftware.jeb.client.mcp.IJebMcpServer`

Description: Get the current singleton server instance.
return: the running server, or null if none was started

## Static Method: start
- return type: `com.pnfsoftware.jeb.client.mcp.IJebMcpServer`

Description: Start the singleton MCP server bound to the current JEB engines, using the default port and default endpoint.
return: the running server instance, or null if startup failed

## Static Method: start
- parameter: `hostname`, type: `java.lang.String`
- parameter: `preferredServerPort`, type: `int`
- parameter: `endpoint`, type: `java.lang.String`
- return type: `com.pnfsoftware.jeb.client.mcp.IJebMcpServer`

Description: Start the singleton MCP server bound to the current JEB engines.
parameter: hostname: hostname to bind to; null to use the default
parameter: preferredServerPort: port to listen on; 0 to use the default
parameter: endpoint: endpoint for clients; null to use the default
return: the running server instance, or null if startup failed

## Static Method: start
- parameter: `hostname`, type: `java.lang.String`
- parameter: `preferredServerPort`, type: `int`
- parameter: `endpoint`, type: `java.lang.String`
- parameter: `clientContext`, type: `com.pnfsoftware.jeb.client.api.IClientContext`
- return type: `com.pnfsoftware.jeb.client.mcp.IJebMcpServer`

Description: Start the singleton MCP server bound to the current JEB engines.
parameter: hostname: hostname to bind to; null to use the default
parameter: preferredServerPort: port to listen on; 0 to use the default
parameter: endpoint: endpoint for clients; null to use the default
parameter: clientContext: an optional client context \(the MCP server may offer a different set of            tools based on the JEB context; example: if a [GUI            context](IGraphicalClientContext) is provided, the server will attempt to provide UI\-specific tools on top            of the standard tool set\)
return: the running server instance, or null if startup failed

## Static Method: stop
- return type: `boolean`

Description: Stop the singleton MCP server bound to the current JEB engines.
return: success indicator

