Cds Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Cds Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A Model Context Protocol (MCP) server for integrating with CERN Document Server (CDS), built on the Invenio digital library framework.
Requires Python 3.10+.
No installation needed, just use uvx to run directly:
uvx cds-mcppip install cds-mcpgit clone https://github.com/MohamedElashri/cds-mcp
cd cds-mcp
uv syncAdd to your claude_desktop_config.json:
{
"mcpServers": {
"cds": {
"command": "uvx",
"args": ["cds-mcp"],
"env": {
"CERN_CLIENT_ID": "your-client-id",
"CERN_CLIENT_SECRET": "your-client-secret"
}
}
}
}For public access only, omit the authentication environment variables:
{
"mcpServers": {
"cds": {
"command": "uvx",
"args": ["cds-mcp"]
}
}
}Note for macOS users: If you see an error about uvx not being found, you may need to provide the absolute path. Claude Desktop does not support ~ or $HOME expansion.
which uvx in your terminal to find the path (e.g., /Users/yourusername/.local/bin/uvx).command field:"command": "/Users/yourusername/.local/bin/uvx"Project-specific (default) — installs in the current directory's configuration:
claude mcp add cds-mcp -- uvx cds-mcpGlobal — installs for your user account (works in all projects):
claude mcp add --scope user cds-mcp -- uvx cds-mcpTo include authentication, add the CERN credentials before the --:
# Example: Global installation with CERN SSO authentication
claude mcp add --scope user -e CERN_CLIENT_ID=your_client_id -e CERN_CLIENT_SECRET=your_client_secret cds-mcp -- uvx cds-mcpManual Configuration — you can also manually edit your global config at ~/.claude.json (on Linux/macOS) or %APPDATA%\Claude\claude.json (on Windows):
{
"mcpServers": {
"cds": {
"command": "uvx",
"args": ["cds-mcp"],
"env": {
"CERN_CLIENT_ID": "your_client_id",
"CERN_CLIENT_SECRET": "your_client_secret"
}
}
}
}Add to your VS Code settings.json:
{
"mcp": {
"servers": {
"cds": {
"command": "uvx",
"args": ["cds-mcp"],
"env": {
"CERN_CLIENT_ID": "your_client_id",
"CERN_CLIENT_SECRET": "your_client_secret"
}
}
}
}
}Or add a .vscode/mcp.json to your project:
{
"servers": {
"cds": {
"command": "uvx",
"args": ["cds-mcp"],
"env": {
"CERN_CLIENT_ID": "your_client_id",
"CERN_CLIENT_SECRET": "your_client_secret"
}
}
}
}Add to your ~/.gemini/settings.json:
{
"mcpServers": {
"cds": {
"command": "uvx",
"args": ["cds-mcp"],
"env": {
"CERN_CLIENT_ID": "your_client_id",
"CERN_CLIENT_SECRET": "your_client_secret"
}
}
}
}# Run with uvx (no install needed)
uvx cds-mcp
# Or if installed from PyPI
cds-mcp
# Or from source
uv run cds-mcp
# With CERN SSO authentication
CERN_CLIENT_ID=your_client_id CERN_CLIENT_SECRET=your_client_secret uvx cds-mcpThe CDS MCP server now supports proper CERN SSO authentication using OAuth2/OIDC for accessing restricted content.
#### Setup Instructions
Client ID and Client Secret export CERN_CLIENT_ID="your-client-id"
export CERN_CLIENT_SECRET="your-client-secret"#### Supported Access Levels
git clone https://github.com/MohamedElashri/cds-mcp
cd cds-mcp
uv sync
uv run python tests/test_integration.py # Test real CDS API integration
uv run python tests/test_mcp_server.py # Test MCP server functionalityMIT License - see LICENSE for details.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.