Skip to main content
Glama
ompatelz

RepoPilot MCP

by ompatelz

RepoPilot MCP

RepoPilot MCP は、小さな Python Model Context Protocol サーバーのブートストラップです。将来の GitHub リポジトリツールのための本番環境向けの出発点として設定されていますが、まだ GitHub API 機能は実装されていません。

含まれるもの

  • src/ パッケージレイアウト

  • uv 互換の依存関係を持つ pyproject.toml

  • 型付き環境設定

  • モック化されたユニットテストを備えた分離された GitHub REST API クライアント

  • プロセスロギング設定

  • ディスカバリチェック用の無害な health MCP ツール

  • 設定と MCP ブートストラップ動作のための pytest カバレッジ

  • .env.example、.gitignore、GitHub Actions CI、MIT ライセンス

Related MCP server: MCP Server - Placeholder Implementation

要件

  • Python 3.11+

  • uv

セットアップ

uv sync --dev

ローカル設定では、.env.example を .env にコピーし、値をローカルで編集してください。.env や実際の認証情報をコミットしないでください。GITHUB_TOKEN は内部の GitHub REST API クライアントで使用されますが、MCP ツールではまだ公開されていません。

開発

テストを実行:

uv run pytest

ローカルチェックスイートを実行:

.\scripts\check.ps1

MCP Inspector を起動:

.\scripts\dev-inspector.ps1

stdio 経由でサーバーを直接実行:

uv run repopilot-mcp

プロジェクト構造

src/repopilot/
  __init__.py
  config.py
  github_client.py
  server.py
tests/
  test_github_client.py
  test_server.py

現在のスコープ

実装済み:

  • health MCP ツール

  • 環境変数から読み込まれる設定モデル

  • 再利用可能な GitHub REST API クライアント層

  • ロギングブートストラップ

未実装:

  • リポジトリ、ファイル、イシュー、プルリクエストのツール

  • 書き込み可能な GitHub 操作

Available Tools

1 tool
healthA

Return basic server health and safety posture.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It indicates a read-only action ('Return') but says nothing about authentication, rate limits, or what 'safety posture' concretely includes. The disclosure is minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. Every word contributes to conveying the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool is a simple health check with no parameters and an output schema, the description provides adequate context. The phrase 'safety posture' could be more precise, but the overall scope is clear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and schema coverage is 100% (empty). No parameter explanation is needed; the description's simplicity is appropriate for a parameterless interface.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the action ('Return') and the resource ('basic server health and safety posture'). It is specific enough to understand the tool's purpose, though the term 'safety posture' is a bit vague. No sibling tools exist, so differentiation is not applicable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not explicitly state when to use this tool or when to avoid it. The health-check nature implies usage for server status and safety monitoring, but no alternative tools or exclusions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev0.1.0
    • First observedhealth

TDQS

B3.4/5.0

Scored across 1 tool

Disambiguation5/5

Only one tool exists, so there is no possibility of ambiguity or overlap between tools.

Naming Consistency5/5

With a single tool named 'health', the naming is unambiguous and internally consistent.

Tool Count1/5

The server provides only one trivial health-check tool, which is an extreme under-provisioning for a server presumably intended for repository management.

Completeness1/5

The sole tool only reports health status, leaving no functionality for actual repository operations, making the surface severely incomplete for the stated domain.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A production-ready Python template for building MCP servers with enterprise features including registry integration, configuration management, structured logging, and extensible patterns for tools, resources, and prompts.
    MIT
  • A
    license
    C
    quality
    D
    maintenance
    A production-ready MCP server for GitHub operations, providing tools for repository management, issues, pull requests, and more via both MCP stdio and REST API.
    27
    MIT