Package once for compatible clients
Use one manifest and fixed locations for skills and MCP servers, with namespaced extensions for client-specific behavior.
Organize the plugin
Package portable skills and MCP server configuration, plus client extensions, with their Python library. One install exposes the matching plugin through Python metadata.
Use one manifest and fixed locations for skills and MCP servers, with namespaced extensions for client-specific behavior.
Organize the plugin
Locate the installed plugin by distribution name and inspect its manifest, components, and extension files.
Inspect an installation
One Python project carries the library and its Agent Plugin. Building it produces one wheel, installing that wheel places both in site-packages, and agent_plugins.locate() returns the plugin for the installed library version.
[tool.agent-plugins]
my-project/ ├─ plugin.json ├─ skills/ └─ packages/python/ └─ src/my_project/
uv build
my_project-0.1.0-py3-none-any.whl
library Agent Plugin one version
pip install dist/*.whl
site-packages/ ├─ my_project/ ├─ my_project-0.1.0.agent-plugin/ └─ my_project-0.1.0.dist-info/ └─ agent_plugins.json
import agent_plugins as ap
ap.locate("my-project")
├─ .manifest
├─ .skills
├─ .mcp
└─ .path