Skip to content

Add MCPB bundle support for Claude Desktop#9

Open
devin-ai-integration[bot] wants to merge 4 commits into
mainfrom
devin/1778100711-add-mcpb-bundle
Open

Add MCPB bundle support for Claude Desktop#9
devin-ai-integration[bot] wants to merge 4 commits into
mainfrom
devin/1778100711-add-mcpb-bundle

Conversation

@devin-ai-integration
Copy link
Copy Markdown
Contributor

Summary

Adds .mcpb (MCP Bundle) packaging support so the PEX MCP Server can be distributed as a single-file install for Claude Desktop and other MCP-compatible clients.

What's included:

  • manifest.json — MCPB v0.3 manifest declaring all 72 tools, user config for PEX_API_URL and PEX_API_TOKEN (stored in OS keychain), and Node.js server config
  • scripts/build-mcpb.sh — Build script that compiles TypeScript, prunes devDependencies, and packages everything into a .mcpb ZIP archive
  • npm run bundle — Package.json script alias for the build
  • .gitignore — Added *.mcpb to ignore built bundle artifacts

How to build:

npm run bundle
# Produces: pex-api-mcp.mcpb (ZIP archive, ~3.8MB)

How to install:

Double-click the .mcpb file in Claude Desktop, or drag it into Settings. Users will be prompted for their PEX API URL and token.

Review & Testing Checklist for Human

  • Verify manifest.json tool list matches current tool count (72) — if tools have been added/removed since, the manifest needs updating
  • Run npm run bundle and verify the .mcpb file is produced
  • Extract the .mcpb (rename to .zip) and verify it contains manifest.json, dist/, node_modules/, README.md, LICENSE
  • Test installing the .mcpb in Claude Desktop and confirm tools are available

Notes

  • The bundle uses Node.js server type (recommended by the spec since Node ships with Claude Desktop)
  • manifest.json version should be kept in sync with package.json version on each release
  • The tools_generated flag is false since all 72 tools are statically declared

Link to Devin session: https://app.devin.ai/sessions/ab950054520f4c22b790d6bfdbd97a0c

- Add manifest.json (v0.3 spec) with all 72 tools declared
- Add scripts/build-mcpb.sh to produce .mcpb ZIP archive
- Add 'npm run bundle' script to package.json
- Add *.mcpb to .gitignore (build artifact)

Co-Authored-By: hdorfman <hdorfman@pexcard.com>
@devin-ai-integration
Copy link
Copy Markdown
Contributor Author

Original prompt from hdorfman

SYSTEM:
=== BEGIN THREAD HISTORY ===
<most_recent_message>
Hannah Duke-Cohan (U02Q65MRWFK): Which endpoint within our external api returns the business id? this is for one of our partners looking to find the right identifier for oauth authentication for establishing the initial connection between the business account and their system
</most_recent_message>
=== END THREAD HISTORY ===

Thread URL: https://pexcard.slack.com/archives/D09DCDB8K6W/p1777571331954919?thread_ts=1777571331.954919&amp;cid=D09DCDB8K6W

The latest message is the one right above that tagged you. The <most_recent_message> is the message that you should use to guide your goals + task for this session, and you should use the rest of the slack thread as context.

@devin-ai-integration
Copy link
Copy Markdown
Contributor Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR that start with 'DevinAI' or '@devin'.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

@tybaker tybaker marked this pull request as ready for review May 7, 2026 13:26
devin-ai-integration[bot]

This comment was marked as resolved.

Co-Authored-By: hdorfman <hdorfman@pexcard.com>
devin-ai-integration[bot]

This comment was marked as resolved.

…fy read-only description

- Move ERR trap before npm prune so it catches prune failures too
- Remove LICENSE* exclusion from zip to preserve dependency license files
- Update manifest description to use read-only language (view/query/check instead of manage/enforce)

Co-Authored-By: hdorfman <hdorfman@pexcard.com>
devin-ai-integration[bot]

This comment was marked as resolved.

…SE.md files

Co-Authored-By: hdorfman <hdorfman@pexcard.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants