foundry-mcp 0.8.22__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of foundry-mcp might be problematic. Click here for more details.
- foundry_mcp/__init__.py +13 -0
- foundry_mcp/cli/__init__.py +67 -0
- foundry_mcp/cli/__main__.py +9 -0
- foundry_mcp/cli/agent.py +96 -0
- foundry_mcp/cli/commands/__init__.py +37 -0
- foundry_mcp/cli/commands/cache.py +137 -0
- foundry_mcp/cli/commands/dashboard.py +148 -0
- foundry_mcp/cli/commands/dev.py +446 -0
- foundry_mcp/cli/commands/journal.py +377 -0
- foundry_mcp/cli/commands/lifecycle.py +274 -0
- foundry_mcp/cli/commands/modify.py +824 -0
- foundry_mcp/cli/commands/plan.py +640 -0
- foundry_mcp/cli/commands/pr.py +393 -0
- foundry_mcp/cli/commands/review.py +667 -0
- foundry_mcp/cli/commands/session.py +472 -0
- foundry_mcp/cli/commands/specs.py +686 -0
- foundry_mcp/cli/commands/tasks.py +807 -0
- foundry_mcp/cli/commands/testing.py +676 -0
- foundry_mcp/cli/commands/validate.py +982 -0
- foundry_mcp/cli/config.py +98 -0
- foundry_mcp/cli/context.py +298 -0
- foundry_mcp/cli/logging.py +212 -0
- foundry_mcp/cli/main.py +44 -0
- foundry_mcp/cli/output.py +122 -0
- foundry_mcp/cli/registry.py +110 -0
- foundry_mcp/cli/resilience.py +178 -0
- foundry_mcp/cli/transcript.py +217 -0
- foundry_mcp/config.py +1454 -0
- foundry_mcp/core/__init__.py +144 -0
- foundry_mcp/core/ai_consultation.py +1773 -0
- foundry_mcp/core/batch_operations.py +1202 -0
- foundry_mcp/core/cache.py +195 -0
- foundry_mcp/core/capabilities.py +446 -0
- foundry_mcp/core/concurrency.py +898 -0
- foundry_mcp/core/context.py +540 -0
- foundry_mcp/core/discovery.py +1603 -0
- foundry_mcp/core/error_collection.py +728 -0
- foundry_mcp/core/error_store.py +592 -0
- foundry_mcp/core/health.py +749 -0
- foundry_mcp/core/intake.py +933 -0
- foundry_mcp/core/journal.py +700 -0
- foundry_mcp/core/lifecycle.py +412 -0
- foundry_mcp/core/llm_config.py +1376 -0
- foundry_mcp/core/llm_patterns.py +510 -0
- foundry_mcp/core/llm_provider.py +1569 -0
- foundry_mcp/core/logging_config.py +374 -0
- foundry_mcp/core/metrics_persistence.py +584 -0
- foundry_mcp/core/metrics_registry.py +327 -0
- foundry_mcp/core/metrics_store.py +641 -0
- foundry_mcp/core/modifications.py +224 -0
- foundry_mcp/core/naming.py +146 -0
- foundry_mcp/core/observability.py +1216 -0
- foundry_mcp/core/otel.py +452 -0
- foundry_mcp/core/otel_stubs.py +264 -0
- foundry_mcp/core/pagination.py +255 -0
- foundry_mcp/core/progress.py +387 -0
- foundry_mcp/core/prometheus.py +564 -0
- foundry_mcp/core/prompts/__init__.py +464 -0
- foundry_mcp/core/prompts/fidelity_review.py +691 -0
- foundry_mcp/core/prompts/markdown_plan_review.py +515 -0
- foundry_mcp/core/prompts/plan_review.py +627 -0
- foundry_mcp/core/providers/__init__.py +237 -0
- foundry_mcp/core/providers/base.py +515 -0
- foundry_mcp/core/providers/claude.py +472 -0
- foundry_mcp/core/providers/codex.py +637 -0
- foundry_mcp/core/providers/cursor_agent.py +630 -0
- foundry_mcp/core/providers/detectors.py +515 -0
- foundry_mcp/core/providers/gemini.py +426 -0
- foundry_mcp/core/providers/opencode.py +718 -0
- foundry_mcp/core/providers/opencode_wrapper.js +308 -0
- foundry_mcp/core/providers/package-lock.json +24 -0
- foundry_mcp/core/providers/package.json +25 -0
- foundry_mcp/core/providers/registry.py +607 -0
- foundry_mcp/core/providers/test_provider.py +171 -0
- foundry_mcp/core/providers/validation.py +857 -0
- foundry_mcp/core/rate_limit.py +427 -0
- foundry_mcp/core/research/__init__.py +68 -0
- foundry_mcp/core/research/memory.py +528 -0
- foundry_mcp/core/research/models.py +1234 -0
- foundry_mcp/core/research/providers/__init__.py +40 -0
- foundry_mcp/core/research/providers/base.py +242 -0
- foundry_mcp/core/research/providers/google.py +507 -0
- foundry_mcp/core/research/providers/perplexity.py +442 -0
- foundry_mcp/core/research/providers/semantic_scholar.py +544 -0
- foundry_mcp/core/research/providers/tavily.py +383 -0
- foundry_mcp/core/research/workflows/__init__.py +25 -0
- foundry_mcp/core/research/workflows/base.py +298 -0
- foundry_mcp/core/research/workflows/chat.py +271 -0
- foundry_mcp/core/research/workflows/consensus.py +539 -0
- foundry_mcp/core/research/workflows/deep_research.py +4142 -0
- foundry_mcp/core/research/workflows/ideate.py +682 -0
- foundry_mcp/core/research/workflows/thinkdeep.py +405 -0
- foundry_mcp/core/resilience.py +600 -0
- foundry_mcp/core/responses.py +1624 -0
- foundry_mcp/core/review.py +366 -0
- foundry_mcp/core/security.py +438 -0
- foundry_mcp/core/spec.py +4119 -0
- foundry_mcp/core/task.py +2463 -0
- foundry_mcp/core/testing.py +839 -0
- foundry_mcp/core/validation.py +2357 -0
- foundry_mcp/dashboard/__init__.py +32 -0
- foundry_mcp/dashboard/app.py +119 -0
- foundry_mcp/dashboard/components/__init__.py +17 -0
- foundry_mcp/dashboard/components/cards.py +88 -0
- foundry_mcp/dashboard/components/charts.py +177 -0
- foundry_mcp/dashboard/components/filters.py +136 -0
- foundry_mcp/dashboard/components/tables.py +195 -0
- foundry_mcp/dashboard/data/__init__.py +11 -0
- foundry_mcp/dashboard/data/stores.py +433 -0
- foundry_mcp/dashboard/launcher.py +300 -0
- foundry_mcp/dashboard/views/__init__.py +12 -0
- foundry_mcp/dashboard/views/errors.py +217 -0
- foundry_mcp/dashboard/views/metrics.py +164 -0
- foundry_mcp/dashboard/views/overview.py +96 -0
- foundry_mcp/dashboard/views/providers.py +83 -0
- foundry_mcp/dashboard/views/sdd_workflow.py +255 -0
- foundry_mcp/dashboard/views/tool_usage.py +139 -0
- foundry_mcp/prompts/__init__.py +9 -0
- foundry_mcp/prompts/workflows.py +525 -0
- foundry_mcp/resources/__init__.py +9 -0
- foundry_mcp/resources/specs.py +591 -0
- foundry_mcp/schemas/__init__.py +38 -0
- foundry_mcp/schemas/intake-schema.json +89 -0
- foundry_mcp/schemas/sdd-spec-schema.json +414 -0
- foundry_mcp/server.py +150 -0
- foundry_mcp/tools/__init__.py +10 -0
- foundry_mcp/tools/unified/__init__.py +92 -0
- foundry_mcp/tools/unified/authoring.py +3620 -0
- foundry_mcp/tools/unified/context_helpers.py +98 -0
- foundry_mcp/tools/unified/documentation_helpers.py +268 -0
- foundry_mcp/tools/unified/environment.py +1341 -0
- foundry_mcp/tools/unified/error.py +479 -0
- foundry_mcp/tools/unified/health.py +225 -0
- foundry_mcp/tools/unified/journal.py +841 -0
- foundry_mcp/tools/unified/lifecycle.py +640 -0
- foundry_mcp/tools/unified/metrics.py +777 -0
- foundry_mcp/tools/unified/plan.py +876 -0
- foundry_mcp/tools/unified/pr.py +294 -0
- foundry_mcp/tools/unified/provider.py +589 -0
- foundry_mcp/tools/unified/research.py +1283 -0
- foundry_mcp/tools/unified/review.py +1042 -0
- foundry_mcp/tools/unified/review_helpers.py +314 -0
- foundry_mcp/tools/unified/router.py +102 -0
- foundry_mcp/tools/unified/server.py +565 -0
- foundry_mcp/tools/unified/spec.py +1283 -0
- foundry_mcp/tools/unified/task.py +3846 -0
- foundry_mcp/tools/unified/test.py +431 -0
- foundry_mcp/tools/unified/verification.py +520 -0
- foundry_mcp-0.8.22.dist-info/METADATA +344 -0
- foundry_mcp-0.8.22.dist-info/RECORD +153 -0
- foundry_mcp-0.8.22.dist-info/WHEEL +4 -0
- foundry_mcp-0.8.22.dist-info/entry_points.txt +3 -0
- foundry_mcp-0.8.22.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"""Unified action-based MCP tools."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import TYPE_CHECKING
|
|
6
|
+
|
|
7
|
+
from .authoring import register_unified_authoring_tool
|
|
8
|
+
from .error import register_unified_error_tool
|
|
9
|
+
from .health import register_unified_health_tool
|
|
10
|
+
from .journal import register_unified_journal_tool
|
|
11
|
+
from .metrics import register_unified_metrics_tool
|
|
12
|
+
from .plan import register_unified_plan_tool
|
|
13
|
+
from .pr import register_unified_pr_tool
|
|
14
|
+
from .provider import register_unified_provider_tool
|
|
15
|
+
from .environment import register_unified_environment_tool
|
|
16
|
+
from .lifecycle import register_unified_lifecycle_tool
|
|
17
|
+
from .verification import register_unified_verification_tool
|
|
18
|
+
from .review import register_unified_review_tool
|
|
19
|
+
from .spec import register_unified_spec_tool
|
|
20
|
+
from .server import register_unified_server_tool
|
|
21
|
+
from .test import register_unified_test_tool
|
|
22
|
+
from .research import register_unified_research_tool
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
if TYPE_CHECKING: # pragma: no cover - import-time typing only
|
|
26
|
+
from mcp.server.fastmcp import FastMCP
|
|
27
|
+
from foundry_mcp.config import ServerConfig
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
def register_unified_tools(mcp: "FastMCP", config: "ServerConfig") -> None:
|
|
31
|
+
"""Register all unified tool routers."""
|
|
32
|
+
disabled = set(config.disabled_tools)
|
|
33
|
+
|
|
34
|
+
if "health" not in disabled:
|
|
35
|
+
register_unified_health_tool(mcp, config)
|
|
36
|
+
if "plan" not in disabled:
|
|
37
|
+
register_unified_plan_tool(mcp, config)
|
|
38
|
+
if "pr" not in disabled:
|
|
39
|
+
register_unified_pr_tool(mcp, config)
|
|
40
|
+
if "error" not in disabled:
|
|
41
|
+
register_unified_error_tool(mcp, config)
|
|
42
|
+
if "metrics" not in disabled:
|
|
43
|
+
register_unified_metrics_tool(mcp, config)
|
|
44
|
+
if "journal" not in disabled:
|
|
45
|
+
register_unified_journal_tool(mcp, config)
|
|
46
|
+
if "authoring" not in disabled:
|
|
47
|
+
register_unified_authoring_tool(mcp, config)
|
|
48
|
+
if "review" not in disabled:
|
|
49
|
+
register_unified_review_tool(mcp, config)
|
|
50
|
+
if "spec" not in disabled:
|
|
51
|
+
register_unified_spec_tool(mcp, config)
|
|
52
|
+
|
|
53
|
+
from importlib import import_module
|
|
54
|
+
|
|
55
|
+
if "task" not in disabled:
|
|
56
|
+
_task_router = import_module("foundry_mcp.tools.unified.task")
|
|
57
|
+
_task_router.register_unified_task_tool(mcp, config)
|
|
58
|
+
if "provider" not in disabled:
|
|
59
|
+
register_unified_provider_tool(mcp, config)
|
|
60
|
+
if "environment" not in disabled:
|
|
61
|
+
register_unified_environment_tool(mcp, config)
|
|
62
|
+
if "lifecycle" not in disabled:
|
|
63
|
+
register_unified_lifecycle_tool(mcp, config)
|
|
64
|
+
if "verification" not in disabled:
|
|
65
|
+
register_unified_verification_tool(mcp, config)
|
|
66
|
+
if "server" not in disabled:
|
|
67
|
+
register_unified_server_tool(mcp, config)
|
|
68
|
+
if "test" not in disabled:
|
|
69
|
+
register_unified_test_tool(mcp, config)
|
|
70
|
+
if "research" not in disabled:
|
|
71
|
+
register_unified_research_tool(mcp, config)
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
__all__ = [
|
|
75
|
+
"register_unified_tools",
|
|
76
|
+
"register_unified_health_tool",
|
|
77
|
+
"register_unified_plan_tool",
|
|
78
|
+
"register_unified_pr_tool",
|
|
79
|
+
"register_unified_error_tool",
|
|
80
|
+
"register_unified_metrics_tool",
|
|
81
|
+
"register_unified_journal_tool",
|
|
82
|
+
"register_unified_authoring_tool",
|
|
83
|
+
"register_unified_review_tool",
|
|
84
|
+
"register_unified_spec_tool",
|
|
85
|
+
"register_unified_provider_tool",
|
|
86
|
+
"register_unified_environment_tool",
|
|
87
|
+
"register_unified_lifecycle_tool",
|
|
88
|
+
"register_unified_verification_tool",
|
|
89
|
+
"register_unified_server_tool",
|
|
90
|
+
"register_unified_test_tool",
|
|
91
|
+
"register_unified_research_tool",
|
|
92
|
+
]
|