Skip to content

feat(mcp): add McpProvider base class#89

Merged
bedus-creation merged 5 commits into
mainfrom
feat/mcp-provider
Jun 4, 2026
Merged

feat(mcp): add McpProvider base class#89
bedus-creation merged 5 commits into
mainfrom
feat/mcp-provider

Conversation

@bedus-creation

Copy link
Copy Markdown
Contributor

Summary

Adds McpProvider — a base provider class for mounting an MCP server on the FastAPI application using the standard fastapi-startkit provider pattern.

Usage

Subclass McpProvider, override server(), and register it alongside FastAPIProvider:

from fastapi_startkit.mcp import McpProvider

class AppMcpProvider(McpProvider):
    def server(self):
        return DevToolsServer()

app = Application(providers=[FastAPIProvider, AppMcpProvider])

Override prefix (default "/mcp") to mount at a different path.

What's included

  • fastapi_startkit/mcp/providers/mcp_provider.pyMcpProvider base class
  • fastapi_startkit/mcp/__init__.py — exports McpProvider
  • fastapi_startkit/tests/mcp/test_mcp_provider.py — 11 tests

Closes task #39

🤖 Generated with Claude Code

bedus-creation and others added 3 commits June 4, 2026 16:04
- Fix result.py broken import: `from packages.process.exception` → `from .exception`
- Fix fake.py missing ProcessResult import (NameError at runtime)
- Fix process.py: wrap subprocess.TimeoutExpired into ProcessTimedOutException in run()

feat(process): add comprehensive test suite for process module

95 tests covering ProcessResult, Process facade, PendingProcess fluent builder,
fake/assertion infrastructure, timeout handling, real subprocess execution,
pool/pipe, and exception cases.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ration

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds MCP_PROTOCOL_VERSION as an alias for PROTOCOL_VERSION so that
existing tests importing MCP_PROTOCOL_VERSION continue to work.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
bedus-creation and others added 2 commits June 4, 2026 16:09
…rver wiring

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@bedus-creation bedus-creation merged commit fa8166f into main Jun 4, 2026
3 checks passed
@bedus-creation bedus-creation deleted the feat/mcp-provider branch June 8, 2026 07:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant