Mcp Server Ietf
Access and retrieve IETF RFC documents, enabling search by keywords and management of document pagination. Provides standardized access to essential specifications for Large Language Models.
Author

tizee
Quick Info
Actions
Tags
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.