Skip to content

Commit 91f26ef

Browse files
bump app version and package as mcp bundle.
1 parent f883596 commit 91f26ef

7 files changed

Lines changed: 45 additions & 35 deletions

File tree

.dxtignore

Lines changed: 0 additions & 4 deletions
This file was deleted.

.github/workflows/release.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -93,17 +93,17 @@ jobs:
9393
fi
9494
shell: bash
9595

96-
- name: Install DXT toolchain
97-
run: npm install -g @anthropic-ai/dxt
96+
- name: Install MCPB toolchain
97+
run: npm install -g @anthropic-ai/mcpb
9898

9999
- name: Pack extension
100-
run: dxt pack
100+
run: mcpb pack
101101

102-
- name: Upload DXT artifacts
102+
- name: Upload MCPB artifacts
103103
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
104104
with:
105-
name: dxt-dist
106-
path: '*.dxt'
105+
name: mcpb-dist
106+
path: '*.mcpb'
107107

108108
create_release:
109109
runs-on: ubuntu-latest
@@ -115,17 +115,17 @@ jobs:
115115
name: python-dist
116116
path: dist/
117117

118-
- name: Download DXT artifacts
118+
- name: Download MCPB artifacts
119119
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0
120120
with:
121-
name: dxt-dist
121+
name: mcpb-dist
122122
path: ./
123123

124124
- name: Create Release
125125
uses: softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b # v2.5.0
126126
with:
127127
files: |
128-
*.dxt
128+
*.mcpb
129129
dist/*
130130
env:
131131
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.mcpbignore

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
*
2+
3+
!manifest.json
4+
!icon.png
5+
!pyproject.toml
6+
!uv.lock
7+
!src/
8+
!src/**

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,12 +38,12 @@ If your account is on `eu.pythonanywhere.com`, you also need to set
3838
`PYTHONANYWHERE_SITE` to `eu.pythonanywhere.com` (it defaults to
3939
`www.pythonanywhere.com`).
4040

41-
### Desktop Extension - works with Claude Desktop
41+
### MCP Bundle - works with Claude Desktop
4242
Probably the most straightforward way to install the MCP server is to use
43-
the [desktop extension](https://github.com/anthropics/dxt/) for Claude Desktop.
43+
the [MCP Bundle](https://github.com/modelcontextprotocol/mcpb) for Claude Desktop.
4444

4545
1. Open Claude Desktop.
46-
2. **[Download the latest .dxt file](https://github.com/pythonanywhere/pythonanywhere-mcp-server/releases/latest/download/pythonanywhere-mcp-server.dxt)**.
46+
2. **[Download the latest .mcpb file](https://github.com/pythonanywhere/pythonanywhere-mcp-server/releases/latest/download/pythonanywhere-mcp-server.mcpb)**.
4747
3. Double-click on the downloaded .dxt file or drag the file into the window.
4848
4. Configure your PythonAnywhere API token and username.
4949
5. Restart Claude Desktop.

manifest.json

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,38 @@
11
{
2-
"dxt_version": "0.1",
3-
"name": "PythonAnywhere MCP Server",
2+
"manifest_version": "0.4",
3+
"name": "pythonanywhere-mcp-server",
4+
"display_name": "PythonAnywhere MCP Server",
45
"description": "Manage files, websites, and scheduled tasks on PythonAnywhere via the Model Context Protocol.",
56
"icon": "icon.png",
6-
"version": "0.0.8",
7+
"version": "0.0.9",
78
"author": {
89
"name": "PythonAnywhere Developers",
910
"email": "developers@pythonanywhere.com"
1011
},
1112
"license": "MIT",
13+
"server": {
14+
"type": "uv",
15+
"entry_point": "src/pythonanywhere_mcp_server/__main__.py",
16+
"mcp_config": {
17+
"env": {
18+
"API_TOKEN": "${user_config.pa_api_token}",
19+
"PYTHONANYWHERE_USERNAME": "${user_config.pa_username}",
20+
"PYTHONANYWHERE_SITE": "${user_config.pa_site}"
21+
}
22+
}
23+
},
24+
"compatibility": {
25+
"platforms": ["darwin", "linux", "win32"],
26+
"runtimes": {
27+
"python": ">=3.13"
28+
}
29+
},
1230
"user_config": {
1331
"pa_api_token": {
1432
"type": "string",
1533
"title": "PythonAnywhere API Token",
1634
"description": "Your PythonAnywhere API token",
35+
"sensitive": true,
1736
"required": true
1837
},
1938
"pa_username": {
@@ -28,18 +47,5 @@
2847
"description": "Set to eu.pythonanywhere.com if your account is on the EU site (defaults to www.pythonanywhere.com)",
2948
"required": false
3049
}
31-
},
32-
"server": {
33-
"type": "binary",
34-
"entry_point": "pythonanywhere_mcp_server.py",
35-
"mcp_config": {
36-
"command": "uvx",
37-
"args": ["pythonanywhere-mcp-server"],
38-
"env": {
39-
"API_TOKEN": "${user_config.pa_api_token}",
40-
"PYTHONANYWHERE_USERNAME": "${user_config.pa_username}",
41-
"PYTHONANYWHERE_SITE": "${user_config.pa_site}"
42-
}
43-
}
4450
}
45-
}
51+
}

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "pythonanywhere-mcp-server"
7-
version = "0.0.8"
7+
version = "0.0.9"
88
description = "PythonAnywhere Model Context Protocol Server"
99
authors = [
1010
{name = "PythonAnywhere Developers", email = "developers@pythonanywhere.com"}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = "0.0.8"
1+
__version__ = "0.0.9"

0 commit comments

Comments
 (0)