94 Commits

Author SHA1 Message Date
github-actions[bot] 68db890456 Version Packages (next) 2026-05-26 15:26:38 +00:00
1337 9929df3d8c Merge branch 'backstage:master' into feature/catalog-export 2026-05-20 20:32:27 +02:00
github-actions[bot] b97fcb0a93 Version Packages 2026-05-19 18:28:24 +00:00
benjdlambert 3f5e7ec2b4 Improve MCP safeStringify, OIDC error messages, and catalog model reference config
Signed-off-by: benjdlambert <ben@blam.sh>
2026-05-19 19:27:45 +02:00
Love Kumar Chauhan ca8951ae87 fix(mcp-actions-backend): return structured content and remove markdown formatting in tool responses
This change aligns the MCP tool execution responses with the specification by returning plain text in the 'content' array and providing the raw JSON in a new 'structuredContent' field. It also removes the unnecessary Markdown code block formatting that was previously added to tool results.

Fixes #34052

Signed-off-by: Love Kumar Chauhan <lovechauhan6564@gmail.com>

Co-authored-by: benjdlambert <3645856+benjdlambert@users.noreply.github.com>
Signed-off-by: benjdlambert <ben@blam.sh>
2026-05-19 18:48:50 +02:00
Eric Peterson 828d3d4282 Put tool payload capture config under plugin namespace
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2026-05-19 09:23:35 +02:00
Eric Peterson 0422010a37 Address valid review comments
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2026-05-18 17:12:19 +02:00
Eric Peterson 00bdd871a3 Simplify baggage getting to a single method
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2026-05-18 16:50:43 +02:00
Eric Peterson 3914351b84 Make tool payload tracing config key more verbose
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2026-05-18 16:50:14 +02:00
Eric Peterson b70f13990b Bring tracing service more in line with upstream APIs
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2026-05-18 15:20:09 +02:00
Eric Peterson d6c7805527 Propagate and forward gen_ai baggage from caller, if available
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2026-05-18 11:56:20 +02:00
Eric Peterson 8916f83bee Instrument MCP tool calls with semantically appropriate span
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2026-05-18 10:28:09 +02:00
1337 e907ba6fe1 Merge branch 'backstage:master' into feature/catalog-export 2026-04-22 09:17:13 +02:00
github-actions[bot] 1cc86bee1c Version Packages (next) 2026-04-21 15:07:43 +00:00
the-serious-programmer 82cf16f63c feat: catalog export feature
Signed-off-by: the-serious-programmer <19777147+the-serious-programmer@users.noreply.github.com>
2026-04-18 14:29:30 +02:00
Fredrik Adelöw 8e7f7249e7 chore: regenerate knip reports
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
Made-with: Cursor
2026-04-16 12:14:47 +02:00
github-actions[bot] 93e643d142 Version Packages 2026-04-14 14:57:31 +00:00
vincent c6abc52e1f feat: change resource url to comply with RFC 9728 Section 7.3 (#33855)
* feat: change oauth protected resource url to comply with RFC 9728 Section 7.3

Signed-off-by: Vincent Rittner <Vincent_R@gmx.de>

* feat: enable dynamic mcp resource paths

Signed-off-by: Vincent Rittner <Vincent_R@gmx.de>

* refactor: move url discovery in route handler

Signed-off-by: Vincent Rittner <Vincent_R@gmx.de>

* refactor: revert to upfront route registration

Signed-off-by: Vincent Rittner <Vincent_R@gmx.de>

---------

Signed-off-by: Vincent Rittner <Vincent_R@gmx.de>
2026-04-14 14:13:24 +02:00
github-actions[bot] 6c10d88c13 Version Packages (next) 2026-04-07 15:30:58 +00:00
Patrik Oldsberg adf228cb16 Merge pull request #33720 from backstage/rugvip/add-to-error-utility
errors: add `toError` utility and migrate usages
2026-04-07 12:00:01 +02:00
Gabriel Dugny 282c11475f fix: OAuth 2.0 Protected Resource Metadata returning local endpoint (fix #33062) (#33092)
* fix: OAuth 2.0 Protected Resource Metadata returning local endpoint (fix #33062)

Signed-off-by: Gabriel Dugny <gabriel.dugny@believe.com>

* chore: add basic regression test

Signed-off-by: Gabriel Dugny <gabriel.dugny@believe.com>

---------

Signed-off-by: Gabriel Dugny <gabriel.dugny@believe.com>
2026-04-06 19:04:12 +02:00
Patrik Oldsberg b2319ffe45 errors: add toError utility and migrate assertError usages
Add a `toError` utility function to `@backstage/errors` that converts
unknown values to `ErrorLike` objects. If the value is already error-like
it is returned as-is. Strings are used directly as the error message, and
other values are stringified with a fallback to JSON.stringify to avoid
unhelpful `[object Object]` messages.

Non-error causes passed to `CustomErrorBase` are now converted and stored
using `toError` rather than discarded. Existing `assertError` call sites
across the codebase are migrated to `toError`.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-03 10:16:23 +02:00
github-actions[bot] a2cb332e25 Version Packages (next) 2026-03-31 15:30:51 +00:00
github-actions[bot] c1b510cabb Version Packages (next) 2026-03-24 14:54:00 +00:00
github-actions[bot] 5725b5fcfa Version Packages 2026-03-17 21:39:07 +00:00
Gabriel Dugny a49a40d314 Proper /v3 usage everywhere
Signed-off-by: Gabriel Dugny <gabriel.dugny@believe.com>
2026-03-17 16:48:42 +01:00
Ben Lambert dee4283ccf feat: add pluginId to actions, server name/description config, dot separator for namespaced tools (#33344)
Signed-off-by: benjdlambert <ben@blam.sh>
2026-03-17 08:47:51 +01:00
github-actions[bot] ed7c4e3bef Version Packages (next) 2026-03-10 17:34:12 +00:00
Ben Lambert c74b69788e feat(mcp-actions): Add the ability to configure different plugins for different servers (#33235)
* feat: split MCP actions into per-plugin servers

Add mcpActions.servers config to create multiple MCP server endpoints
scoped by plugin source, with per-server include/exclude filtering.
Add mcpActions.tools for global tool description overrides.

Signed-off-by: benjdlambert <ben@blam.sh>

* feat: namespace tool names, use filter rules for server scoping

- Tool names now use action ID (plugin:name) by default, opt out
  via mcpActions.namespacedToolNames
- Removed pluginSources from server config, use filter.include
  with id glob patterns instead
- Removed tool description overrides (deferred to followup)
- Added server key validation for route safety

Signed-off-by: benjdlambert <ben@blam.sh>

* docs: update README for filter-based server scoping

Signed-off-by: benjdlambert <ben@blam.sh>

* feat: drop SSE routes for split servers

Signed-off-by: benjdlambert <ben@blam.sh>

* fix: handle empty servers config, fix test name

Signed-off-by: benjdlambert <ben@blam.sh>

---------

Signed-off-by: benjdlambert <ben@blam.sh>
2026-03-10 11:28:31 +01:00
github-actions[bot] db0d171511 Version Packages (next) 2026-03-03 14:16:49 +00:00
Ben Lambert 62f0a53d65 Fix error forwarding in actions registry to preserve original status codes (#33021)
Signed-off-by: benjdlambert <ben@blam.sh>
2026-02-26 08:59:58 +00:00
github-actions[bot] 4bd6a3a1af Version Packages (next) 2026-02-24 19:24:06 +00:00
Ben Lambert dc81af158f feat(mcp-actions): add server operation and session duration metrics (#32978)
Signed-off-by: Kurt King <kurtaking@gmail.com>
Co-authored-by: Kurt King <kurtaking@gmail.com>
2026-02-24 16:18:02 +00:00
github-actions[bot] e6df5d52ce Version Packages 2026-02-17 16:06:18 +00:00
Ben Lambert 31de2c9b3a feat(auth-backend): add experimental CIMD support (#32307)
Signed-off-by: benjdlambert <ben@blam.sh>
2026-02-17 17:00:49 +01:00
github-actions[bot] 7c41134684 Version Packages (next) 2026-02-10 16:14:59 +00:00
Patrik Oldsberg 8148621999 Move @backstage/backend-defaults to devDependencies in backend plugins
Move @backstage/backend-defaults from dependencies to devDependencies
in all backend plugins that had it as a production dependency. None of
these plugins use it in their production source code - it's only needed
for dev servers (dev/index.ts) and test files.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-09 11:36:39 +01:00
Patrik Oldsberg 4eb50ed4c8 Merge pull request #32678 from backstage/sennyeya/fix-reference-docs
fix: update more /docs/references links
2026-02-04 23:56:06 +01:00
aramissennyeydd efbf232bfa fix: update more /docs/references links
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2026-02-04 10:11:36 -06:00
github-actions[bot] 1ea737c1e2 Version Packages (next) 2026-02-03 14:24:29 +00:00
github-actions[bot] d4b85dddee Version Packages (next) 2026-01-27 15:51:11 +00:00
Fredrik Adelöw 69d880e171 Bump to latest zod
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2026-01-26 13:52:02 +01:00
github-actions[bot] 2e902e7b43 Version Packages 2026-01-20 16:40:05 +00:00
github-actions[bot] 880310b797 Version Packages (next) 2026-01-13 12:10:45 +00:00
dependabot[bot] 4d82a35328 build(deps): bump @modelcontextprotocol/sdk from 1.24.3 to 1.25.2
Bumps [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) from 1.24.3 to 1.25.2.
- [Release notes](https://github.com/modelcontextprotocol/typescript-sdk/releases)
- [Commits](https://github.com/modelcontextprotocol/typescript-sdk/compare/1.24.3...v1.25.2)

---
updated-dependencies:
- dependency-name: "@modelcontextprotocol/sdk"
  dependency-version: 1.25.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-07 17:21:14 +00:00
Backstage Service Account fea3e3972d Version Packages (next) (#32150) 2025-12-23 18:22:06 +01:00
github-actions[bot] c24788d5bb Version Packages 2025-12-16 14:08:20 +00:00
github-actions[bot] e08f48a9b5 Version Packages (next) 2025-12-09 15:00:09 +00:00
benjdlambert e83e038dad chore: ok, this is it
Signed-off-by: benjdlambert <ben@blam.sh>
2025-12-09 15:11:32 +01:00
benjdlambert 043140529a chore: fix deps
Signed-off-by: benjdlambert <ben@blam.sh>
2025-12-09 12:54:52 +01:00