mcpmake 0.2.0 → 0.2.1

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.
Files changed (2) hide show
  1. package/README.md +144 -0
  2. package/package.json +2 -2
package/README.md ADDED
@@ -0,0 +1,144 @@
1
+ # mcpmake
2
+
3
+ **Turn any API into an MCP server an AI agent can actually use — in one command.**
4
+
5
+ `mcpmake` reads what you already have — an OpenAPI spec, a Postman collection, a
6
+ HAR capture, a live URL, a whole website, or just a plain-English description —
7
+ and generates a clean, typed, editable [Model Context Protocol](https://modelcontextprotocol.io)
8
+ server. No boilerplate, no SDK lock-in.
9
+
10
+ [![npm](https://img.shields.io/npm/v/mcpmake.svg)](https://www.npmjs.com/package/mcpmake)
11
+ [![License: Apache-2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)
12
+ [![Node >= 20](https://img.shields.io/badge/node-%3E%3D20-brightgreen.svg)](https://nodejs.org)
13
+
14
+ ---
15
+
16
+ ## Six ways in
17
+
18
+ | Input | Command |
19
+ |-------|---------|
20
+ | OpenAPI / Swagger spec | `mcpmake from openapi ./spec.yaml -o ./server` |
21
+ | Postman collection | `mcpmake from postman ./collection.json -o ./server` |
22
+ | HAR capture (recorded traffic) | `mcpmake from har ./session.har -o ./server` |
23
+ | A live URL (record it for you) | `mcpmake from url https://api.example.com -o ./server` |
24
+ | A whole website (browser tools) | `mcpmake from website https://example.com -o ./server` |
25
+ | A plain-English description | `mcpmake from describe "a todo API with auth" -o ./server` |
26
+
27
+ Every path produces the same thing: an MCP server **you own**.
28
+
29
+ ## Quickstart
30
+
31
+ ```bash
32
+ npx mcpmake from openapi ./spec.yaml -o ./server
33
+ ```
34
+
35
+ Then point your MCP client (Claude Desktop, Cursor, your own agent, …) at the
36
+ generated server. That's it.
37
+
38
+ ```bash
39
+ cd server
40
+ npm install
41
+ npm start
42
+ ```
43
+
44
+ ## You own the output
45
+
46
+ `mcpmake` is licensed under **Apache-2.0**, and so is the code it produces — but
47
+ your generated server has **no runtime dependency on mcpmake and no license
48
+ strings attached**. Edit it, host it, ship it, sell it. There is no lock-in: the
49
+ output is plain TypeScript (or Python, or a Cloudflare Worker) that you control.
50
+
51
+ ## Don't want to host it yourself?
52
+
53
+ Generating the server is the easy part. Running it in production — with auth,
54
+ metering, rate limits, and quotas — is where the work is.
55
+
56
+ **Deploy and host your MCP server with auth, metering, and quotas at
57
+ [mcpmake.dev](https://mcpmake.dev).** Sign up, push, and get a managed endpoint:
58
+
59
+ ```bash
60
+ mcpmake deploy ./server
61
+ ```
62
+
63
+ ## Keep it in sync (CI)
64
+
65
+ APIs drift. When your spec changes, your MCP server should regenerate itself.
66
+ Wire it into CI in one step:
67
+
68
+ ```bash
69
+ mcpmake ci init
70
+ ```
71
+
72
+ This scaffolds a GitHub Actions workflow that re-generates your server on every
73
+ spec change. Pair it with managed [spec-sync on mcpmake.dev](https://mcpmake.dev)
74
+ to keep a hosted server continuously up to date.
75
+
76
+ ## Migrating off Stainless?
77
+
78
+ `mcpmake` reads the **same OpenAPI spec** your Stainless SDK is built from — you
79
+ are one command away from an MCP server:
80
+
81
+ ```bash
82
+ mcpmake from stainless ./stainless.yml -o ./server
83
+ ```
84
+
85
+ See the migration guide at **[mcpmake.dev](https://mcpmake.dev)**.
86
+
87
+ ## Publish to a registry
88
+
89
+ Generated servers can be published to the MCP ecosystem — mcp.so, Smithery,
90
+ Glama, and the official registry:
91
+
92
+ ```bash
93
+ mcpmake publish ./server
94
+ ```
95
+
96
+ ## All commands
97
+
98
+ ```text
99
+ $ mcpmake --help
100
+
101
+ mcpmake — Generate MCP servers from API specifications
102
+
103
+ COMMANDS
104
+ from openapi Generate from an OpenAPI / Swagger spec
105
+ from postman Generate from a Postman collection
106
+ from har Generate from a HAR capture
107
+ from url Record a live URL and generate from the captured traffic
108
+ from website Crawl a website and generate browser-driven tools
109
+ from describe Generate from a plain-English description
110
+ from stainless Generate from a Stainless config (migration)
111
+ merge Merge multiple specs into one server
112
+ verify Verify a generated server against its source spec
113
+ update Re-generate a server from an updated spec
114
+ diff Show what would change before regenerating
115
+ lint Lint a spec for MCP-generation issues
116
+ bundle Bundle a server into a distributable .mcpb
117
+ publish Publish a server to MCP registries
118
+ ci Scaffold CI (spec-sync) — `mcpmake ci init`
119
+ rescan Re-scan a website server and heal broken selectors
120
+ deploy Deploy a server to managed hosting (mcpmake.dev)
121
+ ```
122
+
123
+ Run `mcpmake <command> --help` for command-specific flags (targets, transports,
124
+ filtering, Python / Cloudflare Workers output, and more).
125
+
126
+ ## Built on `@mcpmake/core`
127
+
128
+ The CLI is a thin wrapper around
129
+ [`@mcpmake/core`](https://www.npmjs.com/package/@mcpmake/core) — the shared
130
+ generation library (parsers, transformers, emitters, templates). Use it directly
131
+ to build your own tooling.
132
+
133
+ ## Requirements
134
+
135
+ - Node.js **>= 20**
136
+
137
+ ## License
138
+
139
+ [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0). The servers you
140
+ generate are yours.
141
+
142
+ ---
143
+
144
+ Built by the [mcpmake](https://mcpmake.dev) team · [Docs](https://mcpmake.dev) · [Hosting](https://mcpmake.dev)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcpmake",
3
- "version": "0.2.0",
3
+ "version": "0.2.1",
4
4
  "description": "Generate MCP servers from OpenAPI, HAR, Postman, a URL, a website, or a plain-English description.",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -35,7 +35,7 @@
35
35
  "test": "vitest run"
36
36
  },
37
37
  "dependencies": {
38
- "@mcpmake/core": "^0.2.0",
38
+ "@mcpmake/core": "^0.2.1",
39
39
  "citty": "^0.1.6",
40
40
  "openapi-types": "^12.1.3",
41
41
  "playwright": "^1.59.1",