feat: add guided exploration and share user-started MCP backend
This commit is contained in:
1 parent
f86db1ced6
commit
ee256ad7ce
144 files changed
+8625
-2075
No files matched your search
@@ -0,0 +1,25 @@
|
||||
"""Refresh the lightweight offline MCP catalog after changing tool signatures."""
|
||||
|
||||
import asyncio
|
||||
import json
|
||||
from pathlib import Path
|
||||
import sys
|
||||
|
||||
ROOT = Path(__file__).resolve().parent.parent
|
||||
sys.path.insert(0, str(ROOT))
|
||||
|
||||
from mcp_server import mcp
|
||||
|
||||
|
||||
async def main():
|
||||
catalog = {
|
||||
"instructions": mcp.instructions,
|
||||
"tools": [tool.model_dump(exclude_none=True) for tool in await mcp.list_tools()],
|
||||
}
|
||||
(ROOT / "mcp_server" / "catalog.json").write_text(
|
||||
json.dumps(catalog, ensure_ascii=False, indent=2) + "\n", encoding="utf-8"
|
||||
)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
asyncio.run(main())
|
||||
@@ -172,6 +172,9 @@ def _updated_entry(config: dict, template: dict, root: Path, names: tuple[str, .
|
||||
if not isinstance(environment, dict):
|
||||
raise ValueError("The existing Artemis MCP environment is not an object")
|
||||
updated["env"] = {**environment, **template["env"]}
|
||||
# Earlier releases made Artemis mandatory for every Codex session. Migrate
|
||||
# that setting while preserving enabled=false and all tool approval policies.
|
||||
updated["required"] = False
|
||||
if "enabled_tools" in template or "enabled_tools" in config:
|
||||
updated["enabled_tools"] = list(names)
|
||||
# Per-tool approval/enablement policies belong to the user. Leave `tools`
|
||||
|
||||
Reference in new issue
Block a user