---
title: "GitHub MCP server for AI agents - actionlake"
description: "Give Claude 602 GitHub actions through one MCP server: repositories, actions, issues. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/github
updated: 2026-10-11
---

Connectors · Developer & infrastructure

# GitHub MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to GitHub and the rest of your systems. It gives your agent 602 GitHub actions (321 reads, 177 writes and 104 that wait for a confirmation) and holds the GitHub credential itself, so the agent never does. It paces GitHub's limits and records every call.

[Connect GitHub free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

`claude mcp add --transport http actionlake https://connect.actionlake.com/mcp`

the first call

```
do {
  action: "github.users.list",
  intent: "check which GitHub account is connected"
}
# List users · read · 1 upstream call
```

- 602 actions in one signed file
- 321 read look, never change
- 177 write create and update
- 104 wait for a yes destructive, confirmed first

Set up

## Connect GitHub in three steps.

1. 01
   ### Add actionlake to Claude.
   Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
   `https://connect.actionlake.com/mcp`
2. 02
   ### Connect GitHub.
   Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.
   - `token` GitHub personal access token
   ```
   account { op: "connections.requirements", service: "github" }
   # free: exactly what to paste, and what is found for you
   ```
3. 03
   ### Make the first call. Check before a write.
   Ask in plain words; Claude picks the action. Before anything changes, `check` validates the call and prices it, for free.
   ```
   do    { action: "github.users.list" }
   # list users · read · 1 upstream call
   check { action: "github.teams.create", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

GitHub at a glance

**Sign-in**

Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.

**You provide**

`token`

**Limits we pace to**

5,000 calls an hour, per connection

**API covered**

GitHub API 2022-11-28`api.github.com`

**Built from**

GitHub's documentation, read 15 September 2026[OpenAPI spec (GitHub)](https://raw.githubusercontent.com/github/rest-api-description/main/descriptions/api.github.com/api.github.com.json)

**Service file**

Version 2.0.0, signed (Ed25519)

**Cached reads**

305 of 321 reads, for up to an hour; a write clears what it affects

**Ready-made plans**

10 in the store

**Shared entities**

6, so ask can line GitHub up with your other systems

**Data**

Processed and stored in Sydney, Australia. No US region yet

Capabilities

## What an AI agent can do in GitHub.

602 actions in 16 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

- **321** read look, never change
- **177** write create and update
- **104** destructive wait for a confirmation

1. ### Repositories
   141
   71 read · 46 write · 24 destructive
   List organization repositories · List release assets · List repository teams · List repositories for the authenticated user
2. ### Actions
   79
   42 read · 18 write · 19 destructive
   List selected repositories for an organization secret · List selected repositories for an organization variable · List artifacts for a repository · List workflow run artifacts
3. ### Issues
   58
   27 read · 20 write · 11 destructive
   List repository issues · List issue comments for a repository · Create an issue · List issues assigned to the authenticated user
4. ### Organisations
   50
   26 read · 15 write · 9 destructive
   List organizations · List organizations for the authenticated user · List organizations for a user · List organization invitation teams
5. ### Users
   47
   28 read · 9 write · 10 destructive
   List users · Get a user using their ID · Get a user · Get contextual information for a user
6. ### Activity
   34
   24 read · 6 write · 4 destructive
   List notifications for the authenticated user · List repository notifications for the authenticated user · Get feeds · List events for the authenticated user
7. ### Pull requests
   34
   15 read · 16 write · 3 destructive
   List pull requests · Create a pull request stack · Create a pull request · Create a review for a pull request
8. ### Teams
   32
   17 read · 8 write · 7 destructive
   List teams · List child teams · List child teams (Legacy) · List teams for the authenticated user

**8 more areas · 127 actions**

- Packages **27**
- Projects **26**
- Gists **20**
- Reactions **15**
- Git **13**
- Checks **12**
- Meta **7**
- Search **7**

GitHub's own MCP server

## GitHub's MCP server, or actionlake?

GitHub runs a remote MCP server at api.githubcopilot.com/mcp, signed in with OAuth or a personal access token, and publishes the same server to run locally.

Use GitHub's server when one person wants to work in GitHub from their own AI client. Use actionlake when you also want GitHub behind the same endpoint as your other systems: a key per agent with allowed actions and a spending cap, a named person's approval before destructive actions, a sealed record of every call, and one ask across GitHub and another system.

Source: [GitHub's documentation](https://github.com/github/github-mcp-server), checked 22 October 2026.

Top actions

## The GitHub API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 259 of GitHub's 264 action names are shared with at least one other connector, so an agent learns them once.

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `github.users.list` List users | List users | read | `identity.user.list` 474 connectors |
| `github.orgs.list` List organizations | List organizations | read | `identity.group.list` 262 connectors |
| `github.repos.list_for_org` List organization repositories | List organization repositories | read | `devops.repository.list` 28 connectors |
| `github.repos.list_release_assets` List release assets | List release assets | read | `devops.artifact.list` 17 connectors |
| `github.teams.list` List teams | List teams | read | `identity.group.list` 262 connectors |
| `github.teams.create` Create a team | Create a team | write | `identity.group.create` 205 connectors |
| `github.issues.list_for_repo` List repository issues | List repository issues | read | `work.task.list` 122 connectors |
| `github.users.get_by_id` Get a user using their ID | Get a user using their ID | read | `identity.user.get` 399 connectors |
| `github.repos.list_forks` List forks | List forks | read | `devops.repository.list` 28 connectors |
| `github.users.update_authenticated` Update the authenticated user | Update the authenticated user | write | `identity.user.update` 280 connectors |
| `github.orgs.delete` Delete an organization | Delete an organization | destructive | `identity.group.delete` 181 connectors |
| `github.issues.create` Create an issue | Create an issue | write | `work.task.create` 127 connectors |

Try it

## Prompts to paste into Claude.

Each one names the GitHub actions it will call, so you know what it reads and what it changes before you send it.

1. Read read
   Which GitHub tasks are overdue, and who owns each one?
   calls `github.issues.list_for_repo`
2. Plan write
   Audit protection settings on a branch in GitHub.
   calls `github.repos.get_branch` `github.repos.get_pull_request_review_protection` `github.repos.get_all_status_check_contexts` `github.repos.get_teams_with_access_to_protected_branch` `github.repos.set_status_check_contexts` +1 more
3. Plan write
   Create a repository from a template and set it up in GitHub. Ask me before anything is sent or changed.
   calls `github.repos.create_using_template` `github.repos.get_readme` `github.repos.create_or_update_file_contents` `github.repos.create_autolink` `github.issues.create_milestone` +1 more
4. Write write
   Create a team in GitHub. Show me exactly what you will send before you save it.
   calls `github.teams.create`

The plan store

## Ready-made plans for GitHub.

10 plans in the store. Install one and your agent runs it by name; the reply says which connections are still missing. A schedule can run a plan on a timetable. There are no triggers or webhooks, by design.

1. ### Collect a weekly health snapshot for a repository
   Use it when Someone wants a weekly read-only health snapshot of a single repository.
   **Effect**
   read
   **Steps**
   6
   **Needs**
   owner and repo
   **Install**
   `github-weekly-repo-health-report`
2. ### Triage stale organisation issues and label them
   Use it when An agent needs to find and label issues in an organisation that have gone quiet.
   **Effect**
   write
   **Steps**
   3 · loops
   **Needs**
   org, owner, repo, stale days and triage label
   **Install**
   `github-triage-stale-org-issues`
3. ### Read and clear repository notifications
   Use it when A noisy repository notification inbox needs reading and clearing down.
   **Effect**
   write
   **Steps**
   5 · loops
   **Needs**
   owner, repo and since days
   **Install**
   `github-clear-notification-inbox`
4. ### Rotate an organisation Actions secret
   Use it when An organisation Actions secret needs a new value pushed with an approval trail.
   A person decides Overwrite organisation secret _secret name_ in _org_ with a new encrypted value. Running workflows will pick it up immediately.
   **Effect**
   write
   **Steps**
   5
   **Needs**
   encrypted value, key id, org, secret name and visibility
   **Install**
   `github-rotate-org-actions-secret`
5. ### Audit protection settings on a branch
   Use it when Someone wants to see how a protected branch is configured and align its required checks.
   **Effect**
   write
   **Steps**
   6
   **Needs**
   branch, contexts, owner, repo and sha
   **Install**
   `github-audit-branch-protection`
6. ### Publish a draft release and announce it
   Use it when A draft GitHub release is ready and someone wants it published with a sign-off.
   A person decides Publish release _tag name_ of _owner_/_repo_ to the public and mark it latest.
   **Effect**
   write
   **Steps**
   6
   **Needs**
   owner, release id, repo and sha
   **Install**
   `github-publish-release-notes`
7. ### Create a repository from a template and set it up
   Use it when A new project repository must be stood up from a template with its initial scaffolding.
   A person decides Create repository _org_/_name_ from template _template owner_/_template repo_.
   **Effect**
   write
   **Steps**
   7
   **Needs**
   name, org, template owner, template repo and tracker url
   **Install**
   `github-bootstrap-repo-from-template`
8. ### Approve and merge a pull request once checks are green
   Use it when A pull request is ready and someone wants it reviewed and merged with a sign-off.
   A person decides Approve and merge _owner_/_repo_ pull request #_pull number_ using _merge method_.
   **Effect**
   write
   **Steps**
   7
   **Needs**
   head ref, merge method, owner, pull number and repo
   **Install**
   `github-review-and-merge-pull-request`
9. ### Offboard a member from an organisation
   Use it when Someone has left and their organisation access must be revoked with a sign-off.
   A person decides Remove _username_ (_role_) from the _org_ organisation. This revokes all their access.
   **Effect**
   destructive
   **Steps**
   5
   **Needs**
   org and username
   **Install**
   `github-offboard-org-member`
10. ### Re-run a failed workflow and wait for the result
    Use it when A CI run failed and someone wants it retried once a human agrees.
    A person decides Re-run workflow _name_ on _owner_/_repo_ after failure in job _name_.
    **Effect**
    destructive
    **Steps**
    6
    **Needs**
    job id, owner, repo and run id
    **Install**
    `github-retry-failed-workflow-run`

install a plan

```
account { op: "plans.install", slug: "github-weekly-repo-health-report" }
# then ask for it by name; a schedule can run it on a timetable
```

Governance for GitHub

## Destructive actions wait for a yes.

104 GitHub actions are destructive. The first 10:

- Delete an organization `github.orgs.delete`
- Delete a team `github.teams.delete_in_org`
- Delete a team (Legacy) `github.teams.delete_legacy`
- Delete a repository `github.repos.delete`
- Delete an artifact `github.actions.delete_artifact`
- Delete a release asset `github.repos.delete_release_asset`
- Unlock an issue `github.issues.unlock`
- Delete project item for organization `github.projects.delete_item_for_org`
- Delete project item for user `github.projects.delete_item_for_user`
- Transfer a repository `github.repos.transfer`

A destructive action runs only with `confirm: true`. Under the `human` policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

do github.orgs.delete confirm_policy: **human**

Delete an organization?

**intent:** the user asked me to delete an organization

run suspended · waiting for a named person · key _github-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "github-agent",
  allowed_actions: ["github.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "github.orgs.delete", approver: "lead@example.com" },
    { match: "github.teams.delete_in_org", approver: "lead@example.com" },
    { match: "github.teams.delete_legacy", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to GitHub only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

## What GitHub costs on actionlake.

Every GitHub action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call GitHub refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

- 1 upstream call per action all 602 GitHub actions
- 602 actions page each page of a long list is one call
- 305 reads can be cached a cache hit costs nothing
- 100,000 calls a month, free paid plans from US$49 a month for 250,000

[See pricing](https://actionlake.com/pricing)

Action index

## Every GitHub action.

602 actions by area: the id your agent calls, what it does, and its effect.

**Repositories 141**

- `github.repos.list_for_authenticated_user` List repositories for the authenticated user read
- `github.repos.list_for_org` List organization repositories read
- `github.repos.list_release_assets` List release assets read
- `github.repos.list_teams` List repository teams read
- `github.repos.accept_invitation_for_authenticated_user` Accept a repository invitation write
- `github.repos.add_app_access_restrictions` Add app access restrictions write
- and 135 more in this area

**Actions 79**

- `github.actions.list_artifacts_for_repo` List artifacts for a repository read
- `github.actions.list_selected_repos_for_org_secret` List selected repositories for an organization secret read
- `github.actions.list_selected_repos_for_org_variable` List selected repositories for an organization variable read
- `github.actions.list_workflow_run_artifacts` List workflow run artifacts read
- `github.actions.add_selected_repo_to_org_secret` Add selected repository to an organization secret write
- `github.actions.add_selected_repo_to_org_variable` Add selected repository to an organization variable write
- and 73 more in this area

**Issues 58**

- `github.issues.create` Create an issue write
- `github.issues.list` List issues assigned to the authenticated user read
- `github.issues.list_comments_for_repo` List issue comments for a repository read
- `github.issues.list_for_repo` List repository issues read
- `github.issues.add_assignees` Add assignees to an issue write
- `github.issues.add_blocked_by_dependency` Add a dependency an issue is blocked by write
- and 52 more in this area

**Organisations 50**

- `github.orgs.list` List organizations read
- `github.orgs.list_for_authenticated_user` List organizations for the authenticated user read
- `github.orgs.list_for_user` List organizations for a user read
- `github.orgs.list_invitation_teams` List organization invitation teams read
- `github.orgs.block_user` Block a user from an organization write
- `github.orgs.cancel_invitation` Cancel an organization invitation destructive
- and 44 more in this area

**Users 47**

- `github.users.get_by_id` Get a user using their ID read
- `github.users.get_by_username` Get a user read
- `github.users.get_context_for_user` Get contextual information for a user read
- `github.users.list` List users read
- `github.users.add_email_for_authenticated_user` Add an email address for the authenticated user write
- `github.users.add_social_account_for_authenticated_user` Add social accounts for the authenticated user write
- and 41 more in this area

**Activity 34**

- `github.activity.get_feeds` Get feeds read
- `github.activity.list_events_for_authenticated_user` List events for the authenticated user read
- `github.activity.list_notifications_for_authenticated_user` List notifications for the authenticated user read
- `github.activity.list_repo_notifications_for_authenticated_user` List repository notifications for the authenticated user read
- `github.activity.check_repo_is_starred_by_authenticated_user` Check if a repository is starred by the authenticated user read
- `github.activity.delete_repo_subscription` Delete a repository subscription destructive
- and 28 more in this area

**Pull requests 34**

- `github.pull_request_stacks.create` Create a pull request stack write
- `github.pulls.create` Create a pull request write
- `github.pulls.create_review` Create a review for a pull request write
- `github.pulls.list` List pull requests read
- `github.pull_request_stacks.add` Add pull requests to a pull request stack write
- `github.pull_request_stacks.get` Get a pull request stack read
- and 28 more in this area

**Teams 32**

- `github.teams.list` List teams read
- `github.teams.list_child_in_org` List child teams read
- `github.teams.list_child_legacy` List child teams (Legacy) read
- `github.teams.list_for_authenticated_user` List teams for the authenticated user read
- `github.teams.add_member_legacy` Add team member (Legacy) write
- `github.teams.add_or_update_membership_for_user_in_org` Add or update team membership for a user write
- and 26 more in this area

**Packages 27**

- `github.packages.list_docker_migration_conflicting_packages_for_authenticated_user` Get list of conflicting packages during Docker migration for authenticated-user read
- `github.packages.list_docker_migration_conflicting_packages_for_organization` Get list of conflicting packages during Docker migration for organization read
- `github.packages.list_docker_migration_conflicting_packages_for_user` Get list of conflicting packages during Docker migration for user read
- `github.packages.list_packages_for_authenticated_user` List packages for the authenticated user's namespace read
- `github.packages.delete_package_for_authenticated_user` Delete a package for the authenticated user destructive
- `github.packages.delete_package_for_org` Delete a package for an organization destructive
- and 21 more in this area

**Projects 26**

- `github.projects.add_item_for_org` Add item to organization owned project write
- `github.projects.add_item_for_user` Add item to user owned project write
- `github.projects.create_draft_item_for_authenticated_user` Create draft item for user owned project write
- `github.projects.create_draft_item_for_org` Create draft item for organization owned project write
- `github.projects.add_field_for_org` Add a field to an organization-owned project. write
- `github.projects.add_field_for_user` Add field to user owned project write
- and 20 more in this area

**Gists 20**

- `github.gists.create` Create a gist write
- `github.gists.fork` Fork a gist write
- `github.gists.list` List gists for the authenticated user read
- `github.gists.list_commits` List gist commits read
- `github.gists.check_is_starred` Check if a gist is starred read
- `github.gists.create_comment` Create a gist comment write
- and 14 more in this area

**Reactions 15**

- `github.reactions.create_for_commit_comment` Create reaction for a commit comment write
- `github.reactions.list_for_commit_comment` List reactions for a commit comment read
- `github.reactions.list_for_pull_request_review_comment` List reactions for a pull request review comment read
- `github.reactions.list_for_release` List reactions for a release read
- `github.reactions.create_for_issue` Create reaction for an issue write
- `github.reactions.create_for_issue_comment` Create reaction for an issue comment write
- and 9 more in this area

**Git 13**

- `github.git.create_ref` Create a reference write
- `github.git.create_tag` Create a tag object write
- `github.git.get_tree` Get a tree read
- `github.git.list_matching_refs` List matching references read
- `github.git.create_blob` Create a blob write
- `github.git.create_commit` Create a commit write
- and 7 more in this area

**Checks 12**

- `github.checks.list_annotations` List check run annotations read
- `github.checks.list_for_ref` List check runs for a Git reference read
- `github.checks.list_for_suite` List check runs in a check suite read
- `github.checks.list_suites_for_ref` List check suites for a Git reference read
- `github.checks.create` Create a check run write
- `github.checks.create_suite` Create a check suite write
- and 6 more in this area

**Meta 7**

- `github.licenses.get_for_repo` Get the license for a repository read
- `github.meta.get` Get GitHub meta information read
- `github.meta.get_all_versions` Get all API versions read
- `github.meta.get_octocat` Get Octocat read
- `github.meta.get_zen` Get the Zen of GitHub read
- `github.meta.root` GitHub API Root read
- and 1 more in this area

**Search 7**

- `github.search.issues_and_pull_requests` Search issues and pull requests read
- `github.search.repos` Search repositories read
- `github.search.topics` Search topics read
- `github.search.users` Search users read
- `github.search.code` Search code read
- `github.search.commits` Search commits read
- and 1 more in this area

This index shows a sample of each area. All 602 actions, with their inputs and prices, are in the [catalogue](https://actionlake.com/console/catalogue), which a free sandbox key can search.

Questions

## The GitHub MCP server, answered.

**Is there a GitHub MCP server for Claude?**

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 602 GitHub actions across repositories, actions, issues and organisations, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by GitHub.

**Does GitHub have its own MCP server?**

GitHub runs a remote MCP server at api.githubcopilot.com/mcp, signed in with OAuth or a personal access token, and publishes the same server to run locally. (GitHub's documentation, checked 22 October 2026.) Use GitHub's server when one person wants to work in GitHub from their own AI client. Use actionlake when you also want GitHub behind the same endpoint as your other systems: a key per agent with allowed actions and a spending cap, a named person's approval before destructive actions, a sealed record of every call, and one ask across GitHub and another system.

**What do I need to connect GitHub?**

GitHub personal access token. The free call account { op: "connections.requirements", service: "github" } lists exactly what to paste.

**Can an AI agent delete or change things in GitHub?**

Only if its key allows it, and only with an explicit confirmation. 104 GitHub actions are destructive, including delete an organization, delete a team and delete a team (Legacy). Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

**Will an AI agent use up my GitHub API limit?**

actionlake paces every call to the limits in the GitHub service file: 5,000 calls an hour per connection. Repeated reads are answered from cache (305 GitHub actions can be), which never reaches GitHub.

**What does a GitHub action cost?**

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (602 GitHub actions page). Cache hits, searches, dry runs and calls GitHub refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

**Which GitHub API does it cover?**

The GitHub API 2022-11-28 at api.github.com. It is built from GitHub's documentation as read on 15 September 2026. 602 actions in 16 areas, each one in the signed service file (version 2.0.0).

**Does actionlake keep my GitHub data, and where?**

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to an hour, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your GitHub credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

**Which AI clients can use it?**

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

## More connectors like GitHub

Shares the most action names with

- [GitLab 189](https://actionlake.com/connectors/gitlab)
- [Azure DevOps Services 144](https://actionlake.com/connectors/azure-devops-services)
- [Bitbucket Cloud 103](https://actionlake.com/connectors/bitbucket-cloud)
- [Vercel 61](https://actionlake.com/connectors/vercel)
- [Postman 50](https://actionlake.com/connectors/postman)
- [Apple App Store Connect 42](https://actionlake.com/connectors/apple-app-store-connect)

Joins with, on shared entities

- [Jira 4](https://actionlake.com/connectors/jira)
- [Gitea 4](https://actionlake.com/connectors/gitea)
- [Forgejo 4](https://actionlake.com/connectors/forgejo)
- [JetBrains YouTrack 4](https://actionlake.com/connectors/jetbrains-youtrack)
- [Asana 4](https://actionlake.com/connectors/asana)
- [Wrike 4](https://actionlake.com/connectors/wrike)

Browse

- [All Developer & infrastructure connectors](https://actionlake.com/connectors/category/developer-and-infrastructure)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by GitHub; the name is the vendor's own. Counts are from the GitHub service file, version 2.0.0.

## Give your agent GitHub today.

[Connect GitHub free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.

---

Source: https://actionlake.com/connectors/github
More: https://actionlake.com/llms.txt
