deploy-mcp
Deploy the FutureSearch MCP server to staging or production on GKE. Use when the user wants to deploy, redeploy, roll back, scale replicas, or check deployment…
Bump the FutureSearch SDK version across all files. Use when releasing a new SDK version, updating version numbers, or the user says bump version, release, version bump.
$ npx -y skills add futuresearch/futuresearch-python --skill bump-sdk-version --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/bump-sdk-versionContext preview
The summary Claude sees to decide when to auto-load this skill.
Bump the FutureSearch SDK version across all files. Use when releasing a new SDK version, updating version numbers, or the user says bump version, release, version bump.
name: bump-sdk-version description: Bump the FutureSearch SDK version across all files. Use when releasing a new SDK version, updating version numbers, or the user says bump version, release, version bump.
We use **semantic versioning** (MAJOR.MINOR.PATCH) while at major version 0:
| Bump | When | Examples | |:-----|:-----|:---------| | **Patch** (0.8.0 -> 0.8.1) | Bug fixes, docs changes, small tweaks, dependency updates | Fix a typo in output, update a dependency | | **Minor** (0.8.1 -> 0.9.0) | New features, new operation types, API additions | Add a new operation, new SDK method, new MCP tool | | **Patch for breaking changes** that are trivial to adapt | Rename a parameter, change a default | Rename `max_rows` to `row_limit` | | **Minor for breaking changes** that require migration | Remove or restructure API surface | Remove an operation type, change return format |
If unsure, ask the user which component to bump.
All paths are relative to `futuresearch-python/`. Update the version string in each:
1. **`pyproject.toml`** — `project.version` (the source of truth) 2. **`.claude-plugin/plugin.json`** — `version` 3. **`.claude-plugin/marketplace.json`** — `plugins[0].version` 4. **`gemini-extension.json`** — `version` 5. **`futuresearch-mcp/pyproject.toml`** — `project.version` AND `dependencies` (`futuresearch>=X.Y.Z`) 6. **`futuresearch-mcp/server.json`** — `version` AND `packages[0].version` 7. **`futuresearch-mcp/manifest.json`** — `version` 8. **`CITATION.cff`** — `version` AND `date-released` (set to today's date) 9. **`README.md`** — BibTeX `version` field in the citation block 10. **`stubs/everyrow/pyproject.toml`** — `project.version` AND `dependencies` (`futuresearch>=X.Y.Z`) 11. **`stubs/everyrow-mcp/pyproject.toml`** — `project.version` AND `dependencies` (`futuresearch-mcp>=X.Y.Z`)
After editing, regenerate the lock files. Run `uv lock` in `futuresearch-python/` first:
cd futuresearch-python && uv lock
Then sync transitive lockfiles across the entire monorepo. The CI check `check-uv-sync` runs `./uv-all.sh sync --all-extras --dev --all-groups` and will fail if any other workspace's `uv.lock` still references the old SDK version. Run it from the repo root:
cd <repo-root> && ./uv-all.sh sync --all-extras --dev --all-groups
Stage any additional lockfiles it touches alongside the bump.
cd futuresearch-python && uv run pytest tests/test_version.py -v
Search for the OLD version number to catch any files that were missed. Use `--hidden` (or equivalent) to include `.claude-plugin/` and other dotfiles:
cd futuresearch-python && rg --hidden "OLD_VERSION" --glob '!.venv' --glob '!uv.lock' --glob '!*.pyc' --glob '!__pycache__'
Be sure to escape the `.` characters in the version number: `"1\.2\.3"`.
Review any hits — some may be false positives: e.g., changelogs, migration notes, 3rd party packages.
Create a branch and commit with message: `Bump SDK version to X.Y.Z`
Version bumps should be in their own PR — do not bundle them with feature or fix changes. The commit message and PR title should be: `Bump SDK version to X.Y.Z`
Merging the bump PR does NOT publish. The publish pipeline lives in the public `futuresearch/futuresearch-python` repo's `.github/workflows/publish.yaml` and triggers on `release: published` only. After the bump PR merges:
1. Wait for `sync-futuresearch-python` to mirror the bump commit to the public repo (verify with `gh api repos/futuresearch/futuresearch-python/commits/main --jq '.commit.message'`). 2. Create a GitHub Release with tag `vX.Y.Z` (note the `v` prefix) and the auto-generated changelog:
gh release create vX.Y.Z \
--repo futuresearch/futuresearch-python \
--generate-notes \
--latest3. This kicks off `publish.yaml`, which:
`everyrow`, `everyrow-mcp`)
4. Watch the run:
gh run list --repo futuresearch/futuresearch-python --workflow=publish.yaml --limit 1
An API for frontier forecasting. FutureSearch predicts the future. Accuracy is verifiable via our public track record on stocks, prediction markets, public benchmarks, and forecasting tournaments: the forecaster leads Metaculus's Summer 2026 FutureEval
Repo: futuresearch/futuresearch-python
Deploy the FutureSearch MCP server to staging or production on GKE. Use when the user wants to deploy, redeploy, roll back, scale replicas, or check deployment…
Run the FutureSearch HTTP MCP server locally with Docker Compose and optionally expose it via Cloudflare tunnel. Use when starting/stopping the local MCP…
Use when the user wants forecasts (probabilities, dates, numbers, odds) or dataset research at scale via FutureSearch.