ceph-issue-kb

ceph-issue-kb

Enables searching and analyzing Ceph issues from multiple trackers, providing tools to find known issues, workarounds, and fixes.

Category
Visit Server

README

Ceph Issue Intelligence KB

Searchable knowledge base of 14,600+ Ceph issues from IBM Ceph JIRA and Red Hat KB. Ships pre-built — clone, install, and immediately search known issues, workarounds, and fixes from your AI agent.

Setup

1. Clone and install

git clone https://github.com/pdhiran/ceph-issue-kb.git
cd ceph-issue-kb
pip install -e .

2. Connect your agent

Choose the integration that matches your agent:


Cursor — add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "ceph-issue-kb": {
      "command": "python3",
      "args": ["-m", "ceph_issue_kb.server.mcp_server"],
      "cwd": "/path/to/ceph-issue-kb"
    }
  }
}

Restart Cursor. The MCP server starts automatically and pulls the latest issue data on startup — no manual git pull needed.

To disable auto-update, add "--no-auto-update" to args.


Claude Desktop — start the server, then add to claude_desktop_config.json:

python -m ceph_issue_kb.server.mcp_server --transport sse --port 8083
{
  "mcpServers": {
    "ceph-issue-kb": { "url": "http://localhost:8083/sse" }
  }
}

Continue / Cline / Windsurf — start the server and point to the SSE endpoint:

python -m ceph_issue_kb.server.mcp_server --transport sse --port 8083

Connect to http://localhost:8083/sse in the tool's MCP settings.


IBM Bob — Bob supports MCP over SSE natively:

python -m ceph_issue_kb.server.mcp_server --transport sse --host 0.0.0.0 --port 8083

Add to Bob's .bob/mcp.json:

{
  "mcpServers": {
    "ceph-issue-kb": {
      "url": "http://localhost:8083/sse",
      "transport": "sse"
    }
  }
}

If running on a shared server, replace localhost with the hostname.


REST API — for LangChain, CrewAI, or CI pipelines:

python -m ceph_issue_kb.server.rest_api --host 0.0.0.0 --port 8200
# Search issues
curl -X POST http://localhost:8200/api/search_issues \
  -H "Content-Type: application/json" \
  -d '{"query": "OSD slow ops", "component": "rados"}'

# Check if an error is a known issue
curl -X POST http://localhost:8200/api/is_known_issue \
  -H "Content-Type: application/json" \
  -d '{"error_message": "FAILED ceph_assert(googly > 0)", "version": "19.2.0"}'

# Find workaround
curl -X POST http://localhost:8200/api/find_workaround \
  -H "Content-Type: application/json" \
  -d '{"query": "too many PGs per OSD"}'

# Health check
curl http://localhost:8200/health

See BOB_INTEGRATION_GUIDE.md for the full REST API reference and agent integration examples.

3. Use it

Once connected, agents automatically check for known Ceph issues. You can also ask directly:

  • "Is FAILED ceph_assert(googly > 0) a known issue?"
  • "Find workarounds for OSD slow ops during recovery"
  • "Search for issues related to HEALTH_WARN too many PGs per OSD"
  • "What are the hot issues in the rgw component?"
  • "Find issues with this stacktrace: #0 in BlueStore::_do_write"

Available Tools

Tool Description
search_issues Search issues across all sources with optional filters
find_similar_issue Find issues similar to a given problem description
is_known_issue Check if an error message matches a known issue
find_workaround Search for known workarounds
find_fix Search for known fixes, commits, PRs
find_related_issues Get related/duplicate/linked issues
search_stacktrace Find issues with similar stacktraces
search_health_warning Find issues related to a health warning
hot_issues Most active recent issues by component
component_health Open criticals, regressions, blockers for a component
capabilities Server capabilities and entity types
health Connector status, issue counts, index status

Active Sources

Source Issues Description
IBM Ceph JIRA 14,037 Internal Ceph bug tracker and feature requests
Red Hat KB 600 Customer-facing knowledge base articles

The knowledge base is updated daily by the maintainer with the latest bugs and articles. Your MCP server automatically pulls new data every 12 hours — no action needed on your part.

VS Code Extension

Coming soon. See ceph-doc-kb and ceph-command-kb for existing VS Code extensions that complement this knowledge base.

Documentation

Document Description
SPEC.md MCP platform contract and entity schema
DEVELOPMENT.md Architecture, source tree, maintainer guide
CREDENTIALS.md Credential setup for re-indexing sources
BOB_INTEGRATION_GUIDE.md REST API reference, agent integration, deployment

Running All Ceph MCPs Together

Three specialized MCPs work together as the Ceph Engineering Intelligence Platform:

MCP Purpose SSE Port Repo
ceph-cmd-kb Commands, configs, test validation 8081 ceph-command-kb
ceph-doc-kb Documentation search, code examples 8082 ceph-doc-kb
ceph-issue-kb Known issues, workarounds, fixes 8083 ceph-issue-kb

Start all three for SSE clients (Bob, Claude Desktop, etc.):

python -m ceph_command_kb.server.mcp_server --transport sse --port 8081 &
python -m ceph_doc_kb.server.mcp_server --transport sse --port 8082 &
python -m ceph_issue_kb.server.mcp_server --transport sse --port 8083 &

Combined agent config (.bob/mcp.json, claude_desktop_config.json, etc.):

{
  "mcpServers": {
    "ceph-cmd-kb": { "url": "http://localhost:8081/sse", "transport": "sse" },
    "ceph-doc-kb": { "url": "http://localhost:8082/sse", "transport": "sse" },
    "ceph-issue-kb": { "url": "http://localhost:8083/sse", "transport": "sse" }
  }
}

Development

pip install -e ".[dev]"
pytest

See DEVELOPMENT.md for architecture details and contributing.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured