io.github.opjhabuilds/designpin-mcp-server
Push HTML prototypes to DesignPin for team review and pull reviewer feedback into your AI.
Open source Open in the app JSON README (API)
About
Push HTML prototypes to DesignPin for team review and pull reviewer feedback into your AI.
Details
- Kind
- MCP servers
- Topic
- No topic detected
- Publisher
- opjhabuilds
- Origin
- official
- Category
- ferramentas
- Transport
- local
- Version
- 0.1.2
- Last push
- 2026-05-02T19:25:06Z
- Repository state
- ativo
- Language
- JavaScript
- License
- MIT
- Added
- 2026-08-29 04:00:58
- Updated
- 2026-08-29 04:00:58
- Origin id
io.github.opjhabuilds/designpin-mcp-server
README
# DesignPin MCP Server
<!-- mcp-name: io.github.opjhabuilds/designpin-mcp-server -->
> An MCP server that lets any AI assistant push HTML prototypes to **[DesignPin](https://designpin.pro)** for team review and read back reviewer feedback.
## What this does
DesignPin is a tool for reviewing HTML prototypes with DOM-anchored comments. This package wraps the DesignPin REST API as a [Model Context Protocol](https://modelcontextprotocol.io) server, exposing three tools — `createShareLink`, `uploadVersion`, `listComments` — to any MCP-compatible AI client.
Once configured, your AI assistant — Claude Desktop, Cursor, VS Code (Copilot), Gemini CLI, or any other MCP-compatible client — can ship a generated HTML prototype to a shareable review link, pull back reviewer comments to incorporate, and push iterations as new versions, all from inside the same conversation that produced the design.
> **For ChatGPT users:** ChatGPT does not currently support MCP servers. Use the [direct REST API](https://designpin.pro/openapi.json) via Custom GPT Actions instead — no MCP server needed.
## Install + run
The server is invoked by your MCP client; you don't run it directly during normal use. The simplest path is `npx` invocation, which fetches and runs without a global install:
```bash
npx -y @designpin/mcp-server --api-key dp_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx --project-id proj_example_abc123
```
For most workflows you'll set this in your MCP client's config file rather than running it manually — see [Client config examples](#client-config-examples) below.
To verify the install works:
```bash
npx -y @designpin/mcp-server --version
# → 0.1.0
npx -y @designpin/mcp-server --help
# → usage info
```
## Get an API key
1. Open [designpin.pro](https://designpin.pro) and sign in.
2. Open any project (or create one).
3. Click **API & Integrations** in the project header.
4. Click **Generate new key**, give it a name (e.g. "Claude Desktop").
5. **Copy the key immediately** — it's shown once and cannot be retrieved later.
Each key is scoped to a single project. Generate separate keys per client / use case so you can revoke them individually.
## Configuration
Both CLI flags and environment variables are supported. Flags win when both are present.
| CLI flag | Env var | Required | Default | Description |
|---|---|---|---|---|
| `--api-key` | `DESIGNPIN_API_KEY` | for `uploadVersion`, `listComments` | — | Your `dp_live_...` API key |
| `--project-id` | `DESIGNPIN_PROJECT_ID` | for `uploadVersion` | — | Project ID the key is scoped to |
| `--base-url` | `DESIGNPIN_BASE_URL` | no | `https://designpin.pro` | API base URL (override for testing) |
| `--help` | — | no | — | Show usage and exit |
| `--version` | — | no | — | Print version and exit |
> **Security note:** CLI flags are visible in `ps` output on multi-user systems. Prefer environment variables on shared machines.
## Tools
### `createShareLink`
Create a public review link for an HTML prototype. No project setup required — creates a brand-new throwaway project. Rate-limited to 10 requests/hour per IP.
| Input | Type | Required | Description |
|---|---|---|---|
| `html` | string | yes | Complete HTML document to share |
| `title` | string | yes | Display name for the share, max 80 chars |
| `authorName` | string | no | Author name shown on review page |
**Returns:** JSON with `url`, `reviewToken`, `projectId`, `moduleId`, `versionId`.
**Example prompt to your AI assistant:**
> "Take this HTML and create a DesignPin share link titled 'Landing page hero V3'."
### `uploadVersion`
Upload a new HTML version to an existing DesignPin module. Auto-increments `versionNumber`. Requires the API key + `projectId` from configuration plus a `moduleId` from the user.
| Input | Type | Required | Description |
|---|---|---|---|
| `html` | string | yes | Complete HTML for the new version |
| `moduleId` | string | yes | Target module within the configured project |
| `description` | string | no | Version description shown in the sidebar |
**Returns:** JSON with `url`, `versionId`, `versionNumber`.
**Example prompt:**
> "Push this revised HTML as a new version to module `mod_example_def456` with the description 'Address pin #3 contrast feedback'."
### `listComments`
Fetch comments visible on a specific version of a DesignPin module. Uses chronological cutoff semantics matching the web UI: a comment is visible on version V if its origin version is V or any earlier version.
| Input | Type | Required | Description |
|---|---|---|---|
| `moduleId` | string | yes | Module ID |
| `versionId` | string | yes | Specific version to view comments on |
**Returns:** JSON with a `comments` array and a `summary` string like `"3 open, 1 resolved"`.
**Example prompt:**
> "Get the comments on module `mod_example_def456` at version `ver_example_ghi789` and tell me what's blocking approval."
## Client config examples
<details>
<summary><b>Claude Desktop</b></summary>
Edit `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):
```json
{
"mcpServers": {
"designpin": {
"command": "npx",
"args": ["-y", "@designpin/mcp-server"],
"env": {
"DESIGNPIN_API_KEY": "dp_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"DESIGNPIN_PROJECT_ID": "proj_example_abc123"
}
}
}
}
```
Restart Claude Desktop after saving.
</details>
<details>
<summary><b>Cursor</b></summary>
Edit `~/.cursor/mcp.json`:
```json
{
"mcpServers": {
"designpin": {
"command": "npx",
"args": ["-y", "@designpin/mcp-server"],
"env": {
"DESIGNPIN_API_KEY": "dp_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"DESIGNPIN_PROJECT_ID": "proj_example_abc123"
}
}
}
}
```
Reload Cursor after saving.
</details>
<details>
<summary><b>VS Code (Copilot with MCP)</b></summary>
Add to your VS Code user settings JSON or a workspace `.vscode/mcp.json`:
```json
{
"servers": {
"designpin": {
"command": "npx",
"args": ["-y", "@designpin/mcp-server"],
"env": {
"DESIGNPIN_API_KEY": "dp_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"DESIGNPIN_PROJECT_ID": "proj_example_abc123"
}
}
}
}
```
</details>
<details>
<summary><b>Gemini CLI extension</b></summary>
Edit your Gemini CLI config (path varies by version). Both the env-style and the flag-style work; flag-style is shown here:
```json
{
"mcpServers": {
"designpin": {
"command": "npx",
"args": [
"-y", "@designpin/mcp-server",
"--api-key", "dp_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"--project-id", "proj_example_abc123"
]
}
}
}
```
</details>
## Example conversation
```
You: Generate a pricing page with three tiers (Free, Pro $12, Team $29).
Push it to DesignPin so my team can review.
AI: [generates HTML, calls createShareLink]
Share link created. Send this to your team:
https://designpin.pro/review/EXAMPLE_TOKEN_xyz
Project: proj_example_abc123
Module: mod_example_def456
Version: ver_example_ghi789
[team reviews and leaves 4 comments]
You: Pull the feedback from module mod_example_def456 at version
ver_example_ghi789 and address the must-fix comments.
AI: [calls listComments]
Open comments (4):
- P0 Pin #1 "CTA contrast fails WCAG AA on the Pro tier"
- P1 Pin #2 "Pricing hidden until hover — make always visible"
- P1 Pin #3 "Annual toggle is ambiguous — show savings %"
- P2 Pin #4 "Logo could link back to homepage"
I'll regenerate the HTML with the two P0/P1 issues addressed.
You: Push the revision.
AI: [generates updated HTML, calls uploadVersion]
v2 uploaded. Same review URL — your team can compare versions.
```
## Direct REST API
If you want to call the DesignPin API without an MCP server, the OpenAPI 3.1 spec is published at:
**https://designpin.pro/openapi.json**
Import it into Postman, generate a client SDK, or use it directly with ChatGPT Custom GPT Actions.
## Links
- **DesignPin app:** https://designpin.pro
- **OpenAPI spec:** https://designpin.pro/openapi.json
- **GitHub:** https://github.com/opjhabuilds/designpin-mcp-server
- **Issues:** https://github.com/opjhabuilds/designpin-mcp-server/issues
## License
MIT © 2026 Omprakash Jha