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.
Metadata
Release files for iflow-mcp_mcp-server-ietf 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| iflow_mcp_mcp_server_ietf-0.1.0.tar.gz | 26.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| iflow_mcp_mcp_server_ietf-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 33.8 kB
Release files / iflow_mcp_mcp_server_ietf-0.1.0.tar.gz
| Download URL | iflow_mcp_mcp_server_ietf-0.1.0.tar.gz |
|---|---|
| Size | 26.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5dfa211e2f6c178561b93ef8b443e653047b0986092c87d2d4ff54dcf5ce9688
|
|
BLAKE2b-256 checksum How to use checksums |
4c7c933ca5cbdf47d486eefb071d05a0d27d77cb880054472d2e8013d20f1133
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.6.9
|
Release files / iflow_mcp_mcp_server_ietf-0.1.0-py3-none-any.whl
| Download URL | iflow_mcp_mcp_server_ietf-0.1.0-py3-none-any.whl |
|---|---|
| Size | 7.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
52c0ac80592194bf0d8f85ca1c1b67ef7ea7afd7b51e3a11973ed8c28f55a814
|
|
BLAKE2b-256 checksum How to use checksums |
b88b63e4c35400915abb2c9158a131c0776208e9c256c5ac914a78addc3c177d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.6.9
|