Rename _meta requirements field to arcade_requirements (#616)

Also we are now excluding None in the model dump
This commit is contained in:
Eric Gustin 2025-10-14 19:01:05 -07:00 committed by GitHub
parent 3d2665d36c
commit 668d674995
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 7 additions and 5 deletions

View file

@ -69,7 +69,7 @@ check-toolkits: ## Run code quality tools for each toolkit that has a Makefile
done
.PHONY: test
test: ## Test the code with pytest
test: install ## Test the code with pytest
@echo "🚀 Testing libs: Running pytest"
@uv run pytest -W ignore -v libs/tests --cov=libs --cov-config=pyproject.toml --cov-report=xml

View file

@ -71,7 +71,7 @@ def create_mcp_tool(tool: MaterializedTool) -> MCPTool | None:
# Build meta with requirements if any exist
meta = None
if requirements.authorization or requirements.secrets or requirements.metadata:
meta = {"requirements": requirements.model_dump()}
meta = {"arcade_requirements": requirements.model_dump(exclude_none=True)}
# Instantiate MCPTool model to ensure shape correctness
return MCPTool(

View file

@ -40,7 +40,7 @@ class ToolManager(ComponentManager[Key, ManagedTool]):
requirements = tool.definition.requirements
meta = None
if requirements.authorization or requirements.secrets or requirements.metadata:
meta = {"requirements": requirements.model_dump()}
meta = {"arcade_requirements": requirements.model_dump(exclude_none=True)}
return MCPTool(
name=self._sanitize_name(tool.definition.fully_qualified_name),

View file

@ -4,7 +4,7 @@ build-backend = "hatchling.build"
[project]
name = "arcade-mcp-server"
version = "1.3.0"
version = "1.3.1"
description = "Model Context Protocol (MCP) server framework for Arcade.dev"
readme = "README.md"
authors = [{ name = "Arcade.dev" }]

View file

@ -239,12 +239,14 @@ def test_compute_login_url(inputs: dict, expected_output: str):
assert login_url == expected_output
def test_resolve_provider_api_key():
def test_resolve_provider_api_key(monkeypatch):
resolved_api_key = resolve_provider_api_key(Provider.OPENAI, "123")
assert resolved_api_key == "123"
resolved_api_key = resolve_provider_api_key("not-a-provider", None)
assert resolved_api_key is None
# Ensure OPENAI_API_KEY is not set in the environment for this test
monkeypatch.delenv("OPENAI_API_KEY", raising=False)
resolved_api_key = resolve_provider_api_key(Provider.OPENAI, None)
assert resolved_api_key is None