
Pforge
io.github.paimlPublished by GitHub account paimlv0.1.2Updated Oct 24, 2026
Zero-boilerplate MCP server framework with declarative YAML configuration
Overview
A Rust CLI framework that lets developers define MCP servers in YAML instead of writing boilerplate code, then run them locally over stdio.
- What you can do
- Scaffold a new MCP server project and run it as a local stdio server
- Declare tools in a YAML file and generate optimized Rust code from that configuration
- Implement tool handlers as native Rust functions, shell commands, HTTP proxies, or chained pipelines
- Build handlers in TypeScript/Deno through a provided language bridge, with Python, Go and Node.js bridges listed as coming soon
- Run tests and quality gates for the generated project
- When to use it
- Useful when you want to build your own MCP server quickly with declarative configuration rather than hand-writing protocol code, or when you prefer a Rust-based toolchain and YAML-defined tools.
- Requirements
- Runs as a local process on the user's machine (desktop only). Installed via Cargo (cargo install pforge-cli) or built from source, so a Rust toolchain is needed; the Deno bridge additionally needs Deno. No accounts, API keys or environment variables are declared.
Installation
In SourceWeft
- Open Pforge in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
pforge
A declarative framework for building Model Context Protocol (MCP) servers using YAML configuration.
[CI] [crates.io] [crates.io] [License: MIT]
MCP Server
Registry Name: io.github.paiml/pforge
pforge is available in the Model Context Protocol (MCP) Registry. Install it via:
For Maintainers: See MCP Registry Publishing Guide for publishing instructions.
What is pforge?
pforge lets you define MCP servers in YAML instead of writing boilerplate code. It's built on top of pmcp (rust-mcp-sdk) and generates optimized Rust code from your configuration.
Quick example:
Installation
Quick Start
The scaffolded project includes a working example handler. Edit pforge.yaml to add more tools, then implement handlers in src/handlers/.
Handler Types
pforge supports four handler types:
- Native - Rust functions with full type safety
- CLI - Execute shell commands
- HTTP - Proxy HTTP endpoints
- Pipeline - Chain multiple tools together
See the book for detailed examples of each type.
Language Bridges
pforge provides language bridges for building MCP servers in your preferred language:
Deno/TypeScript Bridge
Build type-safe MCP servers using TypeScript and Deno with native performance:
Features:
- Type-safe handler definitions with TypeScript generics
- Runtime schema validation with no external dependencies
- O(1) handler lookup performance
- Both sync and async handler support
- 74+ tests passing with full quality gates
Documentation: bridges/deno/README.md
Coming Soon
- Python bridge (FFI-based with asyncio support)
- Go bridge (CGo-based with goroutine support)
- Node.js bridge (Native addon with N-API)
Documentation
- Book - Complete guide with examples and comparisons
- Architecture - Technical design details
- User Guide - Usage guide
- Implementation Status - Current project status
- CLAUDE.md - Development workflow for contributors
Examples
- hello-world - Minimal native handler example
- calculator - Math operations with tests
- rest-api-proxy - HTTP handler examples
Project Status
Version: 0.1.2
Published crates:
pforge-config- Configuration parsingpforge-macro- Procedural macrospforge-runtime- Core runtime (depends on pmcp)pforge-codegen- Code generationpforge-cli- CLI tool
Test results: 120+ tests passing (90+ unit/integration, 12 property-based, 8 quality gates, 5+ doctests)
See IMPLEMENTATION_STATUS.md for detailed progress.
Development
See CLAUDE.md for full development workflow.
Architecture
pforge is built as a framework on top of pmcp (rust-mcp-sdk):
When to use pmcp directly: You need fine-grained control over MCP protocol details or want to avoid code generation.
When to use pforge: You want declarative configuration and rapid MCP server development with less code.
Contributing
Contributions are welcome. Please:
- Read CLAUDE.md for development standards
- Check ROADMAP.md for current priorities
- Ensure tests pass:
cargo test --all - Ensure quality gates pass:
make quality-gate
All commits are validated by pre-commit hooks that check code formatting, linting, tests, complexity, coverage, and markdown link validity (using pmat validate-docs) to prevent broken documentation links.
License
MIT - see LICENSE
Acknowledgments
Built on pmcp by Pragmatic AI Labs.
Source: README.md at commit 78e6860
Tools
0Version history
1- v0.1.2LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts