{
  "markdown": "<!-- mcp-server: cyberbro | tools: 5 | resources: 0 | transport: stdio,sse,streamable-http | auth: none | framework: fastmcp -->\n<!-- mcp-name: io.github.stanfrbd/mcp-cyberbro -->\n\n[![MseeP.ai Security Assessment Badge](https://mseep.net/pr/stanfrbd-mcp-cyberbro-badge.png)](https://mseep.ai/app/stanfrbd-mcp-cyberbro)\n\n<h1 align=\"center\">Cyberbro MCP Server</h1>\n\n<p align=\"center\">\n<img src=\"https://github.com/user-attachments/assets/5e5a4406-99c1-47f1-a726-de176baa824c\" width=\"90\" /><br />\n<b><i>Extract IoCs from messy text and analyze them with Cyberbro.</i></b>\n<br />\n<b>🌐 <a href=\"https://demo.cyberbro.net/\">demo.cyberbro.net</a></b><br />\n</p>\n\n![mcp-cyberbro-demo](https://github.com/user-attachments/assets/99ee5538-c95a-40ca-bff5-3cdf3aa86235)\n\nModel Context Protocol server for Cyberbro.\n\nThis project is packaged as a standard Python distribution and can be launched with:\n\n- `uvx mcp-cyberbro`\n- `pip install mcp-cyberbro` then `mcp-cyberbro`\n\n## Why this server\n\n- Analyze observables (IP, domain, URL, hash, etc.) via Cyberbro engines.\n- Integrate threat-analysis actions directly in MCP-capable assistants.\n- Run with `stdio`, `sse`, or `streamable-http` transports.\n- Compatible with any MCP client that supports one of these transports.\n\n## Installation\n\n### Use with `uvx` (standalone)\n\n```bash\nuvx mcp-cyberbro --cyberbro_url http://localhost:5000\n```\n\n### Use with `pip`\n\n```bash\npip install mcp-cyberbro\nmcp-cyberbro --cyberbro_url http://localhost:5000\n```\n\n### Local development\n\n```bash\npip install -e .\nmcp-cyberbro --cyberbro_url http://localhost:5000\n```\n\n## Docker\n\nDefault container command starts in `streamable-http` mode on port `8000`.\n\n```bash\ndocker run --rm -p 8000:8000 \\\n  -e CYBERBRO_URL=http://host.docker.internal:5000 \\\n  ghcr.io/stanfrbd/mcp-cyberbro:latest\n```\n\nTo run in `stdio` mode, a custom Dockerfile is required:\n\n```dockerfile\nFROM ghcr.io/stanfrbd/mcp-cyberbro:latest\nCMD [\"mcp-cyberbro\", \"--transport\", \"stdio\"]\n```\n\nBuild and use it:\n\n```bash\ndocker build -t mcp-cyberbro-stdio .\ndocker run -i --rm -e CYBERBRO_URL=http://host.docker.internal:5000 mcp-cyberbro-stdio\n```\n\n## Configuration\n\nCopy `.env.example` and set at least:\n\n- `CYBERBRO_URL` (required)\n\nSupported environment variables:\n\n- `CYBERBRO_URL`\n- `API_PREFIX` (default: `api`)\n- `SSL_VERIFY` (`true`/`false`)\n- `MCP_TRANSPORT` (`stdio`, `sse`, `streamable-http`)\n- `MCP_HOST`\n- `MCP_PORT`\n- `MCP_MOUNT_PATH`\n- `MCP_SSE_PATH`\n- `MCP_STREAMABLE_HTTP_PATH`\n\nCLI flags are also available and override env values.\n\n## MCP Client Integration\n\nYou can use this server with Claude Desktop, Claude Code, Cursor, OpenAI-compatible MCP clients, or any other MCP client.\n\nExample config using `uvx`:\n\n```json\n{\n  \"mcpServers\": {\n    \"cyberbro\": {\n      \"command\": \"uvx\",\n      \"args\": [\"mcp-cyberbro\"],\n      \"env\": {\n        \"CYBERBRO_URL\": \"http://localhost:5000\"\n      }\n    }\n  }\n}\n```\n\nTo use Docker with `stdio` transport (required by some MCP clients), build a custom image as shown in the Docker section above, then reference it:\n\n```json\n{\n  \"mcpServers\": {\n    \"cyberbro\": {\n      \"command\": \"docker\",\n      \"args\": [\"run\", \"-i\", \"--rm\", \"-e\", \"CYBERBRO_URL\", \"mcp-cyberbro-stdio\"],\n      \"env\": {\n        \"CYBERBRO_URL\": \"http://localhost:5000\"\n      }\n    }\n  }\n}\n```\n\n### Usage in VSCode - Example\n\nCreate `.vscode/mcp.json`  \n\n```json\n{\n\t\"servers\": {\n\t\t\"mcp-cyberbro\": {\n\t\t\t\"type\": \"stdio\",\n\t\t\t\"command\": \"uvx\",\n\t\t\t\"args\": [\n\t\t\t\t\"mcp-cyberbro\"\n\t\t\t],\n\t\t\t\"env\": {\n\t\t\t\t\"CYBERBRO_URL\": \"http://127.0.0.1:5000\"\n\t\t\t}\n\t\t}\n\t}\n}\n```\n\n## MCP Registry Metadata\n\n`server.json` is included for MCP Registry publication and points to PyPI package `mcp-cyberbro`.\n\n## Release Pipelines\n\nRelease-created workflows:\n\n- `.github/workflows/publish-test-pypi.yml`\n- `.github/workflows/publish-pypi.yml`\n- `.github/workflows/publish-mcp-plugin.yml`\n\n## Available Tools\n\n- `analyze_observable`\n- `is_analysis_complete`\n- `get_analysis_results`\n- `get_engines`\n- `get_web_url`\n\n## Example Prompts\n\nHere are practical prompt examples you can use with any MCP-capable assistant connected to Cyberbro.\n\n### Getting Indicator Details\n\n- Cyberbro: Check indicators for target.com\n- Can you check this IP reputation with Cyberbro? 192.168.1.1. Use github, google and virustotal engines.\n- I want to analyze the domain example.com. What can Cyberbro tell me about it? Use max 3 engines.\n- Analyze these observables with Cyberbro: suspicious-domain.com, 8.8.8.8, and 44d88612fea8a8f36de82e1278abb02f. Use all available engines.\n\n### Observable Analysis\n\n- I found this (hash|domain|url|ip|extension). Can you submit it for analysis to Cyberbro and analyze the results?\n\n### OSINT Investigation\n\n- Create an OSINT report for the domain example.com using Cyberbro. Use all available engines and pivot on the results for more information. Use a maximum of 10 analysis requests.\n\n## Acknowledgements\n\n- [Model Context Protocol](https://modelcontextprotocol.io)\n- [MCP Python SDK](https://github.com/modelcontextprotocol/python-sdk)\n- [Cyberbro](https://github.com/stanfrbd/cyberbro)\n\n## License\n\nMIT\n",
  "bytes": 5092,
  "sha": "5a77cfccd4c40877934d335da46e53daa8128543c2d596b19102cbf212179d83",
  "repo_slug": "stanfrbd/mcp-cyberbro",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_stanfrbd_mcp_cyberbro_d309f790/readme"
}