machinecommander 0.1.0__tar.gz → 0.1.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- machinecommander-0.1.2/PKG-INFO +29 -0
- machinecommander-0.1.2/README.md +19 -0
- {machinecommander-0.1.0 → machinecommander-0.1.2}/pyproject.toml +1 -1
- {machinecommander-0.1.0 → machinecommander-0.1.2}/src/machinecommander/mcp_server.py +3 -7
- {machinecommander-0.1.0 → machinecommander-0.1.2}/uv.lock +1 -1
- machinecommander-0.1.0/PKG-INFO +0 -121
- machinecommander-0.1.0/README.md +0 -111
- {machinecommander-0.1.0 → machinecommander-0.1.2}/.gitignore +0 -0
- {machinecommander-0.1.0 → machinecommander-0.1.2}/.python-version +0 -0
- {machinecommander-0.1.0 → machinecommander-0.1.2}/src/machinecommander/__init__.py +0 -0
- {machinecommander-0.1.0 → machinecommander-0.1.2}/src/machinecommander/server.py +0 -0
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: machinecommander
|
|
3
|
+
Version: 0.1.2
|
|
4
|
+
Summary: MachineCommander is an IoT system to manage all the construction machines working on construction projects.
|
|
5
|
+
Author-email: Ye Wang <wangye@zeaho.com>
|
|
6
|
+
Requires-Python: >=3.13
|
|
7
|
+
Requires-Dist: mcp>=1.10.1
|
|
8
|
+
Requires-Dist: requests>=2.31.0
|
|
9
|
+
Description-Content-Type: text/markdown
|
|
10
|
+
|
|
11
|
+
# machine-commander
|
|
12
|
+
MachineCommander is an IoT system to manage all the construction machines working on construction projects.
|
|
13
|
+
|
|
14
|
+
## MCP server config
|
|
15
|
+
```json
|
|
16
|
+
{
|
|
17
|
+
"mcpServers": {
|
|
18
|
+
"MachineCommander": {
|
|
19
|
+
"command": "python machine-commander.py",
|
|
20
|
+
"args": ["string"],
|
|
21
|
+
"env": {}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Tools
|
|
28
|
+
* _get_construction_machines_data_: Use this tool to extract the data of construction machines and projects, and to answer construction related questions. The returned value includes a "result" field, which can be a table (a list of rows) or an answer (a string).
|
|
29
|
+
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# machine-commander
|
|
2
|
+
MachineCommander is an IoT system to manage all the construction machines working on construction projects.
|
|
3
|
+
|
|
4
|
+
## MCP server config
|
|
5
|
+
```json
|
|
6
|
+
{
|
|
7
|
+
"mcpServers": {
|
|
8
|
+
"MachineCommander": {
|
|
9
|
+
"command": "python machine-commander.py",
|
|
10
|
+
"args": ["string"],
|
|
11
|
+
"env": {}
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Tools
|
|
18
|
+
* _get_construction_machines_data_: Use this tool to extract the data of construction machines and projects, and to answer construction related questions. The returned value includes a "result" field, which can be a table (a list of rows) or an answer (a string).
|
|
19
|
+
|
|
@@ -5,17 +5,13 @@ mcp = FastMCP("MachineCommander")
|
|
|
5
5
|
|
|
6
6
|
@mcp.tool()
|
|
7
7
|
def get_construction_machines_data(question: str) -> dict:
|
|
8
|
-
"""MachineCommander is a global system to manage all the construction machines working on construction projects. Use this tool to extract the data of construction machines and projects, and to answer construction related questions. The
|
|
8
|
+
"""MachineCommander is a global system to manage all the construction machines working on construction projects. Use this tool to extract the data of construction machines and projects, and to answer construction related questions. The returned value includes a "result" field, which can be a table (a list of rows) or an answer (a string)."""
|
|
9
9
|
url = f"https://gpt-agent.zhgcloud.com/paipai_mcp/{question}"
|
|
10
|
-
auth = ("zeaho-
|
|
10
|
+
auth = ("zeaho-gpt-agent-l4", "zeaho_93246")
|
|
11
11
|
try:
|
|
12
12
|
response = requests.get(url, auth=auth)
|
|
13
13
|
response.raise_for_status()
|
|
14
|
-
|
|
15
|
-
result_data = response.json()
|
|
16
|
-
result = {"result": result_data}
|
|
17
|
-
except:
|
|
18
|
-
result = {"result": response.text}
|
|
14
|
+
result = response.json()
|
|
19
15
|
except Exception as e:
|
|
20
16
|
result = {"result": f"请求失败: {str(e)}"}
|
|
21
17
|
return result
|
machinecommander-0.1.0/PKG-INFO
DELETED
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: machinecommander
|
|
3
|
-
Version: 0.1.0
|
|
4
|
-
Summary: MachineCommander is an IoT system to manage all the construction machines working on construction projects.
|
|
5
|
-
Author-email: Ye Wang <wangye@zeaho.com>
|
|
6
|
-
Requires-Python: >=3.13
|
|
7
|
-
Requires-Dist: mcp>=1.10.1
|
|
8
|
-
Requires-Dist: requests>=2.31.0
|
|
9
|
-
Description-Content-Type: text/markdown
|
|
10
|
-
|
|
11
|
-
# MachineCommander MCP server
|
|
12
|
-
|
|
13
|
-
MachineCommander is an IoT system to manage all the construction machines working on construction projects.
|
|
14
|
-
|
|
15
|
-
## Components
|
|
16
|
-
|
|
17
|
-
### Resources
|
|
18
|
-
|
|
19
|
-
The server implements a simple note storage system with:
|
|
20
|
-
- Custom note:// URI scheme for accessing individual notes
|
|
21
|
-
- Each note resource has a name, description and text/plain mimetype
|
|
22
|
-
|
|
23
|
-
### Prompts
|
|
24
|
-
|
|
25
|
-
The server provides a single prompt:
|
|
26
|
-
- summarize-notes: Creates summaries of all stored notes
|
|
27
|
-
- Optional "style" argument to control detail level (brief/detailed)
|
|
28
|
-
- Generates prompt combining all current notes with style preference
|
|
29
|
-
|
|
30
|
-
### Tools
|
|
31
|
-
|
|
32
|
-
The server implements one tool:
|
|
33
|
-
- add-note: Adds a new note to the server
|
|
34
|
-
- Takes "name" and "content" as required string arguments
|
|
35
|
-
- Updates server state and notifies clients of resource changes
|
|
36
|
-
|
|
37
|
-
## Configuration
|
|
38
|
-
|
|
39
|
-
[TODO: Add configuration details specific to your implementation]
|
|
40
|
-
|
|
41
|
-
## Quickstart
|
|
42
|
-
|
|
43
|
-
### Install
|
|
44
|
-
|
|
45
|
-
#### Claude Desktop
|
|
46
|
-
|
|
47
|
-
On MacOS: `~/Library/Application\ Support/Claude/claude_desktop_config.json`
|
|
48
|
-
On Windows: `%APPDATA%/Claude/claude_desktop_config.json`
|
|
49
|
-
|
|
50
|
-
<details>
|
|
51
|
-
<summary>Development/Unpublished Servers Configuration</summary>
|
|
52
|
-
```
|
|
53
|
-
"mcpServers": {
|
|
54
|
-
"MachineCommander": {
|
|
55
|
-
"command": "uv",
|
|
56
|
-
"args": [
|
|
57
|
-
"--directory",
|
|
58
|
-
"/Users/yewang/work/ai/machine-commander/MachineCommander",
|
|
59
|
-
"run",
|
|
60
|
-
"MachineCommander"
|
|
61
|
-
]
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
```
|
|
65
|
-
</details>
|
|
66
|
-
|
|
67
|
-
<details>
|
|
68
|
-
<summary>Published Servers Configuration</summary>
|
|
69
|
-
```
|
|
70
|
-
"mcpServers": {
|
|
71
|
-
"MachineCommander": {
|
|
72
|
-
"command": "uvx",
|
|
73
|
-
"args": [
|
|
74
|
-
"MachineCommander"
|
|
75
|
-
]
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
```
|
|
79
|
-
</details>
|
|
80
|
-
|
|
81
|
-
## Development
|
|
82
|
-
|
|
83
|
-
### Building and Publishing
|
|
84
|
-
|
|
85
|
-
To prepare the package for distribution:
|
|
86
|
-
|
|
87
|
-
1. Sync dependencies and update lockfile:
|
|
88
|
-
```bash
|
|
89
|
-
uv sync
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
2. Build package distributions:
|
|
93
|
-
```bash
|
|
94
|
-
uv build
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
This will create source and wheel distributions in the `dist/` directory.
|
|
98
|
-
|
|
99
|
-
3. Publish to PyPI:
|
|
100
|
-
```bash
|
|
101
|
-
uv publish
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
Note: You'll need to set PyPI credentials via environment variables or command flags:
|
|
105
|
-
- Token: `--token` or `UV_PUBLISH_TOKEN`
|
|
106
|
-
- Or username/password: `--username`/`UV_PUBLISH_USERNAME` and `--password`/`UV_PUBLISH_PASSWORD`
|
|
107
|
-
|
|
108
|
-
### Debugging
|
|
109
|
-
|
|
110
|
-
Since MCP servers run over stdio, debugging can be challenging. For the best debugging
|
|
111
|
-
experience, we strongly recommend using the [MCP Inspector](https://github.com/modelcontextprotocol/inspector).
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
You can launch the MCP Inspector via [`npm`](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) with this command:
|
|
115
|
-
|
|
116
|
-
```bash
|
|
117
|
-
npx @modelcontextprotocol/inspector uv --directory /Users/yewang/work/ai/machine-commander/MachineCommander run machinecommander
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.
|
machinecommander-0.1.0/README.md
DELETED
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
# MachineCommander MCP server
|
|
2
|
-
|
|
3
|
-
MachineCommander is an IoT system to manage all the construction machines working on construction projects.
|
|
4
|
-
|
|
5
|
-
## Components
|
|
6
|
-
|
|
7
|
-
### Resources
|
|
8
|
-
|
|
9
|
-
The server implements a simple note storage system with:
|
|
10
|
-
- Custom note:// URI scheme for accessing individual notes
|
|
11
|
-
- Each note resource has a name, description and text/plain mimetype
|
|
12
|
-
|
|
13
|
-
### Prompts
|
|
14
|
-
|
|
15
|
-
The server provides a single prompt:
|
|
16
|
-
- summarize-notes: Creates summaries of all stored notes
|
|
17
|
-
- Optional "style" argument to control detail level (brief/detailed)
|
|
18
|
-
- Generates prompt combining all current notes with style preference
|
|
19
|
-
|
|
20
|
-
### Tools
|
|
21
|
-
|
|
22
|
-
The server implements one tool:
|
|
23
|
-
- add-note: Adds a new note to the server
|
|
24
|
-
- Takes "name" and "content" as required string arguments
|
|
25
|
-
- Updates server state and notifies clients of resource changes
|
|
26
|
-
|
|
27
|
-
## Configuration
|
|
28
|
-
|
|
29
|
-
[TODO: Add configuration details specific to your implementation]
|
|
30
|
-
|
|
31
|
-
## Quickstart
|
|
32
|
-
|
|
33
|
-
### Install
|
|
34
|
-
|
|
35
|
-
#### Claude Desktop
|
|
36
|
-
|
|
37
|
-
On MacOS: `~/Library/Application\ Support/Claude/claude_desktop_config.json`
|
|
38
|
-
On Windows: `%APPDATA%/Claude/claude_desktop_config.json`
|
|
39
|
-
|
|
40
|
-
<details>
|
|
41
|
-
<summary>Development/Unpublished Servers Configuration</summary>
|
|
42
|
-
```
|
|
43
|
-
"mcpServers": {
|
|
44
|
-
"MachineCommander": {
|
|
45
|
-
"command": "uv",
|
|
46
|
-
"args": [
|
|
47
|
-
"--directory",
|
|
48
|
-
"/Users/yewang/work/ai/machine-commander/MachineCommander",
|
|
49
|
-
"run",
|
|
50
|
-
"MachineCommander"
|
|
51
|
-
]
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
```
|
|
55
|
-
</details>
|
|
56
|
-
|
|
57
|
-
<details>
|
|
58
|
-
<summary>Published Servers Configuration</summary>
|
|
59
|
-
```
|
|
60
|
-
"mcpServers": {
|
|
61
|
-
"MachineCommander": {
|
|
62
|
-
"command": "uvx",
|
|
63
|
-
"args": [
|
|
64
|
-
"MachineCommander"
|
|
65
|
-
]
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
```
|
|
69
|
-
</details>
|
|
70
|
-
|
|
71
|
-
## Development
|
|
72
|
-
|
|
73
|
-
### Building and Publishing
|
|
74
|
-
|
|
75
|
-
To prepare the package for distribution:
|
|
76
|
-
|
|
77
|
-
1. Sync dependencies and update lockfile:
|
|
78
|
-
```bash
|
|
79
|
-
uv sync
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
2. Build package distributions:
|
|
83
|
-
```bash
|
|
84
|
-
uv build
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
This will create source and wheel distributions in the `dist/` directory.
|
|
88
|
-
|
|
89
|
-
3. Publish to PyPI:
|
|
90
|
-
```bash
|
|
91
|
-
uv publish
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
Note: You'll need to set PyPI credentials via environment variables or command flags:
|
|
95
|
-
- Token: `--token` or `UV_PUBLISH_TOKEN`
|
|
96
|
-
- Or username/password: `--username`/`UV_PUBLISH_USERNAME` and `--password`/`UV_PUBLISH_PASSWORD`
|
|
97
|
-
|
|
98
|
-
### Debugging
|
|
99
|
-
|
|
100
|
-
Since MCP servers run over stdio, debugging can be challenging. For the best debugging
|
|
101
|
-
experience, we strongly recommend using the [MCP Inspector](https://github.com/modelcontextprotocol/inspector).
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
You can launch the MCP Inspector via [`npm`](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) with this command:
|
|
105
|
-
|
|
106
|
-
```bash
|
|
107
|
-
npx @modelcontextprotocol/inspector uv --directory /Users/yewang/work/ai/machine-commander/MachineCommander run machinecommander
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|