io.github.opjhabuilds/designpin-mcp-server
Push HTML prototypes to DesignPin for team review and pull reviewer feedback into your AI.
Ask AI about io.github.opjhabuilds/designpin-mcp-server
Powered by Claude Β· Grounded in docs
I know everything about io.github.opjhabuilds/designpin-mcp-server. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
DesignPin MCP Server
An MCP server that lets any AI assistant push HTML prototypes to DesignPin 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 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 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:
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 below.
To verify the install works:
npx -y @designpin/mcp-server --version
# β 0.1.0
npx -y @designpin/mcp-server --help
# β usage info
Get an API key
- Open designpin.pro and sign in.
- Open any project (or create one).
- Click API & Integrations in the project header.
- Click Generate new key, give it a name (e.g. "Claude Desktop").
- 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
psoutput 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_def456with 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_def456at versionver_example_ghi789and tell me what's blocking approval."
Client config examples
Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"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.
Cursor
Edit ~/.cursor/mcp.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.
VS Code (Copilot with MCP)
Add to your VS Code user settings JSON or a workspace .vscode/mcp.json:
{
"servers": {
"designpin": {
"command": "npx",
"args": ["-y", "@designpin/mcp-server"],
"env": {
"DESIGNPIN_API_KEY": "dp_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"DESIGNPIN_PROJECT_ID": "proj_example_abc123"
}
}
}
}
Gemini CLI extension
Edit your Gemini CLI config (path varies by version). Both the env-style and the flag-style work; flag-style is shown here:
{
"mcpServers": {
"designpin": {
"command": "npx",
"args": [
"-y", "@designpin/mcp-server",
"--api-key", "dp_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"--project-id", "proj_example_abc123"
]
}
}
}
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
