workflow-generator-mcp 0.2.0__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.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Ashutosh Kumar
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,257 @@
1
+ Metadata-Version: 2.4
2
+ Name: workflow-generator-mcp
3
+ Version: 0.2.0
4
+ Summary: Generate a visual system architecture diagram (WORKFLOW.html) with concurrency capacity estimates and bottleneck analysis from any codebase — CLI + MCP server, stdlib-only scanner.
5
+ Author: Ashutosh Kumar
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/askuma/workflow-generator
8
+ Project-URL: Repository, https://github.com/askuma/workflow-generator
9
+ Project-URL: Live Demo, https://askuma.github.io/workflow-generator/
10
+ Keywords: mcp,mcp-server,architecture,diagram,concurrency,bottleneck,static-analysis,claude
11
+ Classifier: Development Status :: 4 - Beta
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: License :: OSI Approved :: MIT License
14
+ Classifier: Programming Language :: Python :: 3
15
+ Classifier: Topic :: Software Development :: Documentation
16
+ Requires-Python: >=3.10
17
+ Description-Content-Type: text/markdown
18
+ License-File: LICENSE
19
+ Requires-Dist: mcp>=1.0.0
20
+ Dynamic: license-file
21
+
22
+ # workflow-generator
23
+
24
+ <!-- mcp-name: io.github.askuma/workflow-generator -->
25
+
26
+ Scan any project and generate **WORKFLOW.html** — a dark-mode visual system diagram showing every component, how they talk to each other, and where your throughput ceiling actually is.
27
+
28
+ Works with Python, Node.js, Go, and mixed projects. No external dependencies for the core scanner.
29
+ Vendored and generated directories (`node_modules`, `venv`, `site-packages`, `dist`, …) are never scanned,
30
+ and capacity figures are clearly labeled as static-analysis estimates.
31
+
32
+ **[Live demo →](https://askuma.github.io/workflow-generator/)** — generated from
33
+ [fastapi/full-stack-fastapi-template](https://github.com/fastapi/full-stack-fastapi-template), unmodified.
34
+
35
+ ![WORKFLOW.html generated for full-stack-fastapi-template](https://raw.githubusercontent.com/askuma/workflow-generator/main/docs/preview.png)
36
+
37
+ ## What it produces
38
+
39
+ Every generated page contains:
40
+
41
+ | Section | What you get |
42
+ |---|---|
43
+ | **Stat row** | Workers · Concurrent I/O ceiling · Semaphore limit · Rate limit · Practical throughput |
44
+ | **Architecture diagram** | Layered flow: external sources → gateway → API → queues → AI → storage |
45
+ | **Data flow cards** | Write path, read/query path, background jobs — inferred from what's detected |
46
+ | **Concurrency table** | Every layer: model · ceiling · limiting factor · code reference |
47
+ | **Bottleneck analysis** | Ranked CRITICAL → LOW with mitigation notes |
48
+
49
+ ## What it detects
50
+
51
+ | Category | Examples |
52
+ |---|---|
53
+ | API frameworks | FastAPI, Flask, Django, Express, Nest.js, Gin |
54
+ | Gateways | nginx, Caddy, Traefik (with rate limits + worker_connections) |
55
+ | LLM providers | OpenAI, Anthropic Claude, Cohere, AWS Bedrock |
56
+ | Vector stores | Qdrant, Pinecone, Weaviate, ChromaDB, pgvector, FAISS, Milvus |
57
+ | Databases | PostgreSQL, MySQL, MongoDB, SQLite, Redis |
58
+ | Queues | Celery, BullMQ, Kafka, RabbitMQ, RQ, AWS SQS |
59
+ | Async primitives | `asyncio.Semaphore`, `run_in_executor`, `asyncio.gather`, `asyncio.Lock` |
60
+ | Workers | `--workers N` (uvicorn/gunicorn), `replicas:` (docker-compose), PM2 instances |
61
+ | External sources | Jira, Azure DevOps, Slack, GitHub, Stripe, Salesforce, Twilio |
62
+ | Evaluation | TruLens, RAGAS, LangSmith |
63
+
64
+ ---
65
+
66
+ ## Install
67
+
68
+ ### pip (CLI + MCP server)
69
+
70
+ ```bash
71
+ pip install workflow-generator-mcp
72
+
73
+ workflow-generator . WORKFLOW.html # CLI: scan and write the report
74
+ workflow-generator-mcp # stdio MCP server
75
+ ```
76
+
77
+ With pip installed, any MCP host config reduces to:
78
+
79
+ ```json
80
+ {
81
+ "mcpServers": {
82
+ "workflow-generator": { "command": "workflow-generator-mcp" }
83
+ }
84
+ }
85
+ ```
86
+
87
+ ### Claude Code (skill)
88
+
89
+ ```bash
90
+ mkdir -p ~/.claude/skills
91
+ git clone https://github.com/askuma/workflow-generator.git ~/.claude/skills/workflow-generator
92
+ ```
93
+
94
+ Then in any Claude Code session:
95
+
96
+ ```
97
+ /workflow-generator
98
+ /workflow-generator /path/to/project
99
+ ```
100
+
101
+ ### MCP server (Claude Desktop, VS Code, Cursor, Zed, Windsurf, Continue)
102
+
103
+ **1. Install the dependency:**
104
+ ```bash
105
+ pip install mcp
106
+ ```
107
+
108
+ **2. Add to your MCP host config** (replace `~` with your actual home path):
109
+
110
+ <details>
111
+ <summary>Claude Desktop</summary>
112
+
113
+ `~/Library/Application Support/Claude/claude_desktop_config.json` (Mac)
114
+ `%APPDATA%\Claude\claude_desktop_config.json` (Windows)
115
+
116
+ ```json
117
+ {
118
+ "mcpServers": {
119
+ "workflow-generator": {
120
+ "command": "python3",
121
+ "args": ["~/.claude/skills/workflow-generator/mcp/server.py"]
122
+ }
123
+ }
124
+ }
125
+ ```
126
+ </details>
127
+
128
+ <details>
129
+ <summary>VS Code</summary>
130
+
131
+ `.vscode/mcp.json`
132
+
133
+ ```json
134
+ {
135
+ "servers": {
136
+ "workflow-generator": {
137
+ "type": "stdio",
138
+ "command": "python3",
139
+ "args": ["~/.claude/skills/workflow-generator/mcp/server.py"]
140
+ }
141
+ }
142
+ }
143
+ ```
144
+ </details>
145
+
146
+ <details>
147
+ <summary>Cursor</summary>
148
+
149
+ `~/.cursor/mcp.json`
150
+
151
+ ```json
152
+ {
153
+ "mcpServers": {
154
+ "workflow-generator": {
155
+ "command": "python3",
156
+ "args": ["~/.claude/skills/workflow-generator/mcp/server.py"]
157
+ }
158
+ }
159
+ }
160
+ ```
161
+ </details>
162
+
163
+ <details>
164
+ <summary>Zed</summary>
165
+
166
+ `.zed/settings.json`
167
+
168
+ ```json
169
+ {
170
+ "context_servers": {
171
+ "workflow-generator": {
172
+ "command": {
173
+ "path": "python3",
174
+ "args": ["~/.claude/skills/workflow-generator/mcp/server.py"]
175
+ }
176
+ }
177
+ }
178
+ }
179
+ ```
180
+ </details>
181
+
182
+ <details>
183
+ <summary>Windsurf</summary>
184
+
185
+ `~/.windsurf/mcp_config.json`
186
+
187
+ ```json
188
+ {
189
+ "mcpServers": {
190
+ "workflow-generator": {
191
+ "command": "python3",
192
+ "args": ["~/.claude/skills/workflow-generator/mcp/server.py"]
193
+ }
194
+ }
195
+ }
196
+ ```
197
+ </details>
198
+
199
+ **3. Restart your tool, then ask:**
200
+ ```
201
+ generate a workflow diagram for this project
202
+ how many concurrent requests can this handle?
203
+ show me the system architecture
204
+ ```
205
+
206
+ **MCP tools exposed:**
207
+ - `generate_workflow` — scans project, writes `WORKFLOW.html`, optionally opens in browser
208
+ - `analyze_workflow` — returns structured JSON summary (no file written)
209
+
210
+ ### Command line (standalone)
211
+
212
+ No install needed beyond Python 3.8+:
213
+
214
+ ```bash
215
+ python3 ~/.claude/skills/workflow-generator/scripts/analyze.py . ~/WORKFLOW.html
216
+ # then open ~/WORKFLOW.html
217
+ ```
218
+
219
+ ---
220
+
221
+ ## Example output (terminal)
222
+
223
+ ```
224
+ Written: /your/project/WORKFLOW.html
225
+ Framework: FastAPI · Workers: 8 · Concurrent I/O: ~800
226
+ Practical throughput: ~50–200 req/min
227
+ Bottleneck: OpenAI (LLM latency 3–30s per call)
228
+ Gateway: nginx · 2 rate limit zone(s)
229
+ LLM: OpenAI · eval: TruLens RAG Triad
230
+ Storage: Qdrant, Redis
231
+ External sources: Jira, Azure DevOps, Slack
232
+ ```
233
+
234
+ ---
235
+
236
+ ## Repo layout
237
+
238
+ ```
239
+ workflow-generator/
240
+ ├── SKILL.md ← Claude Code skill definition
241
+ ├── INSTALL.md ← detailed per-platform install guide
242
+ ├── scripts/
243
+ │ └── analyze.py ← core scanner + HTML renderer (stdlib only)
244
+ ├── mcp/
245
+ │ ├── server.py ← MCP stdio server
246
+ │ └── requirements.txt ← pip install mcp
247
+ └── copilot/
248
+ ├── index.js ← GitHub Copilot Extension (Express)
249
+ ├── package.json
250
+ └── openai_function.json
251
+ ```
252
+
253
+ ---
254
+
255
+ ## License
256
+
257
+ MIT
@@ -0,0 +1,236 @@
1
+ # workflow-generator
2
+
3
+ <!-- mcp-name: io.github.askuma/workflow-generator -->
4
+
5
+ Scan any project and generate **WORKFLOW.html** — a dark-mode visual system diagram showing every component, how they talk to each other, and where your throughput ceiling actually is.
6
+
7
+ Works with Python, Node.js, Go, and mixed projects. No external dependencies for the core scanner.
8
+ Vendored and generated directories (`node_modules`, `venv`, `site-packages`, `dist`, …) are never scanned,
9
+ and capacity figures are clearly labeled as static-analysis estimates.
10
+
11
+ **[Live demo →](https://askuma.github.io/workflow-generator/)** — generated from
12
+ [fastapi/full-stack-fastapi-template](https://github.com/fastapi/full-stack-fastapi-template), unmodified.
13
+
14
+ ![WORKFLOW.html generated for full-stack-fastapi-template](https://raw.githubusercontent.com/askuma/workflow-generator/main/docs/preview.png)
15
+
16
+ ## What it produces
17
+
18
+ Every generated page contains:
19
+
20
+ | Section | What you get |
21
+ |---|---|
22
+ | **Stat row** | Workers · Concurrent I/O ceiling · Semaphore limit · Rate limit · Practical throughput |
23
+ | **Architecture diagram** | Layered flow: external sources → gateway → API → queues → AI → storage |
24
+ | **Data flow cards** | Write path, read/query path, background jobs — inferred from what's detected |
25
+ | **Concurrency table** | Every layer: model · ceiling · limiting factor · code reference |
26
+ | **Bottleneck analysis** | Ranked CRITICAL → LOW with mitigation notes |
27
+
28
+ ## What it detects
29
+
30
+ | Category | Examples |
31
+ |---|---|
32
+ | API frameworks | FastAPI, Flask, Django, Express, Nest.js, Gin |
33
+ | Gateways | nginx, Caddy, Traefik (with rate limits + worker_connections) |
34
+ | LLM providers | OpenAI, Anthropic Claude, Cohere, AWS Bedrock |
35
+ | Vector stores | Qdrant, Pinecone, Weaviate, ChromaDB, pgvector, FAISS, Milvus |
36
+ | Databases | PostgreSQL, MySQL, MongoDB, SQLite, Redis |
37
+ | Queues | Celery, BullMQ, Kafka, RabbitMQ, RQ, AWS SQS |
38
+ | Async primitives | `asyncio.Semaphore`, `run_in_executor`, `asyncio.gather`, `asyncio.Lock` |
39
+ | Workers | `--workers N` (uvicorn/gunicorn), `replicas:` (docker-compose), PM2 instances |
40
+ | External sources | Jira, Azure DevOps, Slack, GitHub, Stripe, Salesforce, Twilio |
41
+ | Evaluation | TruLens, RAGAS, LangSmith |
42
+
43
+ ---
44
+
45
+ ## Install
46
+
47
+ ### pip (CLI + MCP server)
48
+
49
+ ```bash
50
+ pip install workflow-generator-mcp
51
+
52
+ workflow-generator . WORKFLOW.html # CLI: scan and write the report
53
+ workflow-generator-mcp # stdio MCP server
54
+ ```
55
+
56
+ With pip installed, any MCP host config reduces to:
57
+
58
+ ```json
59
+ {
60
+ "mcpServers": {
61
+ "workflow-generator": { "command": "workflow-generator-mcp" }
62
+ }
63
+ }
64
+ ```
65
+
66
+ ### Claude Code (skill)
67
+
68
+ ```bash
69
+ mkdir -p ~/.claude/skills
70
+ git clone https://github.com/askuma/workflow-generator.git ~/.claude/skills/workflow-generator
71
+ ```
72
+
73
+ Then in any Claude Code session:
74
+
75
+ ```
76
+ /workflow-generator
77
+ /workflow-generator /path/to/project
78
+ ```
79
+
80
+ ### MCP server (Claude Desktop, VS Code, Cursor, Zed, Windsurf, Continue)
81
+
82
+ **1. Install the dependency:**
83
+ ```bash
84
+ pip install mcp
85
+ ```
86
+
87
+ **2. Add to your MCP host config** (replace `~` with your actual home path):
88
+
89
+ <details>
90
+ <summary>Claude Desktop</summary>
91
+
92
+ `~/Library/Application Support/Claude/claude_desktop_config.json` (Mac)
93
+ `%APPDATA%\Claude\claude_desktop_config.json` (Windows)
94
+
95
+ ```json
96
+ {
97
+ "mcpServers": {
98
+ "workflow-generator": {
99
+ "command": "python3",
100
+ "args": ["~/.claude/skills/workflow-generator/mcp/server.py"]
101
+ }
102
+ }
103
+ }
104
+ ```
105
+ </details>
106
+
107
+ <details>
108
+ <summary>VS Code</summary>
109
+
110
+ `.vscode/mcp.json`
111
+
112
+ ```json
113
+ {
114
+ "servers": {
115
+ "workflow-generator": {
116
+ "type": "stdio",
117
+ "command": "python3",
118
+ "args": ["~/.claude/skills/workflow-generator/mcp/server.py"]
119
+ }
120
+ }
121
+ }
122
+ ```
123
+ </details>
124
+
125
+ <details>
126
+ <summary>Cursor</summary>
127
+
128
+ `~/.cursor/mcp.json`
129
+
130
+ ```json
131
+ {
132
+ "mcpServers": {
133
+ "workflow-generator": {
134
+ "command": "python3",
135
+ "args": ["~/.claude/skills/workflow-generator/mcp/server.py"]
136
+ }
137
+ }
138
+ }
139
+ ```
140
+ </details>
141
+
142
+ <details>
143
+ <summary>Zed</summary>
144
+
145
+ `.zed/settings.json`
146
+
147
+ ```json
148
+ {
149
+ "context_servers": {
150
+ "workflow-generator": {
151
+ "command": {
152
+ "path": "python3",
153
+ "args": ["~/.claude/skills/workflow-generator/mcp/server.py"]
154
+ }
155
+ }
156
+ }
157
+ }
158
+ ```
159
+ </details>
160
+
161
+ <details>
162
+ <summary>Windsurf</summary>
163
+
164
+ `~/.windsurf/mcp_config.json`
165
+
166
+ ```json
167
+ {
168
+ "mcpServers": {
169
+ "workflow-generator": {
170
+ "command": "python3",
171
+ "args": ["~/.claude/skills/workflow-generator/mcp/server.py"]
172
+ }
173
+ }
174
+ }
175
+ ```
176
+ </details>
177
+
178
+ **3. Restart your tool, then ask:**
179
+ ```
180
+ generate a workflow diagram for this project
181
+ how many concurrent requests can this handle?
182
+ show me the system architecture
183
+ ```
184
+
185
+ **MCP tools exposed:**
186
+ - `generate_workflow` — scans project, writes `WORKFLOW.html`, optionally opens in browser
187
+ - `analyze_workflow` — returns structured JSON summary (no file written)
188
+
189
+ ### Command line (standalone)
190
+
191
+ No install needed beyond Python 3.8+:
192
+
193
+ ```bash
194
+ python3 ~/.claude/skills/workflow-generator/scripts/analyze.py . ~/WORKFLOW.html
195
+ # then open ~/WORKFLOW.html
196
+ ```
197
+
198
+ ---
199
+
200
+ ## Example output (terminal)
201
+
202
+ ```
203
+ Written: /your/project/WORKFLOW.html
204
+ Framework: FastAPI · Workers: 8 · Concurrent I/O: ~800
205
+ Practical throughput: ~50–200 req/min
206
+ Bottleneck: OpenAI (LLM latency 3–30s per call)
207
+ Gateway: nginx · 2 rate limit zone(s)
208
+ LLM: OpenAI · eval: TruLens RAG Triad
209
+ Storage: Qdrant, Redis
210
+ External sources: Jira, Azure DevOps, Slack
211
+ ```
212
+
213
+ ---
214
+
215
+ ## Repo layout
216
+
217
+ ```
218
+ workflow-generator/
219
+ ├── SKILL.md ← Claude Code skill definition
220
+ ├── INSTALL.md ← detailed per-platform install guide
221
+ ├── scripts/
222
+ │ └── analyze.py ← core scanner + HTML renderer (stdlib only)
223
+ ├── mcp/
224
+ │ ├── server.py ← MCP stdio server
225
+ │ └── requirements.txt ← pip install mcp
226
+ └── copilot/
227
+ ├── index.js ← GitHub Copilot Extension (Express)
228
+ ├── package.json
229
+ └── openai_function.json
230
+ ```
231
+
232
+ ---
233
+
234
+ ## License
235
+
236
+ MIT
@@ -0,0 +1,33 @@
1
+ [build-system]
2
+ requires = ["setuptools>=68"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "workflow-generator-mcp"
7
+ version = "0.2.0"
8
+ description = "Generate a visual system architecture diagram (WORKFLOW.html) with concurrency capacity estimates and bottleneck analysis from any codebase — CLI + MCP server, stdlib-only scanner."
9
+ readme = "README.md"
10
+ license = { text = "MIT" }
11
+ authors = [{ name = "Ashutosh Kumar" }]
12
+ requires-python = ">=3.10"
13
+ dependencies = ["mcp>=1.0.0"]
14
+ keywords = ["mcp", "mcp-server", "architecture", "diagram", "concurrency", "bottleneck", "static-analysis", "claude"]
15
+ classifiers = [
16
+ "Development Status :: 4 - Beta",
17
+ "Intended Audience :: Developers",
18
+ "License :: OSI Approved :: MIT License",
19
+ "Programming Language :: Python :: 3",
20
+ "Topic :: Software Development :: Documentation",
21
+ ]
22
+
23
+ [project.scripts]
24
+ workflow-generator-mcp = "workflow_generator_mcp.server:main"
25
+ workflow-generator = "workflow_generator_mcp.analyze:main"
26
+
27
+ [project.urls]
28
+ Homepage = "https://github.com/askuma/workflow-generator"
29
+ Repository = "https://github.com/askuma/workflow-generator"
30
+ "Live Demo" = "https://askuma.github.io/workflow-generator/"
31
+
32
+ [tool.setuptools]
33
+ packages = ["workflow_generator_mcp"]
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,3 @@
1
+ """workflow-generator — architecture diagrams with capacity analysis from any codebase."""
2
+
3
+ __version__ = "0.2.0"