- MCP-Server-IETF
MCP-Server-IETF
A Model Context Protocol server for fetching IETF documents (RFCs) for Large Language Models.
Overview
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
Installation
Requirements
- Python 3.11 or higher
- Dependencies as listed in
pyproject.toml
Install from source
# Clone the repository
git clone https://github.com/tizee/mcp-server-ietf
cd mcp-server-ietf
# Install with pip
pip install -e .
Usage
Starting the server
# Start the server
mcp-server-ietf
Or use it with the MCP inspector:
npx @modelcontextprotocol/inspector uv run mcp-server-ietf
Available Tools
When connected to the server, the following tools are available:
list_docs_number
Get the total number of RFC documents available in the index.
get_doc
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_rfc_by_keyword
Search for RFC documents by keyword in their titles.
Parameters:
keyword
: The search term to look for in RFC titles
Development
Setup Development Environment
# Install development dependencies
uv install -e .[dev]
Run inspector with Makefile:
make dev
Running Tests
# Run tests
uv run pytest
Or using the Makefile:
make test
Cache Location
By default, the server caches RFC documents and the index at ~/.cache/ietf-doc-server
.
Environment Variables
LOG_LEVEL
: Set the logging level (default: "DEBUG")
License
MIT License - See LICENSE
file for details.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.




