Model Context Protocol (MCP) server for OSIDB using osidb-bindings
Project description
osidb-mcp
Python Model Context Protocol (MCP) server for OSIDB, built on osidb-bindings from PyPI. Use it from Cursor, Claude Desktop, or any MCP client over stdio.
Install
pipx install osidb-mcp
# or
pip install osidb-mcp
Configuration (environment)
| Variable | Required | Description |
|---|---|---|
OSIDB_BASE_URL |
yes | OSIDB root URL, e.g. https://osidb.example.com |
OSIDB_AUTH |
no | kerberos (default) or basic |
OSIDB_USERNAME / OSIDB_PASSWORD |
for basic |
Basic auth for token obtain |
OSIDB_VERIFY_SSL |
no | true (default) or false (prefer REQUESTS_CA_BUNDLE for custom CAs) |
OSIDB_USER_AGENT |
no | Optional extra User-Agent suffix |
OSIDB_MCP_ACCESS_MODE |
no | readonly (default) or readwrite (mutations reserved for a future release) |
Kerberos: the process must have a valid ticket (kinit) for the OSIDB HTTP service.
Optional keys forwarded by bindings: BUGZILLA_API_KEY, JIRA_ACCESS_TOKEN, JIRA_API_EMAIL.
Cursor / Claude MCP snippet
{
"mcpServers": {
"osidb": {
"command": "osidb-mcp",
"env": {
"OSIDB_BASE_URL": "https://your-internal-osidb",
"OSIDB_AUTH": "kerberos",
"OSIDB_VERIFY_SSL": "true",
"OSIDB_MCP_ACCESS_MODE": "readonly"
}
}
}
}
Tools (read-only)
osidb_status— health / version style statusosidb_whoami—/osidb/whoamiflaw_get— single flaw with optionalinclude_fields/exclude_fieldsflaws_list/flaws_count— filter bycomponents_in,affects_ps_module_in,workflow_state_in,impact/impact_in,owner_isempty, embargo flags, ISO8601changed_after/changed_before, plus allowlistedextra_querykeys from the OSIDB OpenAPIflaws_search— full-textsearchaffects_list— affect-centric rows withps_module/ps_component/ps_update_streamandflaw__*filterstrackers_list— tracker filings with CVE / module / component filtersflaw_comments_list,flaw_references_list,flaw_cvss_scores_list
limit is capped at 100 per request.
Analyst examples
- Critical open flaws touching
httpd:flaws_listwithimpact="CRITICAL",workflow_state_inset to the non-terminal states your instance uses, andcomponents_in=["httpd"]oraffects_ps_component="httpd"depending on how data is modeled. - Unowned important CVEs for a RHEL major:
flaws_listwithowner_isempty=true,impact_in=["IMPORTANT"], andaffects_ps_module_in/affects_ps_update_stream_inset to the exact PS strings your OSIDB uses for that major (confirm in your internal docs).
Security
- Outputs may include embargoed content; treat transcripts and logs according to your data classification policy.
- Prefer
readonly(default).readwritedoes not enable mutations yet but is reserved for explicit future write tools. - Never commit
OSIDB_PASSWORD; use IDE env or secret stores.
Development
uv venv .venv && source .venv/bin/activate
uv pip install -e ".[dev]"
python -m osidb_mcp
pytest
pip-audit
License
MIT — see LICENSE.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file osidb_mcp-0.1.0.tar.gz.
File metadata
- Download URL: osidb_mcp-0.1.0.tar.gz
- Upload date:
- Size: 10.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8c53fbf241c366d82ff0d339412bc994ae2fc1c22081b662eb2dbf3547367fe3
|
|
| MD5 |
ebf82873846818e9622df3f47f2d74a2
|
|
| BLAKE2b-256 |
fc001cad2c11b0523f11f009c9ceb1f95e6c090cb495eb55f9bb361ef233e9cc
|
File details
Details for the file osidb_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: osidb_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 13.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
12bf9babc414c863efef4b45dbf6d6eb93e7c244e74e42c18d5e7cace8b1f219
|
|
| MD5 |
ea0c8d86401635773b353c28799a436c
|
|
| BLAKE2b-256 |
7f5e7b395039ad7fb7268ad57602f21eb6d682c791e1d597e7c1ac56ad0fff1c
|