Skip to content

Commit ff5d3a6

Browse files
Merge pull request #96 from MarcSkovMadsen/enhancement/windows-fixes
windows fixes
2 parents 44fc073 + cd528dd commit ff5d3a6

11 files changed

Lines changed: 32 additions & 17 deletions

File tree

198 KB
Loading
89.8 KB
Loading
29.7 KB
Loading
83.9 KB
Loading
33.2 KB
Loading

docs/explanation/display-server.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ URLs follow the pattern: `http://host:port/view?id={snippet_id}`
116116
The server can be configured via environment variables or CLI flags:
117117

118118
- `PORT`: Port number (default: 5005)
119-
- `ADDRESS`: Host address (default: 127.0.0.1)
119+
- `ADDRESS`: Host address (default: localhost)
120120
- `DISPLAY_DB_PATH`: Database file location
121121

122122
## Design Principles

docs/tutorials/display-server.md

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,11 @@ The Display Server is included with the `holoviz-mcp` package. Please [make sure
3333
Now that you have the server installed, let's start it:
3434

3535
```bash
36+
# If holoviz-mcp installed as package
3637
display-server
38+
39+
# If holoviz-mcp installed as uv tool
40+
uvx --from holoviz-mcp display-server
3741
```
3842

3943
You should see output like this:
@@ -42,10 +46,10 @@ You should see output like this:
4246
Starting Display Server...
4347
Display Server running at:
4448
45-
- Add: http://127.0.0.1:5005/add
46-
- Feed: http://127.0.0.1:5005/feed
47-
- Admin: http://127.0.0.1:5005/admin
48-
- API: http://127.0.0.1:5005/api
49+
- Add: [http://localhost:5005/add](http://localhost:5005/add)
50+
- Feed: [http://localhost:5005/feed](http://localhost:5005/feed)
51+
- Admin: [http://localhost:5005/admin](http://localhost:5005/admin)
52+
- API: [http://localhost:5005/api](http://localhost:5005/api)
4953
```
5054

5155
Great! Your server is now running. Keep this terminal window open while you work through the tutorial.
@@ -65,7 +69,7 @@ Great! Your server is now running. Keep this terminal window open while you work
6569

6670
Let's create your first interactive visualization using the web interface.
6771

68-
Open your web browser and navigate to [`http://127.0.0.1:5005/add`](http://127.0.0.1:5005/add). You'll see a form for creating visualizations.
72+
Open your web browser and navigate to [`http://localhost:5005/add`](http://localhost:5005/add). You'll see a form for creating visualizations.
6973

7074
Now, let's create a simple bar chart. In the code editor, enter the following Python code:
7175

@@ -98,7 +102,7 @@ Click the **Submit** button. You should see a success message with a link to vie
98102

99103
## Step 4: View Your Visualization
100104

101-
After submitting your code, click the link provided on the Add page. This will take you to a unique URL like `http://127.0.0.1:5005/view?id=abc123` where your visualization is displayed.
105+
After submitting your code, click the link provided on the Add page. This will take you to a unique URL like `http://localhost:5005/view?id=abc123` where your visualization is displayed.
102106

103107
![View Page](../assets/images/display-manager-view.png)
104108

@@ -111,7 +115,7 @@ You should now see your interactive bar chart! Try hovering over the bars - you'
111115

112116
As you create more visualizations, you'll want an easy way to browse them. Let's check out the Feed page.
113117

114-
Navigate to [`http://127.0.0.1:5005/feed`](http://127.0.0.1:5005/feed). Here you'll see a list view of your recent visualizations, including:
118+
Navigate to [`http://localhost:5005/feed`](http://localhost:5005/feed). Here you'll see a list view of your recent visualizations, including:
115119

116120
- The visualization name and description
117121
- When it was created
@@ -125,7 +129,7 @@ The Feed page automatically updates to show your most recent work.
125129

126130
Now let's explore the Admin page where you can manage all your visualizations.
127131

128-
Visit [`http://127.0.0.1:5005/admin`](http://127.0.0.1:5005/admin). This page provides a table view of all your snippets where you can:
132+
Visit [`http://localhost:5005/admin`](http://localhost:5005/admin). This page provides a table view of all your snippets where you can:
129133

130134
- See detailed information about each snippet
131135
- Delete visualizations you no longer need
@@ -176,7 +180,7 @@ import requests
176180

177181
# Create a visualization
178182
response = requests.post(
179-
"http://127.0.0.1:5005/api/snippet",
183+
"http://localhost:5005/api/snippet",
180184
headers={"Content-Type": "application/json"},
181185
json={
182186
"code": "a='Hello, HoloViz MCP!'\na",
@@ -197,6 +201,11 @@ python script.py
197201

198202
You should see output showing the status code (200 for success) and the response containing the URL of your new visualization. Visit that URL to see your programmatically-created visualization!
199203

204+
```bash
205+
Status Code: 200
206+
Response: {'id': '6541b6b3-2b16-4ef5-ac4f-c8fe6d59ff1c', 'created_at': '2026-01-10T10:23:55.270232+00:00', 'url': 'http://localhost:5005/view?id=6541b6b3-2b16-4ef5-ac4f-c8fe6d59ff1c'}
207+
```
208+
200209
!!! success "Well Done!"
201210
You can now create visualizations both interactively through the web interface and programmatically through the REST API.
202211

docs/tutorials/display-tool.md

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,6 @@ Before starting, ensure you have:
2424

2525
In your IDE or development environment make sure to [start the HoloViz MCP server](getting-started.md/#start-the-server).
2626

27-
The open the *Display Server Feed* at http://localhost:5005/feed
28-
2927
!!! note
3028
If the [Display Server](display-server.md) is already running separately, please stop it using CTRL+C. The MCP server will automatically start the Display Server.
3129

@@ -45,13 +43,15 @@ Your AI assistant will use the `holoviz_display` tool and respond with something
4543

4644
```
4745
✓ Visualization created successfully!
48-
View at: http://127.0.0.1:5005/view?id={snippet_id}
46+
View at: http://localhost:5005/view?id={snippet_id}
4947
```
5048

5149
Click the URL. You should see:
5250

5351
- An interactive bar chart showing the count of each penguin species
5452

53+
![Interactive Bar Chart](../assets/images/display-tool-view.png)
54+
5555
!!! success "Checkpoint"
5656
If you see the species distribution in your browser, you've successfully created your first visualization! The chart should be interactive - try hovering over the bars.
5757

@@ -70,6 +70,8 @@ The AI will create a new visualization. Click the new URL to see:
7070
- Interactive tooltips when hovering over points
7171
- The ability to zoom and pan through the data
7272

73+
![Interactive Scatter Plot](../assets/images/display-tool-view2.png)
74+
7375
!!! tip "What you're learning"
7476
Each visualization gets its own unique URL that you can bookmark or share. The `holoviz_display` tool handles different chart types automatically based on your natural language request.
7577

@@ -95,7 +97,7 @@ This demonstrates how `holoviz_display` can handle multi-step analytical workflo
9597
Now let's see all your visualizations together. In your browser, navigate to:
9698

9799
```
98-
http://127.0.0.1:5005/feed
100+
http://localhost:5005/feed
99101
```
100102

101103
You should see:
@@ -104,6 +106,8 @@ You should see:
104106
- Creation timestamps
105107
- "Full Screen" and "Copy Code" buttons for each
106108

109+
![Feed](../assets/images/display-tool-feed.png)
110+
107111
The Feed page automatically updates when new visualizations are created!
108112

109113
### Refine Results
@@ -136,6 +140,8 @@ The visualization will include:
136140
- Plots that update automatically when you change widget values
137141
- A complete dashboard layout
138142

143+
![Penguins Dashboard](../assets/images/display-tool-feed-dashboard.png)
144+
139145
!!! success "Achievement unlocked"
140146
You've created an interactive dashboard! Behind the scenes, the tool uses Panel's execution methods to enable full applications with reactive components.
141147

src/holoviz_mcp/config/config.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ server:
1313
display:
1414
enabled: true
1515
port: 5005
16-
host: "127.0.0.1"
16+
host: "localhost"
1717
max_restarts: 3
1818
health_check_interval: 60
1919
auto_install_packages: true

src/holoviz_mcp/config/models.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ class DisplayConfig(BaseModel):
164164
description="URL of remote display server (e.g., 'http://localhost:5005'). Only used in 'remote' mode.",
165165
)
166166
port: int = Field(default=5005, description="Port for the display Panel server (subprocess mode only)")
167-
host: str = Field(default="127.0.0.1", description="Host address for the display Panel server (subprocess mode only)")
167+
host: str = Field(default="localhost", description="Host address for the display Panel server (subprocess mode only)")
168168
max_restarts: int = Field(default=3, description="Maximum number of restart attempts for Panel server (subprocess mode only)")
169169
health_check_interval: int = Field(default=60, description="Health check interval in seconds")
170170
db_path: Path = Field(

0 commit comments

Comments
 (0)