MCP ServersMCP.so
MCP-Server-IETF

MCP-Server-IETF

Visit Server
created by
MCP-Server-IETFtizee15 hours ago
A Model Context Protocol server for fetching IETF documents (RFCs) for Large Language Models.
Information

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.