MCP Kostenpositionen als Text ausgeben
This commit is contained in:
1 parent
42127b0916
commit
c4e1c291d8
1 file changed
+21
-1
@@ -195,9 +195,24 @@ function market_management_mcp_get_occurrence(PDO $pdo, int $occurrenceId, bool
|
||||
}
|
||||
unset($market['occurrences']);
|
||||
$occurrence['market'] = $market;
|
||||
$occurrence['cost_items_text'] = market_management_mcp_cost_items_text($occurrence['cost_items'] ?? []);
|
||||
return $occurrence;
|
||||
}
|
||||
|
||||
function market_management_mcp_cost_items_text(array $costItems): ?string
|
||||
{
|
||||
foreach ($costItems as $costItem) {
|
||||
if (!is_array($costItem)) {
|
||||
continue;
|
||||
}
|
||||
$description = $costItem['description'] ?? null;
|
||||
if ($description !== null && trim((string) $description) !== '') {
|
||||
return (string) $description;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
function market_management_mcp_get_market(PDO $pdo, int $marketId, bool $includeArchived = false): array
|
||||
{
|
||||
$market = market_management_get_market($pdo, $marketId, $includeArchived);
|
||||
@@ -207,6 +222,7 @@ function market_management_mcp_get_market(PDO $pdo, int $marketId, bool $include
|
||||
foreach ($market['occurrences'] as $index => $occurrence) {
|
||||
$enriched = market_management_get_occurrence($pdo, (int) $occurrence['id'], $includeArchived);
|
||||
if ($enriched !== null) {
|
||||
$enriched['cost_items_text'] = market_management_mcp_cost_items_text($enriched['cost_items'] ?? []);
|
||||
$market['occurrences'][$index] = $enriched;
|
||||
}
|
||||
}
|
||||
@@ -293,7 +309,11 @@ function market_management_mcp_call(PDO $pdo, string $tool, array $arguments): a
|
||||
'markets' => market_management_search_markets($pdo, $arguments),
|
||||
'occurrences' => market_management_search_occurrences($pdo, $arguments),
|
||||
],
|
||||
'market_management.create_occurrence' => market_management_create_occurrence($pdo, $arguments),
|
||||
'market_management.create_occurrence' => (static function () use ($pdo, $arguments): array {
|
||||
$occurrence = market_management_create_occurrence($pdo, $arguments);
|
||||
$occurrence['cost_items_text'] = market_management_mcp_cost_items_text($occurrence['cost_items'] ?? []);
|
||||
return $occurrence;
|
||||
})(),
|
||||
'market_management.get_occurrence' => market_management_mcp_get_occurrence(
|
||||
$pdo,
|
||||
market_management_require_positive_id($arguments['occurrence_id'] ?? null, 'occurrence_id'),
|
||||
|
||||
Reference in new issue
Block a user