Skip to main content

mcp-methods

Shared Rust-powered utilities for Model Context Protocol servers. Pip-installable Python library AND a native Rust crate AND a generic CLI binary — three distribution shapes, one set of primitives.

Fast file search (ripgrep-backed), GitHub integration with smart compaction, text utilities, and an rmcp-backed MCP server framework with YAML-manifest configuration. The common building blocks needed when writing MCP tool servers.

The Rust library is the source of truth; the Python wheel is a thin pyo3 binding over it. Rust consumers see zero pyo3 in their dep tree.

Install

Python — pip install

pip install mcp-methods
from mcp_methods import ElementCache, ripgrep, list_dir, github_discussions, read_file

The wheel ships the mcp-server CLI on PATH alongside the library — which mcp-server should resolve immediately. Single abi3 wheel per OS; works on Python 3.10 through 3.13 without reinstall.

Rust library — cargo add

[dependencies]
mcp-methods = "0.5"
use mcp_methods::cache::ElementCache;
use mcp_methods::{github, files, grep, list_dir, compact, html};
use mcp_methods::server::{McpServer, ServerOptions, Manifest}; // with default `server` feature

Zero pyo3 in the dep tree. The server feature (default-on) adds the rmcp-backed framework; disable with default-features = false for the bare primitives. The 0.4 line requires Rust 1.88 or newer.

For pre-release coordination — pinning against a specific commit while the framework is iterating quickly — depend on a git rev:

mcp-methods = { git = "https://github.com/kkollsga/mcp-methods.git", rev = "<short SHA>", features = ["server"] }

The downstream kglite-mcp-server uses this pattern to stay locked to the exact framework rev its integration tests pass against.

CLI — cargo install (alternative path)

The CLI ships in the pip wheel by default. If you'd rather skip Python:

cargo install --git https://github.com/kkollsga/mcp-methods mcp-server

Not on crates.io — mcp-server is unpublished on purpose. The Rust library on crates.io is the published surface; the binary ships via the wheel and via git.

Documentation

Full docs at mcp-methods.readthedocs.io (Sphinx + Read the Docs, structured along Diátaxis lines):

  • Getting Started — 15-minute walkthrough from pip install to a running server
  • Core Concepts — manifest, operating modes, trust gates, downstream-binary pattern
  • Guides — writing a manifest, downstream binaries, trust gates, python bindings, watch + workspace modes
  • Reference — manifest schema, Python API, Rust API
  • Explanation — three-crate architecture, advisory-trust pattern, distribution shape

Rust API rustdoc: docs.rs/mcp-methods.

What's included

Primitive Purpose
list_dir Tree-formatted directory listing with depth, glob, .gitignore, annotation
ripgrep_files, ripgrep, ripgrep_lines Ripgrep-powered search (in-process, no subprocess)
read_file Safe file reading with path traversal protection
github_discussions, git_api GitHub issue/PR fetching with smart compaction, REST wrapper
ElementCache Drill-down cache for collapsed elements in GitHub discussions
html_to_text, compact_text, collapse_code_blocks Text utilities
extract_github_refs, detect_git_repo, validate_repo Git/GitHub helpers
mcp_methods.fastmcp Composable tool registrations for FastMCP servers
SkillRegistry, Skill, register_skills_as_prompts Operator-authored methodology as MCP prompts (layered: project → domain pack → manifest-inline → owned → bundled defaults). See crates/mcp-methods/dev-documentation/skills-aware-mcp.md for the design doc.

Plus the server framework in mcp_methods::server::*: McpServer, ServerOptions, Manifest, Workspace, watch_dir, load_env_walk, serve_prompts. See the Rust API reference.

License

MIT.

Metadata

Release files for mcp-methods 0.5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for mcp-methods 0.5.1
File Interpreter ABI Platform
mcp_methods-0.5.1-cp310-abi3-win_amd64.whl CPython 3.10 abi3 Windows x86-64 Details
mcp_methods-0.5.1-cp310-abi3-manylinux_2_39_x86_64.whl CPython 3.10 abi3 Linux glibc 2.39+ x86-64 Details
mcp_methods-0.5.1-cp310-abi3-macosx_11_0_arm64.whl CPython 3.10 abi3 macOS 11.0+ ARM64 Details

Total release size: 26.2 MB

Release files / mcp_methods-0.5.1-cp310-abi3-win_amd64.whl

Download URL mcp_methods-0.5.1-cp310-abi3-win_amd64.whl
Size 8.2 MB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
7d2db89c91c07a18e9df2db3d6d4e9bf98e18cf3124389fd1fffd1487bcbe836
BLAKE2b-256 checksum
How to use checksums
79d0da03e18e7483edb73063e7c2f3a2c6038c03cd5dfd2c13deecc723a770d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / mcp_methods-0.5.1-cp310-abi3-manylinux_2_39_x86_64.whl

Download URL mcp_methods-0.5.1-cp310-abi3-manylinux_2_39_x86_64.whl
Size 9.5 MB
Tags CPython 3.10 Linux glibc 2.39+ x86-64 abi3
SHA-256 checksum
How to use checksums
793b700726e2710d93226e545d9321d741f628f6afccc4a0c4dbbd478d314293
BLAKE2b-256 checksum
How to use checksums
5d564af751a9e2be14333935dff1c33f00c083924f2dd813eb233f6a6cfbb0b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / mcp_methods-0.5.1-cp310-abi3-macosx_11_0_arm64.whl

Download URL mcp_methods-0.5.1-cp310-abi3-macosx_11_0_arm64.whl
Size 8.5 MB
Tags CPython 3.10 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
b03c825edff774b80b18de19ffc6d10fb7d55d2092d65752d896bb4abd647c03
BLAKE2b-256 checksum
How to use checksums
d3850721a2ac9cee6bfb2653942c3288c6cd846a0e3ce0fb54250bc5db904b19
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Security for mcp-methods 0.5.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.5.1 This release

3 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page