Skip to content

Commit f6cbb5e

Browse files
release: 2.0.0 (#11)
Automated Release PR --- ## 2.0.0 (2026-01-16) Full Changelog: [v0.0.1...v2.0.0](v0.0.1...v2.0.0) ### ⚠ BREAKING CHANGES * **mcp:** remove deprecated tool schemes * **mcp:** **Migration:** To migrate, simply modify the command used to invoke the MCP server. Currently, the only supported tool scheme is code mode. Now, starting the server with just `node /path/to/mcp/server` or `npx package-name` will invoke code tools: changing your command to one of these is likely all you will need to do. * **mcp:** remove deprecated tool schemes * **mcp:** **Migration:** To migrate, simply modify the command used to invoke the MCP server. Currently, the only supported tool scheme is code mode. Now, starting the server with just `node /path/to/mcp/server` or `npx package-name` will invoke code tools: changing your command to one of these is likely all you will need to do. ### Features * **api:** api update ([17d6472](17d6472)) * **api:** api update ([c6d611b](c6d611b)) * **api:** api update ([2771086](2771086)) * **api:** api update ([6f16232](6f16232)) * **api:** config oidc publishing ([7b841ef](7b841ef)) * **api:** config oidc publishing ([2e333b3](2e333b3)) * **api:** manual updates ([f661ac2](f661ac2)) * **api:** manual updates ([7335a65](7335a65)) * **api:** manual updates ([d31b0ab](d31b0ab)) * **api:** manual updates ([63942f4](63942f4)) * **api:** npm package name ([1ed323a](1ed323a)) ### Bug Fixes * **mcp:** correct code tool api output types ([1605549](1605549)) * **mcp:** correct code tool api output types ([78726dc](78726dc)) * **mcp:** fix env parsing ([1c0f081](1c0f081)) * **mcp:** fix env parsing ([d778a28](d778a28)) * **mcp:** fix options parsing ([340f402](340f402)) * **mcp:** fix options parsing ([779a682](779a682)) * **mcp:** pass base url to code tool ([e2cd493](e2cd493)) * **mcp:** pass base url to code tool ([442ae79](442ae79)) * **mcp:** update code tool prompt ([982ca77](982ca77)) * **mcp:** update code tool prompt ([59601ef](59601ef)) ### Chores * break long lines in snippets into multiline ([137d85d](137d85d)) * break long lines in snippets into multiline ([561e131](561e131)) * **internal:** codegen related update ([7540210](7540210)) * **internal:** codegen related update ([00615b4](00615b4)) * **internal:** codegen related update ([909837c](909837c)) * **internal:** codegen related update ([576cdd0](576cdd0)) * **internal:** codegen related update ([a11aae4](a11aae4)) * **internal:** codegen related update ([1fbd73d](1fbd73d)) * **internal:** codegen related update ([b28a1eb](b28a1eb)) * **internal:** codegen related update ([c38e258](c38e258)) * **internal:** codegen related update ([d5e7447](d5e7447)) * **internal:** codegen related update ([57d1eea](57d1eea)) * **internal:** codegen related update ([2c66846](2c66846)) * **internal:** codegen related update ([cd8203b](cd8203b)) * **internal:** configure MCP Server hosting ([a3a409b](a3a409b)) * **internal:** configure MCP Server hosting ([ac6b84f](ac6b84f)) * **internal:** update lock file ([2a55f50](2a55f50)) * **internal:** update lock file ([01968f6](01968f6)) * **internal:** upgrade babel, qs, js-yaml ([5dcb371](5dcb371)) * **internal:** upgrade babel, qs, js-yaml ([1757f08](1757f08)) * **internal:** upgrade brace-expansion and @babel/helpers ([7fb6f6e](7fb6f6e)) * **internal:** upgrade brace-expansion and @babel/helpers ([afbf5b6](afbf5b6)) * **mcp:** add intent param to execute tool ([f3cecaa](f3cecaa)) * **mcp:** add intent param to execute tool ([03d202e](03d202e)) * **mcp:** pass intent param to execute handler ([bc17aea](bc17aea)) * **mcp:** pass intent param to execute handler ([99a9770](99a9770)) * **mcp:** remove deprecated tool schemes ([4aebd21](4aebd21)) * **mcp:** remove deprecated tool schemes ([cc55b24](cc55b24)) * **mcp:** upgrade dependencies ([e3ab970](e3ab970)) * **mcp:** upgrade dependencies ([609445e](609445e)) * sync repo ([7ee48c1](7ee48c1)) * sync repo ([d87090e](d87090e)) * update SDK settings ([d4a4358](d4a4358)) * update SDK settings ([904050c](904050c)) * update SDK settings ([220df2a](220df2a)) * update SDK settings ([5c56080](5c56080)) * update SDK settings ([48722ec](48722ec)) * update SDK settings ([4ff76e5](4ff76e5)) ### Documentation * add more examples ([e91c433](e91c433)) * add more examples ([13692c7](13692c7)) * prominently feature MCP server setup in root SDK readmes ([78086e1](78086e1)) * prominently feature MCP server setup in root SDK readmes ([2684b6c](2684b6c)) --- This pull request is managed by Stainless's [GitHub App](https://github.com/apps/stainless-app). The [semver version number](https://semver.org/#semantic-versioning-specification-semver) is based on included [commit messages](https://www.conventionalcommits.org/en/v1.0.0/). Alternatively, you can manually set the version number in the title of this pull request. For a better experience, it is recommended to use either rebase-merge or squash-merge when merging this pull request. 🔗 Stainless [website](https://www.stainlessapi.com) 📚 Read the [docs](https://app.stainlessapi.com/docs) 🙋 [Reach out](mailto:[email protected]) for help or questions --------- Co-authored-by: stainless-app[bot] <142633134+stainless-app[bot]@users.noreply.github.com>
1 parent abcd89c commit f6cbb5e

File tree

153 files changed

+14452
-12608
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

153 files changed

+14452
-12608
lines changed

.devcontainer/devcontainer.json

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
2+
// README at: https://github.com/devcontainers/templates/tree/main/src/debian
3+
{
4+
"name": "Development",
5+
"image": "mcr.microsoft.com/devcontainers/typescript-node:latest",
6+
"features": {
7+
"ghcr.io/devcontainers/features/node:1": {}
8+
},
9+
"postCreateCommand": "pnpm install",
10+
"customizations": {
11+
"vscode": {
12+
"extensions": ["esbenp.prettier-vscode"]
13+
}
14+
}
15+
}

.github/workflows/ci.yml

Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
name: CI
2+
on:
3+
push:
4+
branches-ignore:
5+
- 'generated'
6+
- 'codegen/**'
7+
- 'integrated/**'
8+
- 'stl-preview-head/**'
9+
- 'stl-preview-base/**'
10+
pull_request:
11+
branches-ignore:
12+
- 'stl-preview-head/**'
13+
- 'stl-preview-base/**'
14+
15+
jobs:
16+
lint:
17+
timeout-minutes: 10
18+
name: lint
19+
runs-on: ${{ github.repository == 'stainless-sdks/tabstack-typescript' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
20+
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
21+
steps:
22+
- uses: actions/checkout@v4
23+
24+
- name: Set up Node
25+
uses: actions/setup-node@v4
26+
with:
27+
node-version: '22'
28+
29+
- name: Set up pnpm
30+
uses: pnpm/action-setup@v4
31+
with:
32+
version: '10.24.0'
33+
34+
- name: Bootstrap
35+
run: ./scripts/bootstrap
36+
37+
- name: Check types
38+
run: ./scripts/lint
39+
40+
build:
41+
timeout-minutes: 5
42+
name: build
43+
runs-on: ${{ github.repository == 'stainless-sdks/tabstack-typescript' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
44+
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
45+
permissions:
46+
contents: read
47+
id-token: write
48+
steps:
49+
- uses: actions/checkout@v4
50+
51+
- name: Set up Node
52+
uses: actions/setup-node@v4
53+
with:
54+
node-version: '22'
55+
56+
- name: Set up pnpm
57+
uses: pnpm/action-setup@v4
58+
with:
59+
version: '10.24.0'
60+
61+
- name: Bootstrap
62+
run: ./scripts/bootstrap
63+
64+
- name: Check build
65+
run: ./scripts/build
66+
67+
- name: Get GitHub OIDC Token
68+
if: github.repository == 'stainless-sdks/tabstack-typescript'
69+
id: github-oidc
70+
uses: actions/github-script@v6
71+
with:
72+
script: core.setOutput('github_token', await core.getIDToken());
73+
74+
- name: Upload tarball
75+
if: github.repository == 'stainless-sdks/tabstack-typescript'
76+
env:
77+
URL: https://pkg.stainless.com/s
78+
AUTH: ${{ steps.github-oidc.outputs.github_token }}
79+
SHA: ${{ github.sha }}
80+
run: ./scripts/utils/upload-artifact.sh
81+
82+
- name: Upload MCP Server tarball
83+
if: github.repository == 'stainless-sdks/tabstack-typescript'
84+
env:
85+
URL: https://pkg.stainless.com/s?subpackage=mcp-server
86+
AUTH: ${{ steps.github-oidc.outputs.github_token }}
87+
SHA: ${{ github.sha }}
88+
BASE_PATH: packages/mcp-server
89+
run: ./scripts/utils/upload-artifact.sh
90+
test:
91+
timeout-minutes: 10
92+
name: test
93+
runs-on: ${{ github.repository == 'stainless-sdks/tabstack-typescript' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
94+
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
95+
steps:
96+
- uses: actions/checkout@v4
97+
98+
- name: Set up Node
99+
uses: actions/setup-node@v4
100+
with:
101+
node-version: '22'
102+
103+
- name: Set up pnpm
104+
uses: pnpm/action-setup@v4
105+
with:
106+
version: '10.24.0'
107+
108+
- name: Bootstrap
109+
run: ./scripts/bootstrap
110+
111+
- name: Build
112+
run: ./scripts/build
113+
114+
- name: Run tests
115+
run: ./scripts/test

.github/workflows/publish-npm.yml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
# This workflow is triggered when a GitHub release is created.
2+
# It can also be run manually to re-publish to NPM in case it failed for some reason.
3+
# You can run this workflow by navigating to https://www.github.com/Mozilla-Ocho/tabstack-typescript/actions/workflows/publish-npm.yml
4+
name: Publish NPM
5+
on:
6+
workflow_dispatch:
7+
inputs:
8+
path:
9+
description: The path to run the release in, e.g. '.' or 'packages/mcp-server'
10+
required: true
11+
12+
release:
13+
types: [published]
14+
15+
jobs:
16+
publish:
17+
name: publish
18+
runs-on: ubuntu-latest
19+
permissions:
20+
contents: write
21+
id-token: write
22+
23+
steps:
24+
- uses: actions/checkout@v4
25+
26+
- name: Set up Node
27+
uses: actions/setup-node@v3
28+
with:
29+
node-version: '20'
30+
31+
- name: Set up pnpm
32+
uses: pnpm/action-setup@v4
33+
34+
- name: Install dependencies
35+
run: |
36+
pnpm install
37+
38+
- name: Publish to NPM
39+
run: |
40+
if [ -n "${{ github.event.inputs.path }}" ]; then
41+
PATHS_RELEASED='[\"${{ github.event.inputs.path }}\"]'
42+
else
43+
PATHS_RELEASED='[\".\", \"packages/mcp-server\"]'
44+
fi
45+
pnpm tsn scripts/publish-packages.ts "{ \"paths_released\": \"$PATHS_RELEASED\" }"
46+
47+
- name: Upload MCP Server DXT GitHub release asset
48+
run: |
49+
gh release upload ${{ github.event.release.tag_name }} \
50+
packages/mcp-server/tabstack_sdk_api.mcpb
51+
env:
52+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: Release Doctor
2+
on:
3+
pull_request:
4+
branches:
5+
- main
6+
workflow_dispatch:
7+
8+
jobs:
9+
release_doctor:
10+
name: release doctor
11+
runs-on: ubuntu-latest
12+
if: github.repository == 'Mozilla-Ocho/tabstack-typescript' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next')
13+
14+
steps:
15+
- uses: actions/checkout@v4
16+
17+
- name: Check release environment
18+
run: |
19+
bash ./bin/check-release-environment
20+

.gitignore

Lines changed: 10 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -1,82 +1,12 @@
1-
# Dependencies
2-
node_modules/
3-
jspm_packages/
4-
5-
# Build outputs
6-
dist/
7-
build/
8-
*.tsbuildinfo
9-
10-
# Testing
11-
coverage/
12-
.nyc_output/
13-
*.lcov
14-
15-
# TypeScript
16-
*.js.map
17-
*.d.ts.map
18-
19-
# Package manager files
20-
yarn.lock
21-
pnpm-lock.yaml
22-
bun.lockb
23-
.yarn/
24-
.pnpm-store/
25-
.pnp.*
26-
27-
# Environment variables
28-
.env
29-
.env.local
30-
.env.development.local
31-
.env.test.local
32-
.env.production.local
33-
34-
# IDE and editor files
35-
.vscode/
1+
.prism.log
2+
node_modules
3+
yarn-error.log
4+
codegen.log
5+
Brewfile.lock.json
6+
dist
7+
dist-deno
8+
/*.tgz
369
.idea/
37-
*.swp
38-
*.swo
39-
*~
40-
.DS_Store
41-
*.sublime-project
42-
*.sublime-workspace
43-
44-
# Logs
45-
logs/
46-
*.log
47-
npm-debug.log*
48-
yarn-debug.log*
49-
yarn-error.log*
50-
lerna-debug.log*
51-
pnpm-debug.log*
52-
53-
# OS files
54-
.DS_Store
55-
.DS_Store?
56-
._*
57-
.Spotlight-V100
58-
.Trashes
59-
ehthumbs.db
60-
Thumbs.db
61-
62-
# Temporary files
63-
tmp/
64-
temp/
65-
*.tmp
66-
67-
# Optional npm cache directory
68-
.npm
69-
70-
# Optional eslint cache
7110
.eslintcache
72-
73-
# Optional REPL history
74-
.node_repl_history
75-
76-
# Output of 'npm pack'
77-
*.tgz
78-
79-
# Misc
80-
.cache/
81-
.parcel-cache/
82-
.claude/
11+
dist-bundle
12+
*.mcpb

.npmignore

Lines changed: 0 additions & 35 deletions
This file was deleted.

.prettierignore

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1+
CHANGELOG.md
2+
/ecosystem-tests/*/**
3+
/node_modules
4+
/deno
5+
6+
# don't format tsc output, will break source maps
17
dist
2-
node_modules
3-
coverage
4-
*.min.js
5-
package-lock.json

.prettierrc.json

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
11
{
2-
"semi": true,
3-
"trailingComma": "es5",
4-
"singleQuote": true,
5-
"printWidth": 100,
6-
"tabWidth": 2,
7-
"useTabs": false,
82
"arrowParens": "always",
9-
"endOfLine": "lf"
3+
"experimentalTernaries": true,
4+
"printWidth": 110,
5+
"singleQuote": true,
6+
"trailingComma": "all"
107
}

.release-please-manifest.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
".": "2.0.0"
3+
}

.stats.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
configured_endpoints: 4
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/mozilla%2Ftabstack-5aeb0321dfa491e03f95682879119e6fe62f3777f7026c85b0fd84ffbcfe957c.yml
3+
openapi_spec_hash: 2cdab5faacc1cb28545a9faf4459b629
4+
config_hash: 71c10599b4847b7bccbc56016586d07f

0 commit comments

Comments
 (0)