Expose profile source in MCP users

Add a ProfileSource schema to the MCP specification and include source\nin the Profile response schema so MCP clients can distinguish\nmanual and SCIM-managed users.\n\nWire the source field in the Profile mapper so list, get, and\ncreate user responses return the persisted profile source.

Signed-off-by: Cursor Agent <cursoragent@cursor.com>
This commit is contained in:
Cursor Agent
2026-05-28 00:25:19 +00:00
parent f40fae63b3
commit 4d4f4fa526
2 changed files with 13 additions and 0 deletions

View File

@@ -187,6 +187,14 @@ components:
- INACTIVE - INACTIVE
go.probo.inc/mcpgen/type: go.probo.inc/probo/pkg/coredata.ProfileState go.probo.inc/mcpgen/type: go.probo.inc/probo/pkg/coredata.ProfileState
ProfileSource:
type: string
enum:
- MANUAL
- SCIM
- SAML
go.probo.inc/mcpgen/type: go.probo.inc/probo/pkg/coredata.ProfileSource
Regulation: Regulation:
type: string type: string
enum: enum:
@@ -470,6 +478,7 @@ components:
- email_address - email_address
- additional_email_addresses - additional_email_addresses
- kind - kind
- source
- state - state
- created_at - created_at
- updated_at - updated_at
@@ -496,6 +505,9 @@ components:
- string - string
- "null" - "null"
description: Profile kind description: Profile kind
source:
$ref: "#/components/schemas/ProfileSource"
description: Profile source (MANUAL, SCIM, or SAML)
state: state:
$ref: "#/components/schemas/ProfileState" $ref: "#/components/schemas/ProfileState"
description: Profile state (ACTIVE or INACTIVE) description: Profile state (ACTIVE or INACTIVE)

View File

@@ -24,6 +24,7 @@ func NewProfile(p *coredata.MembershipProfile) *Profile {
EmailAddress: p.EmailAddress, EmailAddress: p.EmailAddress,
AdditionalEmailAddresses: p.AdditionalEmailAddresses, AdditionalEmailAddresses: p.AdditionalEmailAddresses,
Kind: p.Kind, Kind: p.Kind,
Source: p.Source,
State: p.State, State: p.State,
Position: p.Position, Position: p.Position,
ContractStartDate: p.ContractStartDate, ContractStartDate: p.ContractStartDate,