A Model Context Protocol server for fetching IETF documents (RFCs) for Large Language Models.
This project implements a Model Context Protocol (MCP) server that provides access to IETF RFC documents. It enables Large Language Models to access RFC specifications through a standardized interface.
Key features:
- Download and cache RFC index and documents
- Search RFCs by keyword in titles
- Access RFC documents with pagination support
- Extract metadata like page numbers from documents
- Python 3.11 or higher
- Dependencies as listed in
pyproject.toml
# Clone the repository
git clone https://github.com/tizee/mcp-server-ietf
cd mcp-server-ietf
# Install with pip
pip install -e .# Start the server
mcp-server-ietfOr use it with the MCP inspector:
npx @modelcontextprotocol/inspector uv run mcp-server-ietfWhen connected to the server, the following tools are available:
Get the total number of RFC documents available in the index.
Get an RFC document by its number with pagination support.
Parameters:
number: The RFC number (e.g., "1234")start_line: The line number to start from (default: 1)max_lines: Maximum number of lines to return (default: 200)
Search for RFC documents by keyword in their titles.
Parameters:
keyword: The search term to look for in RFC titles
# Install development dependencies
uv install -e .[dev]Run inspector with Makefile:
make dev
# Run tests
uv run pytestOr using the Makefile:
make testBy default, the server caches RFC documents and the index at ~/.cache/ietf-doc-server.
LOG_LEVEL: Set the logging level (default: "DEBUG")
MIT License - See LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.