diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 5fdd883..c4ddc74 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "1.1.0" + ".": "1.1.1" } diff --git a/CHANGELOG.md b/CHANGELOG.md index fc52912..5eae862 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## 1.1.1 (2025-10-09) + +Full Changelog: [v1.1.0...v1.1.1](https://github.com/caesar-data/typescript-sdk/compare/v1.1.0...v1.1.1) + +### Chores + +* extract some types in mcp docs ([190cca3](https://github.com/caesar-data/typescript-sdk/commit/190cca35a1688c55856b7bf98fc6ff7b1846b054)) +* **internal:** use npm pack for build uploads ([f3839b3](https://github.com/caesar-data/typescript-sdk/commit/f3839b3fd54b91eac9869c49daddf80db8fc98e2)) + ## 1.1.0 (2025-10-04) Full Changelog: [v1.0.0...v1.1.0](https://github.com/caesar-data/typescript-sdk/compare/v1.0.0...v1.1.0) diff --git a/package.json b/package.json index 2dbc8e7..2e138be 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "caesar-data", - "version": "1.1.0", + "version": "1.1.1", "description": "The official TypeScript library for the Caesar API", "author": "Caesar ", "types": "dist/index.d.ts", diff --git a/packages/mcp-server/package.json b/packages/mcp-server/package.json index 6c03273..7164c3d 100644 --- a/packages/mcp-server/package.json +++ b/packages/mcp-server/package.json @@ -1,6 +1,6 @@ { "name": "caesar-mcp", - "version": "1.1.0", + "version": "1.1.1", "description": "The official MCP Server for the Caesar API", "author": "Caesar ", "types": "dist/index.d.ts", diff --git a/packages/mcp-server/src/server.ts b/packages/mcp-server/src/server.ts index 5cc62e9..df0ace8 100644 --- a/packages/mcp-server/src/server.ts +++ b/packages/mcp-server/src/server.ts @@ -34,7 +34,7 @@ export const newMcpServer = () => new McpServer( { name: 'caesar_data_api', - version: '1.1.0', + version: '1.1.1', }, { capabilities: { tools: {}, logging: {} } }, ); diff --git a/packages/mcp-server/src/tools/research/create-research.ts b/packages/mcp-server/src/tools/research/create-research.ts index 02a811c..8ec2990 100644 --- a/packages/mcp-server/src/tools/research/create-research.ts +++ b/packages/mcp-server/src/tools/research/create-research.ts @@ -18,7 +18,7 @@ export const metadata: Metadata = { export const tool: Tool = { name: 'create_research', description: - "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nStart a new research job using a query and optional file IDs.\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n id: {\n type: 'string',\n description: 'Research job identifier.'\n },\n status: {\n type: 'string',\n description: 'Current status of the research job.',\n enum: [ 'queued',\n 'searching',\n 'summarizing',\n 'analyzing',\n 'completed',\n 'failed',\n 'researching'\n ]\n }\n },\n required: [ 'id',\n 'status'\n ]\n}\n```", + "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nStart a new research job using a query and optional file IDs.\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/research_create_response',\n $defs: {\n research_create_response: {\n type: 'object',\n properties: {\n id: {\n type: 'string',\n description: 'Research job identifier.'\n },\n status: {\n type: 'string',\n description: 'Current status of the research job.',\n enum: [ 'queued',\n 'searching',\n 'summarizing',\n 'analyzing',\n 'completed',\n 'failed',\n 'researching'\n ]\n }\n },\n required: [ 'id',\n 'status'\n ]\n }\n }\n}\n```", inputSchema: { type: 'object', properties: { diff --git a/packages/mcp-server/src/tools/research/files/create-research-files.ts b/packages/mcp-server/src/tools/research/files/create-research-files.ts index 1547b3d..f5130b7 100644 --- a/packages/mcp-server/src/tools/research/files/create-research-files.ts +++ b/packages/mcp-server/src/tools/research/files/create-research-files.ts @@ -18,7 +18,7 @@ export const metadata: Metadata = { export const tool: Tool = { name: 'create_research_files', description: - "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nUpload a file via multipart form and create a Research File object.\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n id: {\n type: 'string',\n description: 'Unique identifier for the file.'\n },\n content_type: {\n type: 'string',\n description: 'MIME type of the file as detected/stored.'\n },\n file_name: {\n type: 'string',\n description: 'Original uploaded filename.'\n }\n },\n required: [ 'id',\n 'content_type',\n 'file_name'\n ]\n}\n```", + "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nUpload a file via multipart form and create a Research File object.\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/file_create_response',\n $defs: {\n file_create_response: {\n type: 'object',\n properties: {\n id: {\n type: 'string',\n description: 'Unique identifier for the file.'\n },\n content_type: {\n type: 'string',\n description: 'MIME type of the file as detected/stored.'\n },\n file_name: {\n type: 'string',\n description: 'Original uploaded filename.'\n }\n },\n required: [ 'id',\n 'content_type',\n 'file_name'\n ]\n }\n }\n}\n```", inputSchema: { type: 'object', properties: { diff --git a/packages/mcp-server/src/tools/research/files/list-research-files.ts b/packages/mcp-server/src/tools/research/files/list-research-files.ts index 4edcd4e..763d234 100644 --- a/packages/mcp-server/src/tools/research/files/list-research-files.ts +++ b/packages/mcp-server/src/tools/research/files/list-research-files.ts @@ -18,7 +18,7 @@ export const metadata: Metadata = { export const tool: Tool = { name: 'list_research_files', description: - "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nReturns a paginated list of Research File objects.\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n data: {\n type: 'array',\n description: 'List of file objects.',\n items: {\n type: 'object',\n properties: {\n id: {\n type: 'string',\n description: 'Unique identifier for the file.'\n },\n content_type: {\n type: 'string',\n description: 'MIME type of the file as detected/stored.'\n },\n file_name: {\n type: 'string',\n description: 'Original uploaded filename.'\n }\n },\n required: [ 'id',\n 'content_type',\n 'file_name'\n ]\n }\n },\n pagination: {\n type: 'object',\n properties: {\n has_next: {\n type: 'boolean',\n description: 'Whether another page is available.'\n },\n limit: {\n type: 'integer',\n description: 'Page size (items per page).'\n },\n page: {\n type: 'integer',\n description: 'Current page number (1-based).'\n },\n total: {\n type: 'integer',\n description: 'Total number of items (may be omitted).'\n }\n },\n required: [ 'has_next',\n 'limit',\n 'page'\n ]\n }\n },\n required: [ 'data',\n 'pagination'\n ]\n}\n```", + "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nReturns a paginated list of Research File objects.\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n data: {\n type: 'array',\n description: 'List of file objects.',\n items: {\n $ref: '#/$defs/file_list_response'\n }\n },\n pagination: {\n type: 'object',\n properties: {\n has_next: {\n type: 'boolean',\n description: 'Whether another page is available.'\n },\n limit: {\n type: 'integer',\n description: 'Page size (items per page).'\n },\n page: {\n type: 'integer',\n description: 'Current page number (1-based).'\n },\n total: {\n type: 'integer',\n description: 'Total number of items (may be omitted).'\n }\n },\n required: [ 'has_next',\n 'limit',\n 'page'\n ]\n }\n },\n required: [ 'data',\n 'pagination'\n ],\n $defs: {\n file_list_response: {\n type: 'object',\n properties: {\n id: {\n type: 'string',\n description: 'Unique identifier for the file.'\n },\n content_type: {\n type: 'string',\n description: 'MIME type of the file as detected/stored.'\n },\n file_name: {\n type: 'string',\n description: 'Original uploaded filename.'\n }\n },\n required: [ 'id',\n 'content_type',\n 'file_name'\n ]\n }\n }\n}\n```", inputSchema: { type: 'object', properties: { diff --git a/packages/mcp-server/src/tools/research/list-research.ts b/packages/mcp-server/src/tools/research/list-research.ts index 47ff89f..87e9eec 100644 --- a/packages/mcp-server/src/tools/research/list-research.ts +++ b/packages/mcp-server/src/tools/research/list-research.ts @@ -18,7 +18,7 @@ export const metadata: Metadata = { export const tool: Tool = { name: 'list_research', description: - "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nReturns a paginated list of research objects.\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n data: {\n type: 'array',\n description: 'List of research objects.',\n items: {\n type: 'object',\n properties: {\n id: {\n type: 'string',\n description: 'Research job identifier.'\n },\n created_at: {\n type: 'string',\n description: 'ISO 8601 timestamp when the job was created.',\n format: 'date-time'\n },\n query: {\n type: 'string',\n description: 'Original query.'\n },\n results: {\n type: 'array',\n description: 'Ranked retrieval results and citations.',\n items: {\n type: 'object',\n properties: {\n id: {\n type: 'string',\n description: 'Result object identifier.'\n },\n score: {\n type: 'number',\n description: 'Relevance score (0–1).'\n },\n title: {\n type: 'string',\n description: 'Result title.'\n },\n url: {\n type: 'string',\n description: 'Canonical URL of the result.'\n },\n citation_index: {\n type: 'integer',\n description: 'Index used for inline citations (if present).'\n }\n },\n required: [ 'id',\n 'score',\n 'title',\n 'url'\n ]\n }\n },\n status: {\n type: 'string',\n description: 'Current status of the research job.',\n enum: [ 'queued',\n 'searching',\n 'summarizing',\n 'analyzing',\n 'completed',\n 'failed',\n 'researching'\n ]\n },\n content: {\n type: 'string',\n description: 'Final content/synthesis (null until available).'\n },\n transformed_content: {\n type: 'string',\n description: 'Post-processed content (e.g., formatted/converted).'\n }\n },\n required: [ 'id',\n 'created_at',\n 'query',\n 'results',\n 'status'\n ]\n }\n },\n pagination: {\n type: 'object',\n properties: {\n has_next: {\n type: 'boolean',\n description: 'Whether another page is available.'\n },\n limit: {\n type: 'integer',\n description: 'Page size (items per page).'\n },\n page: {\n type: 'integer',\n description: 'Current page number (1-based).'\n },\n total: {\n type: 'integer',\n description: 'Total number of items (may be omitted).'\n }\n },\n required: [ 'has_next',\n 'limit',\n 'page'\n ]\n }\n },\n required: [ 'data',\n 'pagination'\n ]\n}\n```", + "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nReturns a paginated list of research objects.\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n data: {\n type: 'array',\n description: 'List of research objects.',\n items: {\n $ref: '#/$defs/research_list_response'\n }\n },\n pagination: {\n type: 'object',\n properties: {\n has_next: {\n type: 'boolean',\n description: 'Whether another page is available.'\n },\n limit: {\n type: 'integer',\n description: 'Page size (items per page).'\n },\n page: {\n type: 'integer',\n description: 'Current page number (1-based).'\n },\n total: {\n type: 'integer',\n description: 'Total number of items (may be omitted).'\n }\n },\n required: [ 'has_next',\n 'limit',\n 'page'\n ]\n }\n },\n required: [ 'data',\n 'pagination'\n ],\n $defs: {\n research_list_response: {\n type: 'object',\n properties: {\n id: {\n type: 'string',\n description: 'Research job identifier.'\n },\n created_at: {\n type: 'string',\n description: 'ISO 8601 timestamp when the job was created.',\n format: 'date-time'\n },\n query: {\n type: 'string',\n description: 'Original query.'\n },\n results: {\n type: 'array',\n description: 'Ranked retrieval results and citations.',\n items: {\n type: 'object',\n properties: {\n id: {\n type: 'string',\n description: 'Result object identifier.'\n },\n score: {\n type: 'number',\n description: 'Relevance score (0–1).'\n },\n title: {\n type: 'string',\n description: 'Result title.'\n },\n url: {\n type: 'string',\n description: 'Canonical URL of the result.'\n },\n citation_index: {\n type: 'integer',\n description: 'Index used for inline citations (if present).'\n }\n },\n required: [ 'id',\n 'score',\n 'title',\n 'url'\n ]\n }\n },\n status: {\n type: 'string',\n description: 'Current status of the research job.',\n enum: [ 'queued',\n 'searching',\n 'summarizing',\n 'analyzing',\n 'completed',\n 'failed',\n 'researching'\n ]\n },\n content: {\n type: 'string',\n description: 'Final content/synthesis (null until available).'\n },\n transformed_content: {\n type: 'string',\n description: 'Post-processed content (e.g., formatted/converted).'\n }\n },\n required: [ 'id',\n 'created_at',\n 'query',\n 'results',\n 'status'\n ]\n }\n }\n}\n```", inputSchema: { type: 'object', properties: { diff --git a/packages/mcp-server/src/tools/research/results/retrieve-content-research-results.ts b/packages/mcp-server/src/tools/research/results/retrieve-content-research-results.ts index 843453d..4418023 100644 --- a/packages/mcp-server/src/tools/research/results/retrieve-content-research-results.ts +++ b/packages/mcp-server/src/tools/research/results/retrieve-content-research-results.ts @@ -18,7 +18,7 @@ export const metadata: Metadata = { export const tool: Tool = { name: 'retrieve_content_research_results', description: - "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nReturns the raw content for a specific result within a research object.\n\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n content: {\n type: 'string',\n description: 'Raw extracted content for this result (may include HTML, markdown, or plain text).'\n }\n },\n required: [ 'content'\n ]\n}\n```", + "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nReturns the raw content for a specific result within a research object.\n\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/result_retrieve_content_response',\n $defs: {\n result_retrieve_content_response: {\n type: 'object',\n properties: {\n content: {\n type: 'string',\n description: 'Raw extracted content for this result (may include HTML, markdown, or plain text).'\n }\n },\n required: [ 'content'\n ]\n }\n }\n}\n```", inputSchema: { type: 'object', properties: { diff --git a/packages/mcp-server/src/tools/research/retrieve-research.ts b/packages/mcp-server/src/tools/research/retrieve-research.ts index 4fdb0b7..eb8cb1d 100644 --- a/packages/mcp-server/src/tools/research/retrieve-research.ts +++ b/packages/mcp-server/src/tools/research/retrieve-research.ts @@ -18,7 +18,7 @@ export const metadata: Metadata = { export const tool: Tool = { name: 'retrieve_research', description: - "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nRetrieve a single research object by ID.\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n id: {\n type: 'string',\n description: 'Research job identifier.'\n },\n created_at: {\n type: 'string',\n description: 'ISO 8601 timestamp when the job was created.',\n format: 'date-time'\n },\n query: {\n type: 'string',\n description: 'Original query.'\n },\n results: {\n type: 'array',\n description: 'Ranked retrieval results and citations.',\n items: {\n type: 'object',\n properties: {\n id: {\n type: 'string',\n description: 'Result object identifier.'\n },\n score: {\n type: 'number',\n description: 'Relevance score (0–1).'\n },\n title: {\n type: 'string',\n description: 'Result title.'\n },\n url: {\n type: 'string',\n description: 'Canonical URL of the result.'\n },\n citation_index: {\n type: 'integer',\n description: 'Index used for inline citations (if present).'\n }\n },\n required: [ 'id',\n 'score',\n 'title',\n 'url'\n ]\n }\n },\n status: {\n type: 'string',\n description: 'Current status of the research job.',\n enum: [ 'queued',\n 'searching',\n 'summarizing',\n 'analyzing',\n 'completed',\n 'failed',\n 'researching'\n ]\n },\n content: {\n type: 'string',\n description: 'Final content/synthesis (null until available).'\n },\n transformed_content: {\n type: 'string',\n description: 'Post-processed content (e.g., formatted/converted).'\n }\n },\n required: [ 'id',\n 'created_at',\n 'query',\n 'results',\n 'status'\n ]\n}\n```", + "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nRetrieve a single research object by ID.\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/research_retrieve_response',\n $defs: {\n research_retrieve_response: {\n type: 'object',\n properties: {\n id: {\n type: 'string',\n description: 'Research job identifier.'\n },\n created_at: {\n type: 'string',\n description: 'ISO 8601 timestamp when the job was created.',\n format: 'date-time'\n },\n query: {\n type: 'string',\n description: 'Original query.'\n },\n results: {\n type: 'array',\n description: 'Ranked retrieval results and citations.',\n items: {\n type: 'object',\n properties: {\n id: {\n type: 'string',\n description: 'Result object identifier.'\n },\n score: {\n type: 'number',\n description: 'Relevance score (0–1).'\n },\n title: {\n type: 'string',\n description: 'Result title.'\n },\n url: {\n type: 'string',\n description: 'Canonical URL of the result.'\n },\n citation_index: {\n type: 'integer',\n description: 'Index used for inline citations (if present).'\n }\n },\n required: [ 'id',\n 'score',\n 'title',\n 'url'\n ]\n }\n },\n status: {\n type: 'string',\n description: 'Current status of the research job.',\n enum: [ 'queued',\n 'searching',\n 'summarizing',\n 'analyzing',\n 'completed',\n 'failed',\n 'researching'\n ]\n },\n content: {\n type: 'string',\n description: 'Final content/synthesis (null until available).'\n },\n transformed_content: {\n type: 'string',\n description: 'Post-processed content (e.g., formatted/converted).'\n }\n },\n required: [ 'id',\n 'created_at',\n 'query',\n 'results',\n 'status'\n ]\n }\n }\n}\n```", inputSchema: { type: 'object', properties: { diff --git a/scripts/utils/upload-artifact.sh b/scripts/utils/upload-artifact.sh index 463450d..3427596 100755 --- a/scripts/utils/upload-artifact.sh +++ b/scripts/utils/upload-artifact.sh @@ -12,9 +12,11 @@ if [[ "$SIGNED_URL" == "null" ]]; then exit 1 fi -UPLOAD_RESPONSE=$(tar "${BASE_PATH:+-C$BASE_PATH}" -cz "${ARTIFACT_PATH:-dist}" | curl -v -X PUT \ +TARBALL=$(cd dist && npm pack --silent) + +UPLOAD_RESPONSE=$(curl -v -X PUT \ -H "Content-Type: application/gzip" \ - --data-binary @- "$SIGNED_URL" 2>&1) + --data-binary "@dist/$TARBALL" "$SIGNED_URL" 2>&1) if echo "$UPLOAD_RESPONSE" | grep -q "HTTP/[0-9.]* 200"; then echo -e "\033[32mUploaded build to Stainless storage.\033[0m" diff --git a/src/version.ts b/src/version.ts index c80f975..4d7aaa3 100644 --- a/src/version.ts +++ b/src/version.ts @@ -1 +1 @@ -export const VERSION = '1.1.0'; // x-release-please-version +export const VERSION = '1.1.1'; // x-release-please-version