Repository navigation
Commit 2cf9cfa
authored
feat(billing-cost-management-mcp-server): offload large sp-explorer offering results to session SQL (#4713)
describe_savings_plans_offerings and describe_savings_plans_offering_rates
returned the whole offering catalog inline, which can exceed 60k tokens
for a single call. Route both through convert_response_if_needed so a
result above the shared threshold is stored as one row per offering or
rate in a session SQLite table, queryable with the session-sql tool.
Small results are returned inline unchanged, and pagination metadata
(has_more, next_token) is carried on the offloaded response.
Register both operation names with the generic records converter, add
inline, mocked-offload, and real-offload tests, and note the behavior
in the tool description, README, and CHANGELOG.1 parent eb17525 commit 2cf9cfa
5 files changed
Lines changed: 364 additions & 6 deletions
File tree
- src/billing-cost-management-mcp-server
- awslabs/billing_cost_management_mcp_server
- tools
- utilities
- tests/tools
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
| 27 | + | |
27 | 28 | | |
28 | 29 | | |
29 | 30 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
30 | | - | |
| 30 | + | |
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| 24 | + | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
| |||
59 | 60 | | |
60 | 61 | | |
61 | 62 | | |
62 | | - | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
63 | 70 | | |
64 | 71 | | |
65 | 72 | | |
| |||
439 | 446 | | |
440 | 447 | | |
441 | 448 | | |
442 | | - | |
443 | | - | |
| 449 | + | |
| 450 | + | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
444 | 454 | | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
445 | 458 | | |
446 | 459 | | |
| 460 | + | |
| 461 | + | |
447 | 462 | | |
448 | 463 | | |
449 | 464 | | |
| |||
529 | 544 | | |
530 | 545 | | |
531 | 546 | | |
532 | | - | |
533 | | - | |
| 547 | + | |
| 548 | + | |
| 549 | + | |
| 550 | + | |
| 551 | + | |
534 | 552 | | |
| 553 | + | |
| 554 | + | |
| 555 | + | |
535 | 556 | | |
536 | 557 | | |
| 558 | + | |
| 559 | + | |
537 | 560 | | |
538 | 561 | | |
539 | 562 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
404 | 404 | | |
405 | 405 | | |
406 | 406 | | |
| 407 | + | |
| 408 | + | |
407 | 409 | | |
408 | 410 | | |
409 | 411 | | |
| |||
0 commit comments