README.md•3.29 kB
# OpenTelemetry Documentation MCP Server
Model Context Protocol (MCP) server for OpenTelemetry Documentation
This MCP server provides tools to access OpenTelemetry documentation and search for content using Google Custom Search.
## Acknowledgements
This project is based on [aws-documentation-mcp-server](https://github.com/awslabs/mcp/tree/main/src/aws-documentation-mcp-server) by Amazon Web Services, licensed under the Apache License 2.0.
## Features
- **Read Documentation**: Fetch and convert OpenTelemetry documentation pages to markdown format
- **Search Documentation**: Search OpenTelemetry documentation using Google Custom Search
## Prerequisites
### Required Components
- Docker installed on your system
- Internet access to pull dependencies and access OpenTelemetry documentation
### Google API Key Setup
To use the search functionality, you must obtain a Google API key:
1. Visit the Google Cloud Console (https://console.cloud.google.com/apis/credentials)
2. Create a new API key for the Custom Search API
3. Add this API key to your MCP configuration as shown in the installation section
Without a valid Google API key, the search_documentation tool will not function properly.
## Installation
Configure the MCP server in your MCP client configuration (e.g., for Amazon Q Developer CLI, edit `~/.aws/amazonq/mcp.json`):
```json
{
"mcpServers": {
"opentelemetry-documentation-mcp-server": {
"command": "uvx",
"args": ["git+https://github.com/ryu1maniwa/opentelemetry-documentation-mcp-server"],
"env": {
"FASTMCP_LOG_LEVEL": "ERROR",
"GOOGLE_API_KEY": "YOUR_GOOGLE_API_KEY"
},
"disabled": false,
"autoApprove": []
}
}
}
```
or docker after a successful `docker build -t opentelemetry-documentation-mcp-server .`:
```json
{
"mcpServers": {
"opentelemetry-documentation-mcp-server": {
"command": "docker",
"args": [
"run",
"--rm",
"--interactive",
"--env",
"FASTMCP_LOG_LEVEL=ERROR",
"--env",
"GOOGLE_API_KEY=YOUR_GOOGLE_API_KEY",
"opentelemetry-documentation-mcp-server:latest"
],
"env": {},
"disabled": false,
"autoApprove": []
}
}
}
```
## Basic Usage
Example:
- "look up documentation on OpenTelemetry tracing concepts. cite your sources"
- "search OpenTelemetry documentation for information about metrics and instrumentation"
- "find documentation about OpenTelemetry SDK configuration"
## Tools
### read_documentation
Fetches a OpenTelemetry documentation page and converts it to markdown format.
```python
read_documentation(url: str) -> str
```
### search_documentation
Searches OpenTelemetry documentation using Google Custom Search.
```python
search_documentation(search_phrase: str, limit: int) -> list[dict]
```
## Google Custom Search Integration
This server uses Google Custom Search to provide search functionality for OpenTelemetry documentation. The Custom Search Engine ID (`cx`) used is the one used by opentelemetry.io itself:
- Custom Search Engine ID: `015faf7de29c34606`
### API Limits
The Google Custom Search API has the following limits:
- Free tier: 100 queries per day
- $5 per 1000 queries after that
- Maximum of 10 results per query