summaryrefslogtreecommitdiff
path: root/src/mcp/tools/common
diff options
context:
space:
mode:
authortanaka takashi <isazaka@gmail.com>2026-07-17 12:15:41 +0900
committertanaka takashi <isazaka@gmail.com>2026-07-17 12:15:41 +0900
commitd57577637c1c1a16176d63d5a89e9eec3c1e4d7c (patch)
tree55087498ab17601845446174a2f41f2490a53820 /src/mcp/tools/common
parentdda043b0ec9d8d9e5da7fe51fc48791086417a9b (diff)
fix: sessions paginationとhealth診断を改善
- sessions cursorのエンコード不具合と長いsession IDのバッファ問題を修正 - response budgetに基づくsessionsページングを追加 - get_system_healthにsession_countを追加 - metadata_jsonのフィールド別エラー診断を追加 - CRUD互換性とDebug/Release/ASanテストを確認
Diffstat (limited to 'src/mcp/tools/common')
-rw-r--r--src/mcp/tools/common/common.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/mcp/tools/common/common.h b/src/mcp/tools/common/common.h
index 741b2ce..0dedca8 100644
--- a/src/mcp/tools/common/common.h
+++ b/src/mcp/tools/common/common.h
@@ -10,8 +10,17 @@ void tiny_mcp_tool_add_error(mcpc_ucbr_t *result, const char *code, const char *
void tiny_mcp_tool_add_json(mcpc_ucbr_t *result, tiny_json_buffer_t *json);
char *tiny_mcp_tool_get_string(const mcpc_tool_t *tool, const char *name, size_t maximum);
void tiny_mcp_tool_append_message(tiny_json_buffer_t *json, const tiny_message_t *message);
-bool
-tiny_mcp_parse_metadata(const char *json, tiny_message_t *message, tiny_metadata_mask_t *present);
+typedef enum tiny_metadata_parse_status
+{
+ TINY_METADATA_PARSE_OK = 0,
+ TINY_METADATA_PARSE_INVALID,
+ TINY_METADATA_PARSE_NO_MEMORY
+} tiny_metadata_parse_status_t;
+
+tiny_metadata_parse_status_t tiny_mcp_parse_metadata(const char *json,
+ tiny_message_t *message,
+ tiny_metadata_mask_t *present,
+ const char **error);
mcpc_tool_t *tiny_mcp_tool_new(const char *name, const char *description, mcpc_tcallcb_t callback);
bool tiny_mcp_tool_add_property(mcpc_tool_t *tool,