Claude Code GitHub ActionsでMCPサーバを設定する方法

Claude Code Actions のGitHub Actionsワークフローファイルを作成しただけのリポジトリで「@claudeこのプロジェクトで利用できるMCPサーバを教えて」の結果
このプロジェクトで利用できるMCPサーバについての情報です:
MCP(Model Control Protocol)サーバは、Claude Codeがカスタムツールやサービスと対話するための仕組みです。このGitHub Actionでは以下の方法でMCPサーバを設定・利用できます:
-
MCPサーバ設定方法:
- JSONファイル(
mcp_config
パラメータでパスを指定) - インラインJSON文字列(
mcp_config
パラメータで直接指定)
- JSONファイル(
-
MCPサーバ設定例:
{
"mcpServers": {
"server-name": {
"command": "node",
"args": ["./server.js"],
"env": {
"API_KEY": "your-api-key"
}
}
}
}
-
使用方法:
- GitHub Actionの設定で
mcp_config
パラメータを指定 -
allowed_tools
にmcp__server-name__custom_tool
のように指定してMCPサーバのツールを使用可能
- GitHub Actionの設定で
このアクションでは、enableAllProjectMcpServers
設定が常にtrue
に設定されており、プロジェクト内のすべてのMCPサーバが自動的に有効になります。

.mcp.jsonを追加して「@claudeこのプロジェクトで利用できるMCPサーバを教えて」の結果
{
"mcpServers": {
"awslabs-terraform-mcp-server": {
"type": "stdio",
"command": "uvx",
"args": [
"awslabs.terraform-mcp-server@latest"
],
"env": {}
},
"awslabs-aws-documentation-mcp-server": {
"type": "stdio",
"command": "uvx",
"args": [
"awslabs.aws-documentation-mcp-server@latest"
],
"env": {}
}
}
}
このプロジェクトで利用できるMCPサーバについて
このGitHub Actionでは、MCPサーバ(Model Control Protocol)は以下の方法で設定・利用できます:
MCPサーバ設定方法
-
設定方法:
- action.ymlの
mcp_config
パラメータを使用して設定 - JSONファイル(パスを指定)または直接JSONオブジェクト(文字列)を提供可能
- action.ymlの
-
設定例:
{
"mcpServers": {
"server-name": {
"command": "node",
"args": ["./server.js"],
"env": {
"API_KEY": "your-api-key"
}
}
}
}
-
特徴:
-
enableAllProjectMcpServers
が常にtrue
に設定される(setup-claude-code-settings.tsで自動設定) - プロジェクト内のすべてのMCPサーバが自動的に有効になる
-
-
使用方法:
-
allowed_tools
パラメータにmcp__server-name__custom_tool
形式で指定することでMCPサーバのツールを利用可能
-
このプロジェクトで特定のMCPサーバをカスタム構成するには、上記の設定方法に従ってmcp_configを指定する必要があります。デフォルトでは、プロジェクト内で定義されたすべてのMCPサーバが自動的に有効になります。
.mcp.configを追加すると、ローカルでClaude codeを起動した時は自動で認識してくれるが、Claude Code Actionsでは自動で認識されない

mcp_config: ".mcp.config"
の設定をGitHub Actionsワークフローファイルに追加して「@claudeこのプロジェクトで利用できるMCPサーバを教えて」の結果」
MCP サーバについての情報
- Gather context about MCP servers in this project
- Analyze MCP server implementation and configuration
- Provide detailed information about available MCP servers
このGitHub Actionでは、事前設定されたMCPサーバは含まれていません。ユーザーが自分のMCPサーバを設定するための基盤を提供しています。
MCPサーバの設定方法
-
設定方法:
-
mcp_config
パラメータを使用して設定 - JSONファイル(パスを指定)または直接JSONオブジェクト(文字列)を提供可能
-
-
設定例:
{
"mcpServers": {
"server-name": {
"command": "node",
"args": ["./server.js"],
"env": {
"API_KEY": "your-api-key"
}
}
}
}
-
特徴:
-
enableAllProjectMcpServers
が常にtrue
に設定されている - プロジェクト内で定義されたMCPサーバが自動的に有効になる
-
使用可能なMCPサーバ例
このアクションには以下のMCPサーバ例が含まれています:
-
GitHub MCP サーバ (examples/issue-triage.yml)
- Dockerイメージを使用:
ghcr.io/github/github-mcp-server:sha-7aced2b
- GitHubトークンが必要
- 以下のツールを提供:
mcp__github__get_issue
mcp__github__get_issue_comments
mcp__github__update_issue
mcp__github__search_issues
mcp__github__list_issues
- Dockerイメージを使用:
-
テスト用MCPサーバ (test/mcp-test/simple-mcp-server.ts)
- テスト目的のみ
-
test_tool
という単一のツールを提供
このリポジトリ自体には、ユーザーが直接使用できる事前設定されたMCPサーバはありません。MCPサーバを利用するには、ワークフロー内で明示的に設定する必要があります。
あれ?認識されていない?
GitHub Actions画面にて以下のメッセージが出ていた。
Run anthropics/claude-code-action@beta
Failed to parse additional MCP config: SyntaxError: JSON Parse error: Unexpected token '.'. Using base config only.
GitHub ActionsのログをGeminiにて分析した回答。
GitHub Actionsでは、ワークフローのYAMLファイルに書かれたmcp_config: .mcp.jsonが、実行環境に渡される前にYAMLパーサーによって処理されます。この際、引用符がないと、./から始まらないmcp.jsonは、ファイルパスではなく、単なる文字列mcp.jsonとして扱われます。この文字列がClaude Codeに渡されると、それが有効なJSONオブジェクトではないため、パースエラーが発生します。
mcp_config: "./.mcp.config"
に修正したが変わらず
ファイル指定はやめて、ファイルを読み込むステップを追加して警告は解消
- name: Read MCP config
id: mcp-config
run: echo "config=$(cat path/to/your/mcp-config.json)" >> $GITHUB_OUTPUT
- uses: anthropics/claude-code-action@beta
with:
use_bedrock: "true"
model: "apac.anthropic.claude-3-7-sonnet-20250219-v1:0"
mcp_config: ${{ steps.mcp-config.outputs.config }}

最終的なGitHub Actionsワークフローと「@claudeこのプロジェクトで利用できるMCPサーバを教えて」の結果
name: Claude Action
permissions:
contents: write
pull-requests: write
issues: write
id-token: write
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
issues:
types: [opened, assigned]
jobs:
claude-action:
if: |
(github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||
(github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||
(github.event_name == 'issues' && contains(github.event.issue.body, '@claude'))
runs-on: codebuild-claude-code-gha-runner-${{ github.run_id }}-${{ github.run_attempt }}
env:
AWS_REGION: ap-northeast-1
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Configure AWS Credentials (OIDC)
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ vars.AWS_BEDROCK_ROLE_TO_ASSUME }}
aws-region: ap-northeast-1
- name: Setup uv (includes uvx)
uses: astral-sh/setup-uv@v6
- name: Install Checkov for security scanning
run: |
echo "Installing Checkov for Terraform security scanning..."
pip install checkov
checkov --version
echo "✅ Checkov installation completed"
- name: Prepare MCP config
id: mcp-config
run: echo "config=$(jq -c . .mcp.json)" >> $GITHUB_OUTPUT
- name: Run Claude Code Action
uses: anthropics/claude-code-action@beta
with:
use_bedrock: "true"
model: "apac.anthropic.claude-3-7-sonnet-20250219-v1:0"
allowed_tools: |
Bash
mcp__awslabs-terraform-mcp-server__SearchAwsProviderDocs
mcp__awslabs-terraform-mcp-server__SearchAwsccProviderDocs
mcp__awslabs-terraform-mcp-server__SearchSpecificAwsIaModules
mcp__awslabs-terraform-mcp-server__RunCheckovScan
mcp__awslabs-aws-documentation-mcp-server__read_documentation
mcp__awslabs-aws-documentation-mcp-server__search_documentation
mcp__awslabs-aws-documentation-mcp-server__recommend
mcp_config: ${{ steps.mcp-config.outputs.config }}
github_token: ${{ secrets.GITHUB_TOKEN }}
このプロジェクトで利用できるMCPサーバ
- MCPサーバに関する情報を収集する
- 利用可能なMCPサーバを確認
- 日本語で詳細な回答を作成
現在このプロジェクトで利用できるMCPサーバは以下の2つです:
1. AWS ドキュメンテーションMCPサーバ (awslabs-aws-documentation-mcp-server)
このサーバは公式のAWSドキュメントにアクセスするためのツールを提供します:
- ドキュメントの読み取り
- コンテンツ検索
- 関連コンテンツの推奨
主な機能:
-
read_documentation
: 特定のドキュメントURLの内容を取得 -
search_documentation
: AWSドキュメント全体を検索 -
recommend
: 関連ドキュメントページを推奨
2. Terraform MCPサーバ (awslabs-terraform-mcp-server)
このサーバはTerraformを使用したAWSクラウドインフラストラクチャの作成と管理をサポートします:
リソース:
-
terraform_development_workflow
: Terraformの開発ワークフロー -
terraform_aws_best_practices
: AWS Terraformプロバイダのベストプラクティス -
terraform_aws_provider_resources_listing
: AWSプロバイダリソースの一覧 -
terraform_awscc_provider_resources_listing
: AWCCCプロバイダリソースの一覧
主な機能:
-
ExecuteTerraformCommand
: Terraformコマンドを実行 -
ExecuteTerragruntCommand
: Terragruntコマンドを実行 -
SearchAwsProviderDocs
: AWSプロバイダのドキュメントを検索 -
SearchAwsccProviderDocs
: AWCCCプロバイダのドキュメントを検索 -
SearchSpecificAwsIaModules
: 特定のAWS-IAモジュールを検索 -
RunCheckovScan
: セキュリティスキャンを実行 -
SearchUserProvidedModule
: ユーザー提供モジュールを検索
これらのMCPサーバを使用することで、AWSドキュメントの参照やTerraformを使ったインフラ構築に関連する機能をClaudeに提供できます。