artifacts_colector
artifacts_colector
Пример MCP-сервера для предоставления команде версионированных навыков и артефактов: по умолчанию он отдаёт последнюю версию, но любую более старую можно закрепить тегом (например, stable) или точным номером версии.
Реализован на Python (MCP Python SDK v2). Сервер общается со своим клиентом (Claude Code) через stdio и распространяется в виде Docker-образа.
Структура
content/
skills/<name>/manifest.json # description + tags (alias -> version)
skills/<name>/versions/<semver>/... # files for one skill version
artifacts/<name>/manifest.json
artifacts/<name>/versions/<semver>/...
server/
models.py # Pydantic response models (LibraryItemSummary, ResolvedItem)
library.py # scans content/, resolves versions/tags, reads files safely
app.py # MCP server: registers tools and serves them over stdio
Dockerfile
requirements.txtКаждый навык/артефакт — это папка с manifest.json (описание + необязательные теги) и вложенной папкой versions/, где каждая версия находится в собственной папке, названной по её semver (1.0.0, 1.1.0, ...). Версия «latest» вычисляется динамически как наибольший semver среди существующих папок, так что при добавлении новой версии ничего не нужно обновлять вручную.
Related MCP server: SkillShare MCP Server
MCP-инструменты
Tool | Описание |
| Перечисляет все навыки: имя, описание, |
| Получает содержимое навыка по |
| Перечисляет все артефакты: имя, описание, |
| Получает содержимое артефакта по |
Если version опущен, возвращается последняя версия. Если указан тег (например, stable), он разрешается в ту версию, на которую этот тег указывает в manifest.json. Если указан точный semver, возвращается именно эта версия.
Локальный запуск (venv)
Требуется Python 3.10+.
python3 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
python -m server.appПроцесс ничего не выводит и никогда не завершается — он ждёт на stdin, пока MCP-хост не заговорит первым. Это нормально.
Локальная проверка без Claude Code через MCP Inspector (требуется npx):
npx @modelcontextprotocol/inspector --cli python -m server.app --method tools/listЗапуск в Docker
Соберите образ:
docker build -t artifacts-collector-mcp .Запустите вручную:
docker run -i --rm artifacts-collector-mcp(как и выше: он ничего не выводит и блокируется, ожидая JSON-RPC-запросы на stdin; чтобы реально опробовать инструменты, направьте MCP Inspector на ту же команду docker run -i --rm ...).
Подключение из Claude Code
Вариант 1 — Docker (рекомендуется для распространения среди команды)
docker build -t artifacts-collector-mcp .
claude mcp add artifacts-collector -- docker run -i --rm artifacts-collector-mcpИли через файл .mcp.json в корне проекта, где запускается Claude Code:
{
"mcpServers": {
"artifacts-collector": {
"command": "docker",
"args": ["run", "-i", "--rm", "artifacts-collector-mcp"]
}
}
}Образ можно опубликовать в командном реестре (например, ghcr.io/<org>/artifacts-collector-mcp) и распространять через тот же .mcp.json, чтобы коллегам нужен был только docker pull вместо локальной сборки.
Вариант 2 — локальный venv (для разработки самого сервера)
claude mcp add artifacts-collector -- /absolute/path/to/artifacts_colector/.venv/bin/python -m server.appДобавление новой версии навыка/артефакта
Скопируйте последнюю версию в новую папку
versions/<new-semver>/и внесите свои изменения.При желании закрепите стабильную версию тегом в
manifest.json("tags": { "stable": "1.0.0" }).Больше ничего регистрировать не нужно —
latestпересчитывается автоматически.Если вы распространяете через Docker, пересоберите образ (
docker build ...).
Безопасность
name и version/тег, приходящие от MCP-клиента, никогда не подставляются напрямую в путь файловой системы: они принимаются только в том случае, если совпадают с реальным именем папки, найденной при сканировании content/. Это исключает обход пути (path traversal) с помощью значений вроде ../../etc. Контейнер также работает от непривилегированного пользователя (USER mcp в Dockerfile).
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A MCP server built for developers enabling Git based project management with project and personal…
MCP server for skill documentation, generated by doc2mcp.
MCP Server for JFrog, providing tools for development and artifact management.
Hosted MCP server for live public-data APIs and Skills for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceAn MCP server for searching, security scanning, installing, and managing skills from the SkillsMP marketplace, designed for Claude Code and other MCP-compatible clients.144MIT
- AlicenseNot gradedqualityAmaintenanceAn MCP server that enables AI agents to interact with the SkillShare registry, including searching, reading, creating, and managing resources like skills, MCP configurations, and notes.MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that makes Agent Skills available to any MCP-compatible agent through a declarative, package.json-based configuration, enabling team-shareable skill management and execution.4MIT
- AlicenseNot gradedqualityDmaintenanceA powerful MCP server that brings the skills.sh ecosystem directly to your AI agents, enabling effortless discovery, installation, and management of skills.1MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/osJedi/artifacts_colector'
If you have feedback or need assistance with the MCP directory API, please join our Discord server