Commit graph mcpb/MANIFEST.md
Author SHA1 Message Date
Bryan Thompson
a5d9ae8ed2
fix: repair broken examples and graduate UV runtime from experimental
- hello-world-node: wrap server startup in async main() with proper
  await on server.connect(transport) — fixes crash on initialize in
  Claude Desktop UtilityProcess runtime (closes #200)
- hello-world-uv: add required mcp_config block — v0.4 schema requires
  it but the example omitted it, causing mcpb pack to fail
- file-manager-python: convert from broken v0.1/python to v0.4/uv —
  the old manifest had privacy_policies on v0.1 (schema violation),
  used command "python" (ENOENT on macOS), and had no bundled deps.
  Now uses UV runtime with proper mcp_config (closes #47, closes #72)
- Graduate UV runtime from experimental across docs and schema comments
- Bump DEFAULT_MANIFEST_VERSION from 0.2 to 0.3

All three examples verified: pack succeeds, server responds to MCP
initialize over stdio, tools/list returns expected tools.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-12 11:16:30 -05:00
Joan Xie
d90365e626
feat: add UV runtime support in manifest v0.4
Add UV as a new server type for Python extensions that use UV runtime
for dependency management instead of bundling dependencies.

Schema changes (v0.4):
- Add "uv" to server.type enum
- Make mcp_config optional (not needed for UV type)
- UV extensions rely on pyproject.toml for dependencies

Documentation:
- Add UV runtime section to MANIFEST.md explaining benefits and usage
- Update README.md to recommend UV runtime for Python
- Add complete hello-world-uv example

Benefits of UV runtime:
- Cross-platform support (Windows/macOS/Linux, Intel/ARM)
- Small bundle size (~100 KB vs 5-10 MB)
- Handles compiled dependencies portably
- No user Python installation required

Example manifest:
{
  "manifest_version": "0.4",
  "server": {
    "type": "uv",
    "entry_point": "src/server.py"
  }
}

Co-authored-by: Joan <joan@anthropic.com>
2025-12-02 21:22:19 -08:00
joan-anthropic
ce8a5aec4a
Merge pull request #121 from guyru/patch-1
The repository url should actually point to the git repo
2025-10-31 13:52:06 -07:00
Alexander Sklar
257af30812
fix: update icon size property from 'sizes' to 'size' in manifest and schema files 2025-10-30 16:43:54 -07:00
Joan Xie
e7282946b6
fix: lint errors - remove unused import and format files
- Remove unused McpbManifestSchema import from types.ts
- Run prettier on modified files
2025-10-29 16:51:27 -07:00
Alexander Sklar
d929b8c33c
add default for resources property 2025-10-27 11:33:35 -07:00
Alexander Sklar
18d096526e
fix typo 2025-10-27 09:57:53 -07:00
Alexander Sklar
bdcfeadac5
. 2025-10-27 09:43:54 -07:00
Alexander Sklar
1640adefe8
Add localization/theming feature to 0.3 version 2025-10-24 15:48:46 -07:00
Alexander Sklar
443d849420
Refactor manifest schema to replace static_responses and client_extensions with _meta for improved organization 2025-10-10 16:43:33 -07:00
Alexander Sklar
caa61bcc49
Update example to be more real 2025-10-10 16:43:18 -07:00
Alexander Sklar
90c18ca9fb
Add static_responses and client_extensions to manifest schema and tests 2025-10-10 16:43:03 -07:00
adam jones
f2284f6681
Merge pull request #108 from nicolasff/manifest-md-jsonc-syntax
docs: use jsonc syntax highlighting for manifest example
2025-09-24 11:47:01 +01:00
Joan Xie
16e569a337
fix examples 2025-09-22 14:59:42 -07:00
guyru
39fe803479
The repository url should actually point to the git repo
In the example, the repo URL should actually point to the git repo and not the github project.
2025-09-22 17:19:05 +03:00
Nicolas Favre-Felix
9fce5b58d9
docs: use jsonc syntax highlighting for manifest example
The example at the start of MANIFEST.md uses // comments in a ```json
code block, which are highlighted as errors on GitHub. Change this
syntax hint to ```jsonc (JSON with comments) for better rendering.
2025-09-20 07:32:09 -07:00
Joan Xie
bc129a7223
docs: bump manifest version to 0.2
Update manifest spec version from 0.1 to 0.2 to reflect the addition
of the privacy_policies field. Update last updated date to current date.
2025-09-12 12:04:38 -07:00
Joan Xie
9d62ba5d50
docs: clarify privacy_policies field description for external services
Update the privacy_policies field description to be more specific about
its purpose - linking to privacy policies of external services that
handle user data, as required for extensions connecting to first- or
third-party services.
2025-09-12 12:02:52 -07:00
Joan Xie
bd7fdf7e3c
docs: update privacy_policies example to show single URL
Simplify the privacy_policies field example in the documentation to
show a single privacy policy URL.
2025-09-12 11:59:18 -07:00
Joan Xie
a48002ec69
feat: add privacy_policies field to manifest schema
Add optional privacy_policies array field to manifest.json that allows
developers to declare their data handling practices. This field accepts
an array of privacy policy statements that describe how the extension
collects, uses, and protects user data.

- Update manifest schema to include privacy_policies field
- Add empty privacy_policies array to all example manifests
- Document the new field in MANIFEST.md
2025-09-12 11:53:11 -07:00
Joan Xie
5a46a05108
Revert "feat: replace manifest_version with $schema field"
This reverts commit 7997e72758.
2025-08-27 11:24:18 -07:00
Joan Xie
7997e72758
feat: replace manifest_version with $schema field
- Replace manifest_version with $schema field pointing to official schema URL
- Support backward compatibility with legacy dxt_version field
- Update all examples and tests to use new $schema field
- Mark dxt_version as deprecated but still functional
- Require either $schema or dxt_version (at least one must be present)
2025-08-27 10:38:57 -07:00
Joan Xie
76949836e0
fix: update schema to reflect manifest_version 2025-08-25 21:09:45 -07:00
Joan Xie
e1938b9933
rename dxt -> mcpb 2025-08-21 14:56:54 -07:00
Jacob
b062c0efad
fix: missing extension directory prefix in 'mcp_config' of python (#80) 2025-07-23 09:55:54 -07:00
Felix Rieseberg
7c9d61d9e6
chore: A round of "yarn fix" for everyone (#75) 2025-07-18 10:09:52 -07:00
David Dworken
08b34f4f76
fix: prevent zip slip attacks in DXT unpack function (#74)
* fix: prevent zip slip attacks in DXT unpack function

Add path validation to prevent directory traversal attacks when unpacking DXT files.
The fix validates that extracted file paths remain within the intended output directory
before writing files to disk.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: make zip slip protection cross-platform compatible

Use path.sep instead of hardcoded '/' separator to ensure path validation
works correctly on both Windows and Unix systems. This fixes failing tests
on Windows while maintaining security protection against directory traversal.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-07-18 09:35:32 -07:00
Felix Rieseberg
8613de6078
chore: v0.2.0 (#25)
* chore: v0.2.0

* chore: Fix
2025-06-28 18:58:42 -07:00
Felix Rieseberg
0172c07623
🚀 Hello World 2025-06-26 08:38:59 -07:00