3gpp-mcp-server
v1.0.0
Published
MCP Server for querying 3GPP telecom protocol specifications
Maintainers
Readme
3GPP MCP Server
An MCP (Model Context Protocol) server that provides LLMs with access to 3GPP telecom protocol specifications and enables intelligent querying of technical documentation.
Features
- Semantic Search: Search through 3GPP specification documents using natural language queries
- Specification Details: Get detailed information about specific 3GPP specifications
- Protocol Information: Query information about 3GPP protocols and procedures
- Related Documents: Find specifications related to specific topics
- Resources: Access to specification catalogs, protocol lists, and release timelines
- Prompts: Pre-written templates for common 3GPP-related queries
Installation
Clone this repository
Install dependencies:
npm installBuild the project:
npm run build(Optional) Download TSpec-LLM dataset:
node dist/download-dataset.js
Usage
With Claude Desktop
- Add the server configuration to your Claude Desktop config file:
{
"mcpServers": {
"3gpp-server": {
"command": "node",
"args": ["dist/index.js"],
"cwd": "/path/to/3gpp-mcp-server"
}
}
}- Restart Claude Desktop
- The server will be available with the following tools:
Available Tools
search_3gpp_specs
Search through 3GPP specification documents using semantic search.
Parameters:
query(string, required): Search query textseries(array, optional): Filter by specification series (e.g., ["24", "25"])releases(array, optional): Filter by 3GPP releases (e.g., ["Rel-15", "Rel-16"])limit(number, optional): Maximum number of results (1-50, default: 10)offset(number, optional): Offset for pagination (default: 0)
get_specification_details
Get detailed information about a specific 3GPP specification.
Parameters:
specId(string, required): Specification ID (e.g., "TS 24.301")format(string, optional): Level of detail - "summary", "detailed", or "raw" (default: "summary")
query_protocol_info
Get information about specific 3GPP protocols and procedures.
Parameters:
protocolName(string, required): Name of the protocol (e.g., "NAS", "RRC")queryType(string, optional): Type of information - "procedures", "messages", or "overview" (default: "overview")
find_related_specs
Find specifications related to a given topic or specification.
Parameters:
topic(string, required): Topic or specification to find related documents formaxResults(number, optional): Maximum number of related specs to return (default: 5)
Available Resources
3gpp://specifications/catalog: Complete catalog of available 3GPP specifications3gpp://protocols/list: List of all 3GPP protocols with descriptions3gpp://releases/timeline: Timeline of 3GPP releases and their major features
Available Prompts
explain_3gpp_procedure: Explain a specific 3GPP procedure in detailcompare_specifications: Compare two 3GPP specifications highlighting differences
Example Usage
Once integrated with Claude Desktop, you can use natural language queries like:
- "Search for NAS authentication procedures in LTE specifications"
- "Show me details about TS 24.301"
- "What are the key procedures in RRC protocol?"
- "Find specifications related to 5G security"
- "Explain the attach procedure in detail"
- "Compare TS 36.331 and TS 38.331"
Architecture
The server consists of several key components:
- Specification Manager: Handles loading and managing 3GPP specifications
- Search Engine: Provides semantic search capabilities across documents
- Document Processor: Extracts and processes content from specification documents
- MCP Server: Implements the Model Context Protocol interface
Data Source
This server is designed to work with the TSpec-LLM dataset, which contains processed 3GPP documentation from Release 8 to Release 19. The dataset is available at: https://huggingface.co/datasets/rasoul-nikbakht/TSpec-LLM
Development
Project Structure
src/
├── index.ts # Main MCP server implementation
├── types/
│ └── 3gpp.ts # TypeScript type definitions
└── utils/
├── specification-manager.ts # Specification management
├── search-engine.ts # Search functionality
├── document-processor.ts # Document processing
└── dataset-downloader.ts # Dataset download utilitiesScripts
npm run build: Build the TypeScript projectnpm run dev: Build and watch for changesnpm start: Run the compiled servernpm test: Run tests (when implemented)
Future Enhancements
- Vector embeddings for improved semantic search
- Integration with ChromaDB or similar vector databases
- Support for real-time specification updates
- Enhanced natural language processing for complex queries
- PDF support for additional specification formats
- Caching layer for improved performance
Contributing
Contributions are welcome! Please feel free to submit pull requests or open issues for bugs and feature requests.
License
MIT License
Acknowledgments
- Built using the Model Context Protocol SDK
- Designed to work with the TSpec-LLM dataset
- Supports 3GPP specifications from 3GPP.org
