Catalog PyPI
PACKAGE EXPLORERView in registry

agentskills-mcp-server

PyPI

Serve the official MCP Skills extension with lossless resources (https://agentskills.io)

Versions collected1
Direct dependencies5From release 0.7.0
Last observed20 Oct, 23:24 UTC

README

Version 0.7.0 documentation

title: Agent Skills MCP Server description: Serve the official MCP Skills extension with immutable, lossless resources.

Native Skills Only

The v0.7 development line requires MCP SDK >=2.2,<3. It serves the official io.modelcontextprotocol/skills extension on protocol 2026-07-28 through skills/list, skills/get, and canonical skill:// resources. Clients on older protocol revisions see the same skill:// files as ordinary resources and cannot call the Skills methods. See the breaking-change guide. v0.7 is not yet released. Install the development checkout until publication.

Install

The release install is pip install 'agentskills-mcp-server[fs]>=0.7,<0.8'. For development, install the local core, filesystem, and MCP packages together:

python -m pip install ./packages/core/agentskills-core ./packages/providers/agentskills-fs ./packages/integrations/agentskills-mcp-server

The [http] extra adds the HTTP provider. Publisher verification needs agentskills-core[verification] and OpenTelemetry export needs agentskills-core[telemetry]. Use an isolated server environment when a host framework pins a different MCP SDK version.

Serve a Folder

import asyncio
from pathlib import Path

from agentskills_core import Skill
from agentskills_fs import LocalFileSystemSkillProvider
from agentskills_mcp_server import create_mcp_server

provider = LocalFileSystemSkillProvider(Path("./skills"))
server = asyncio.run(create_mcp_server([Skill("incident-response", provider)]))
server.run(transport="stdio")

create_mcp_server is async and accepts a SkillRegistry or a sequence of raw Skill handles. Raw handles avoid imposing registry-specific parsing restrictions before publication. Discovery is metadata-only, including for a single skill.

The factory captures complete immutable file sets before serving. It preserves original SKILL.md bytes, frontmatter, supporting directories, and binary files. Each manifest contains raw-byte SHA-256 digests and sizes. A file whose bytes are valid UTF-8 without NUL is read as text and every other file as blob. Both forms return the exact captured bytes. Programmatic servers support await server.refresh() and server.health(). Server-provided hashes establish consistency, not publisher identity or safety. Programmatic callers own provider cleanup and must keep providers open for refresh. Optional publication_policy verifies detached signatures, pins content, and applies reject/redact/annotate hooks before manifests are generated. See the trust and operability guide for publisher configuration, token limits, verified stale policy, telemetry, and authenticated remote HTTP deployment.

Configuration

{
  "name": "Skills Server",
  "skills": [
    {"id": "incident-response", "provider": "fs", "options": {"root": "./skills"}}
  ]
}
python -m agentskills_mcp_server --config server.json --check
python -m agentskills_mcp_server --config server.json
python -m agentskills_mcp_server --config server.json --transport streamable-http

JSON and YAML are supported. ${VAR} placeholders resolve from the environment. Unknown top-level keys are rejected. The CLI closes owned provider clients after capture, including on failure.

FieldDefaultMeaning
nameRequiredServer display name
skillsRequired, nonemptyIDs, provider types, and constructor options
instructionsnullOptional server-level instructions
skill_paths{}Registry ID to canonical publication path
listed_skill_idsnullOptional listing subset, not authorization
page_size100Maximum entries per discovery page
max_skills128Publication skill-count ceiling
max_total_bytes67108864Total captured source byte ceiling

Filesystem options include root and max_file_bytes. HTTP options include base_url, headers, params, file_manifest, resource_manifest, and max_response_bytes. HTTP native publication requires file_manifest: true and a public destination by default. Internal destinations require explicit allow_private_network: true. Redirects are always rejected. Configure require_tls, timeout, and retry limits as needed. Publication requires a complete per-skill file index. See the HTTP provider.

The extension enforces 512 files and 16 MiB per skill. Directory reads are not advertised. Nested skills require explicit publication and separate host approval. Listed subsets never restrict direct lookup of a published skill. Supply only skills authorized for the server audience.

The tools CLI uses native publication by default:

agentskills inspect ./skills --native
agentskills serve ./skills --check
agentskills serve ./skills --transport stdio

--check verifies local construction, manifests, and provider readiness without listening. It does not certify transport, authentication, or host behavior.

Client Support and Boundaries

Tests exercise MCP 2.2.0 Client in-process, over stdio, and over real loopback Streamable HTTP. CI also checks mcpc 0.7.0 discovery, aliases, pagination, and exact resource bytes. Use SDK 2 Client for extension negotiation, not its older ClientSession compatibility API. Ordinary tools/resources connectivity does not establish Skills support.

Hosts own selection, manifest verification, origin visibility, per-skill consent, context injection, session tracking, image rendering, and execution policy. Resource reads never execute scripts or grant allowed-tools.

Production HTTP deployments must supply TLS, MCP authorization, audience isolation, and appropriate origin/host validation. Do not pass client bearer tokens to upstream providers. Local tests are not production deployment certification.

Benchmarks

The benchmark guide describes native discovery and progressive reads over bounded synthetic catalogs. It does not measure model quality or production network performance.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
0.7.09 Oct 20265

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
pratikxpanda/agentskills-sdk

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 23:24 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:619feaf4c4f37c1ec9450eef64494c37e8cb85ce72ae1df3f84b8616968691eb