Rubén De la Torre Vico
cbc5f58998
chore(lighthouse): change wording in new MCP Server class
2026-08-13 15:41:52 +02:00
Rubén De la Torre Vico
975c3f082d
feat(mcp): report every tool failure as an MCP error
...
Adds ProwlerMCP, the FastMCP subclass every sub-server is now built
from. Its tool() wraps whatever it registers -- the decorator forms and
the direct call BaseTool uses -- so a failure leaves any tool as a
ToolError, which the client reads as isError: true.
Applied at the base class rather than by hand because forgetting it is
silent: every server now sets mask_error_details=True, so an unwrapped
tool would answer "Error calling tool 'x'" and nothing else. ToolError
bypasses that masking, which is what lets the servers mask by default
and still say something useful.
No tool changes yet. Tools that still return {"error": ...} keep working
exactly as before; they are converted surface by surface in the PRs
above this one. What changes here is that a failure which used to escape
as a raw exception is now described by render_tool_error.
The rules this establishes are in AGENTS.md and the developer guide,
so the conversions have something to be checked against.
2026-08-12 13:26:39 +02:00
Rubén De la Torre Vico
c37e2b90dc
feat(mcp): add a single vocabulary for tool failures
...
Adds lib/errors.py: the exception types the sub-servers raise for a
failure they can describe -- an API rejection, a task that never
finished, bad credentials, a Hub outage -- and render_tool_error, the
one place any of them becomes text a client reads.
Nothing imports it yet. The wrapper that turns these into an MCP error
on every tool, and the servers that raise them, follow in this stack.
2026-08-12 13:16:38 +02:00
Prowler Bot and prowler-bot
226504982b
chore(changelog): v5.38.0 ( #12373 )
...
Co-authored-by: prowler-bot <179230569+prowler-bot@users.noreply.github.com >
2026-08-06 13:25:12 +02:00
César Arroba
d1a37039fd
fix(deps): upgrade cryptography to 50.0.0 ( #12356 )
2026-08-05 19:16:11 +02:00
Rubén De la Torre Vico and Claude Opus 5
97c342ad80
test(mcp): cover the integrations tools and models ( #12343 )
...
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-05 16:47:11 +02:00
César Arroba
f3c602a5ac
feat(container): ship an SBOM and provenance with the published images ( #12352 )
2026-08-05 16:19:42 +02:00
Rubén De la Torre Vico
138d643119
test(mcp): add test foundation for the MCP server ( #12291 )
2026-08-04 16:19:10 +02:00
c610d9ac31
chore(changelog): v5.37.1 forward-sync to master ( #12322 )
...
Co-authored-by: prowler-bot <179230569+prowler-bot@users.noreply.github.com >
Co-authored-by: César Arroba <cesar@prowler.com >
2026-08-04 12:12:15 +02:00
César Arroba
8ebb4a1ee7
fix(container): clear the Private Cloud image vulnerabilities (PROWLER-2291) ( #12258 )
2026-08-04 09:41:47 +02:00
b9aa863e52
chore(changelog): v5.37.0 ( #12293 )
...
Co-authored-by: prowler-bot <179230569+prowler-bot@users.noreply.github.com >
Co-authored-by: Pepe Fagoaga <pepe@prowler.com >
2026-08-03 14:35:29 +02:00
Rubén De la Torre Vico
9adc248c05
docs(mcp): document the Cloud-only prowler_cloud_* tool namespace ( #12266 )
2026-07-31 12:16:04 +02:00
Rubén De la Torre Vico
ea0c7eb271
fix(mcp): prevent prowler_list_integrations 500 on tenants with a Jira integration ( #12259 )
2026-07-31 11:02:45 +02:00
César Arroba and Rubén De la Torre Vico
f3b8ac1dbb
fix(mcp): run streamable HTTP stateless to stop session memory leak ( #12235 )
...
Co-authored-by: Rubén De la Torre Vico <ruben@prowler.com >
2026-07-30 11:40:55 +02:00
Rubén De la Torre Vico
6192b8ac32
feat(mcp): add integrations tools ( #12138 )
2026-07-30 11:11:09 +02:00
Rubén De la Torre Vico
8eeb37aea4
feat(mcp): add users and roles tools to the Prowler MCP Server ( #12088 )
2026-07-28 17:16:56 +02:00
Prowler Bot and prowler-bot
1459046985
chore(changelog): v5.35.0 ( #12038 )
...
Co-authored-by: prowler-bot <179230569+prowler-bot@users.noreply.github.com >
2026-07-17 12:00:58 +02:00
Rubén De la Torre Vico and Alan Buscaglia
cf840588c7
chore(mcp): rebrand prowler_app_* tools to prowler_* and restructure MCP docs ( #12017 )
...
Co-authored-by: Alan Buscaglia <gentlemanprogramming@gmail.com >
2026-07-16 15:15:55 +02:00
Adrián Peña
6c5f54808d
feat: add changelog fragments workflow ( #11572 )
2026-07-08 10:19:12 +02:00
renovate[bot]
f5bdacd07a
chore(docker): update docker ( #11601 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-02 09:08:50 +02:00
Rubén De la Torre Vico
058a1dc8fe
chore: unify ruff tooling and route code quality through the Makefile ( #11675 )
2026-06-23 17:15:05 +02:00
dependabot[bot]
3960827a9c
chore(deps): bump starlette from 1.0.0 to 1.3.1 in /mcp_server ( #11468 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-16 11:09:11 +02:00
dependabot[bot]
eeb02453d1
chore(deps): bump pyjwt from 2.12.1 to 2.13.0 in /mcp_server ( #11606 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-16 10:14:21 +02:00
renovate[bot] and Pepe Fagoaga
3cb360e9ae
chore(docker): pin dependencies ( #11292 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Pepe Fagoaga <pepe@prowler.com >
2026-06-15 15:31:24 +02:00
ad1261ce54
ci(docs): add markdownlint foundation (prek + CI) ( #11210 )
...
Co-authored-by: Pablo F.G <pablo.fernandez@prowler.com >
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-27 16:42:01 +02:00
Rubén De la Torre Vico and Pepe Fagoaga
671d0c746c
fix(mcp_server): preserve authorization header in HTTP mode ( #11366 )
...
Co-authored-by: Pepe Fagoaga <pepe@prowler.com >
2026-05-26 15:25:46 +02:00
Pepe Fagoaga
13e2ede763
chore(changelog): prepare for v5.28.0 ( #11321 )
2026-05-22 09:33:40 +02:00
Rubén De la Torre Vico
a28f4994a8
fix(mcp): bump fastmcp and transitives to clear osv-scanner findings ( #11284 )
2026-05-21 13:30:56 +02:00
Pepe Fagoaga
cb01769237
chore(changelog): prepare for v5.27.0 ( #11218 )
2026-05-19 11:42:10 +02:00
Adrián Peña
4fa8d5465e
refactor(mcp): align /health with IETF health-check format ( #11207 )
2026-05-19 09:51:32 +02:00
Alejandro Bailo
0abbb7fc59
feat(mcp): add finding groups tools ( #11140 )
2026-05-13 18:11:32 +02:00
Alan Buscaglia
0b4393776c
chore: harden npm supply chain controls ( #11157 )
2026-05-13 17:30:25 +02:00
Davidm4r
832516be2a
fix(mcp_server): bump transitive requests to 2.33.1 (advisory 90553) ( #11084 )
2026-05-08 12:52:46 +02:00
Hugo Pereira Brito and Pepe Fagoaga
369d6cecc1
fix: patch CVE-2026-39892 and CVE-2026-33186 across SDK, API and MCP images ( #10978 )
...
Co-authored-by: Pepe Fagoaga <pepe@prowler.com >
2026-05-05 15:04:44 +01:00
dependabot[bot]
bbd4ce7565
chore(deps): bump pygments from 2.19.2 to 2.20.0 in /mcp_server ( #10523 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-22 09:31:04 +02:00
Adrián Peña
c6d5f44c5e
chore: update pyjwt ( #10661 )
2026-04-13 14:09:37 +02:00
Pepe Fagoaga
6534faf678
chore: review changelog for v5.23 ( #10631 )
2026-04-13 08:59:07 +02:00
Hugo Pereira Brito and Adrián Jesús Peña Rodríguez
cccb3a4b94
chore(sdk,mcp): pin direct dependencies to exact versions ( #10593 )
...
Co-authored-by: Adrián Jesús Peña Rodríguez <adrianjpr@gmail.com >
2026-04-09 14:42:49 +01:00
Davidm4r and dependabot[bot]
33efd72b97
chore(deps): bump authlib from 1.6.5 to 1.6.9 ( #10579 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-07 13:31:59 +02:00
Pepe Fagoaga
07f3416493
feat(mcp): Add resource events tool ( #10412 )
2026-04-06 08:42:04 +02:00
stepsecurity-app[bot] and Pepe Fagoaga
716c130140
feat(security): security best practices from StepSecurity ( #10480 )
...
Signed-off-by: StepSecurity Bot <bot@stepsecurity.io >
Co-authored-by: stepsecurity-app[bot] <188008098+stepsecurity-app[bot]@users.noreply.github.com>
Co-authored-by: Pepe Fagoaga <pepe@prowler.com >
2026-03-26 13:58:19 +01:00
Pepe Fagoaga
8317eff67b
chore(changelog): prepare for v5.21.0 ( #10380 )
2026-03-19 11:09:51 +01:00
Rubén De la Torre Vico
5c4ee0bc48
chore(mcp): bump MCP server version to 0.5.0 ( #10383 )
2026-03-19 10:47:46 +01:00
Rubén De la Torre Vico
8c1e69b542
feat(mcp): add cartography schema tool for attack paths ( #10321 )
2026-03-18 10:39:04 +01:00
Pedro Martín
62988821a7
chore(mcp_server): update for release 5.19 ( #10248 )
2026-03-04 11:46:15 +01:00
Pepe Fagoaga
c71ae75c70
chore(changelog): release v5.19.0 ( #10180 )
2026-03-02 13:24:03 +01:00
Rubén De la Torre Vico
7077a56331
chore(mcp_server): bump MCP Server package version to 0.4.0 ( #10171 )
2026-02-25 11:31:35 +01:00
Rubén De la Torre Vico
a8e504887b
feat(mcp_server): add tools related with attack paths ( #10145 )
2026-02-25 10:56:40 +01:00
Pepe Fagoaga and Adrián Jesús Peña Rodríguez
dce05295ef
chore(skills): Improve Django and DRF skills ( #9831 )
...
Co-authored-by: Adrián Jesús Peña Rodríguez <adrianjpr@gmail.com >
2026-01-22 13:54:06 +01:00
Pepe Fagoaga
d7af97b30a
chore(skills): add Prowler Changelog skill ( #9806 )
2026-01-16 13:31:34 +01:00