Skip to content

Commit 4f61e97

Browse files
author
semantic-release
committed
chore(release): 0.2.0
1 parent 9af787b commit 4f61e97

File tree

2 files changed

+178
-1
lines changed

2 files changed

+178
-1
lines changed

CHANGELOG.md

Lines changed: 177 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,178 @@
11
# CHANGELOG
22

33

4+
## v0.2.0 (2026-02-16)
5+
6+
### Bug Fixes
7+
8+
- **ci**: Run ruff in autofix mode ([#25](https://github.com/ambient-code/mcp/pull/25),
9+
[`c6c8b2c`](https://github.com/ambient-code/mcp/commit/c6c8b2c8d23a7b36b6f5ab8986acfa2b5a249b7a))
10+
11+
* fix(ci): run ruff in autofix mode
12+
13+
Runs `ruff check --fix` and `ruff format` to apply auto-fixable lint and format corrections, then
14+
fails via `git diff --exit-code` if the working tree is dirty — meaning the developer forgot to
15+
run ruff locally before pushing. This gives a clear error message pointing them to the fix.
16+
17+
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
18+
19+
* style: apply ruff format to client.py
20+
21+
Pre-commit hooks caught one file needing reformatting.
22+
23+
* fix: merge implicit string concatenation for ruff compliance
24+
25+
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
26+
27+
* test: rewrite tests for new public-api client
28+
29+
- Remove obsolete tests for oc CLI-based client - Remove test_security.py (tested methods no longer
30+
exist) - Add test_formatters.py for output formatting - Update test_client.py for HTTP-based
31+
client - Update test_server.py for current 7 tools
32+
33+
All 40 tests pass with 70% coverage.
34+
35+
---------
36+
37+
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
38+
39+
Co-authored-by: Ambient Code <ambient-code@redhat.com>
40+
41+
- **ci**: Use --allow-existing flag for uv venv ([#24](https://github.com/ambient-code/mcp/pull/24),
42+
[`3689fd1`](https://github.com/ambient-code/mcp/commit/3689fd1b05b710e621716065e660ddb99ca34b5f))
43+
44+
When the virtual environment cache is restored, the .venv directory already exists, causing `uv
45+
venv` to fail. The --allow-existing flag allows uv to reuse or recreate the venv as needed.
46+
47+
Co-authored-by: Ambient Code <ambient-code@redhat.com>
48+
49+
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
50+
51+
- **ci**: Use GitHub App token for semantic-release to bypass branch ruleset
52+
([#32](https://github.com/ambient-code/mcp/pull/32),
53+
[`9af787b`](https://github.com/ambient-code/mcp/commit/9af787ba1faacfb47b99e33cd41d109732007db0))
54+
55+
The release workflow was failing because GITHUB_TOKEN (github-actions[bot]) cannot push directly to
56+
main when branch protection requires pull requests. On GitHub Free, the built-in GitHub Actions
57+
integration cannot be added as a bypass actor in rulesets.
58+
59+
Switch to authenticating via the ambient-code GitHub App using actions/create-github-app-token,
60+
which generates a short-lived token that can bypass the "Protect main" ruleset.
61+
62+
Requires repo secrets: RELEASE_APP_ID, RELEASE_APP_PRIVATE_KEY
63+
64+
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
65+
66+
### Features
67+
68+
- Add 18 new MCP tools for session management and observability
69+
([#31](https://github.com/ambient-code/mcp/pull/31),
70+
[`8301653`](https://github.com/ambient-code/mcp/commit/8301653446c20aba7afd0d2e59a030b3ac3e56f5))
71+
72+
* feat: add 18 new MCP tools for session management and observability (#27)
73+
74+
Add comprehensive session management and observability tools to the MCP server, expanding from 8 to
75+
26 total tools. New capabilities include:
76+
77+
- Session lifecycle: get, update, restart, stop, delete (single + bulk) - Observability: logs,
78+
transcript, metrics retrieval - Organization: label/unlabel sessions (single + bulk, by name or
79+
label) - Discovery: list sessions filtered by label selectors - Bulk operations:
80+
delete/stop/restart/label/unlabel by name or label with dry_run preview, confirm safeguard, and
81+
3-item safety limit
82+
83+
All bulk destructive operations require explicit confirm=true and support dry_run=true for safe
84+
preview. Label-based bulk ops resolve matching sessions first, then apply the operation.
85+
86+
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
87+
88+
* test: fill coverage gaps for bulk operations and server dispatch
89+
90+
Add 32 new tests covering previously untested paths:
91+
92+
Client layer: - _run_bulk dry_run path and partial failure handling - _run_bulk_by_label pipeline
93+
(delete/stop/restart by label) - _run_bulk_by_label with no matching sessions -
94+
bulk_label_sessions (success + dry_run) - bulk_unlabel_sessions (success + dry_run)
95+
96+
Server dispatch layer: - get_session, create_session_from_template, clone_session, update_session,
97+
get_session_logs, get_session_transcript, get_session_metrics, label_resource, unlabel_resource,
98+
list_sessions_by_label - Confirmation enforcement for all 8 TOOLS_REQUIRING_CONFIRMATION -
99+
Confirmed dispatch for bulk_label, bulk_unlabel, bulk_restart, and all 3 by-label bulk operations
100+
101+
Coverage: 72% → 81% overall (client 70→80%, server 63→83%)
102+
103+
---------
104+
105+
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
106+
107+
- Add acp_create_session tool to submit hpc-style jobs via mcp
108+
([#26](https://github.com/ambient-code/mcp/pull/26),
109+
[`4671c81`](https://github.com/ambient-code/mcp/commit/4671c8158340b654f6420dc439e6622522035784))
110+
111+
* feat: add acp_create_session tool and hello-acp integration test
112+
113+
Add acp_create_session MCP tool for submitting AgenticSessions with custom prompts (vs
114+
template-only). Extract shared _apply_manifest() helper from create_session_from_template. Fix pod
115+
label selector bug in get_session_logs (agenticsession → agentic-session). Add first live
116+
integration test that creates a session, polls for marker output in logs, and cleans up.
117+
118+
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
119+
120+
* chore: add hello-acp demo (asciinema cast + GIF)
121+
122+
Claude Code UI simulation showing the full acp_create_session flow: dry-run, live creation, status
123+
polling, log verification, cleanup, and automated pytest run.
124+
125+
* chore: re-record hello-acp demo with real pytest output
126+
127+
Replace scripted typing-effects demo with raw pytest execution. Simpler script, smaller artifacts
128+
(GIF: 1.1MB → 42KB).
129+
130+
* fix: use SettingsConfigDict and re-record demo at 100 cols
131+
132+
Replace deprecated class Config with model_config = SettingsConfigDict() to eliminate
133+
PydanticDeprecatedSince20 warning. Re-record demo with 100-col terminal to prevent line wrapping.
134+
135+
* feat: replace pytest demo with full ACP workflow demo
136+
137+
New demo shows the actual user workflow: 1. Display the plan 2. Submit via acp_create_session (real
138+
API call) 3. Disconnect — session runs autonomously on cluster 4. Check session status via
139+
acp_list_sessions 5. Verify output via acp_get_session_logs
140+
141+
* docs: consolidate QUICKSTART + TRIGGER_PHRASES into README; fix ruff lint
142+
143+
Merge QUICKSTART.md and TRIGGER_PHRASES.md into a single comprehensive README.md with TOC. Delete
144+
the redundant files — users no longer need to hop between 4 docs to get started. Update CLAUDE.md
145+
cross-references.
146+
147+
Also includes pending fixes for ruff F541 (unnecessary f-strings) in demos/hello-acp-workflow.py
148+
that were failing CI, plus prior uncommitted work on the branch: public-api gateway docs,
149+
settings, and test updates.
150+
151+
---------
152+
153+
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
154+
155+
- Authenticate via public-api gateway instead of OpenShift API
156+
([#23](https://github.com/ambient-code/mcp/pull/23),
157+
[`5e4ee66`](https://github.com/ambient-code/mcp/commit/5e4ee6676ca853bba08e1fd224c1f8a6b6e2e416))
158+
159+
Replace direct OpenShift API authentication with HTTP requests to the public-api gateway service.
160+
This simplifies the MCP server by removing the oc CLI dependency and aligns with the platform's
161+
security model where the public-api is the single entry point for all clients.
162+
163+
Changes: - client.py: Rewrite to use httpx for HTTP requests to public-api - settings.py: Update
164+
ClusterConfig to point to public-api URL - server.py: Reduce to 7 supported tools (list, get,
165+
delete sessions) - formatters.py: Remove unused formatters - pyproject.toml: Replace aiohttp with
166+
httpx, update description
167+
168+
The public-api provides: - GET/POST/DELETE /v1/sessions endpoints - Bearer token auth via
169+
Authorization header - Project context via X-Ambient-Project header
170+
171+
Co-authored-by: Ambient Code <ambient-code@redhat.com>
172+
173+
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
174+
175+
4176
## v0.1.3 (2026-02-10)
5177

6178
### Bug Fixes
@@ -14,6 +186,11 @@ The python-semantic-release Docker action creates dist/ and build/ directories i
14186

15187
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
16188

189+
### Chores
190+
191+
- **release**: 0.1.3
192+
([`5561a9d`](https://github.com/ambient-code/mcp/commit/5561a9da2e73e4497e13a12560441ff94f7b10cf))
193+
17194

18195
## v0.1.2 (2026-02-10)
19196

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "mcp-acp"
3-
version = "0.1.3"
3+
version = "0.2.0"
44
description = "MCP server for Ambient Code Platform (ACP) session management - list, delete, debug, and manage AgenticSession resources via the public API"
55
readme = "README.md"
66
requires-python = ">=3.12"

0 commit comments

Comments
 (0)