GitMCP logo

GitMCP

CommunityPopular
idosal

Put an end to code hallucinations! GitMCP is a free, open-source, remote MCP server for any GitHub project

Publisheridosal
Repositorygit-mcp
LanguageTypeScript
Forks
708
Stars
8.1K
Available tools
5
Transport typestreamable-http
Categories
LicenseApache-2.0
Links
  • Connect tools to AI workflows

    GitMCP exposes MCP capabilities that can be used by compatible AI clients and agents.

  • 5 available tools

    Browse the callable actions below, including names and descriptions when provided by the server.

  • Ready-to-copy setup

    Use the installation snippets to configure this server in your preferred MCP client.

  • Open source signals

    8.1K stars and 708 forks from the linked repository.

GitMCP

GitMCP Twitter Follow Twitter Follow

🤔 What is GitMCP?

Stop vibe-hallucinating and start vibe-coding!

GitMCP is a free, open-source, remote Model Context Protocol (MCP) server that transforms any GitHub project (repositories or GitHub pages) into a documentation hub. It enables AI tools like Cursor to access up-to-date documentation and code, even if the LLM has never encountered them, thereby eliminating code hallucinations seamlessly.

GitMCP supports two flavors -

  • Specific Repository (gitmcp.io/{owner}/{repo} or {owner}.gitmcp.io/{repo}): Use these when you primarily work with a select number of libraries. This ensures your AI assistant always targets the correct project, enhancing security and relevance by preventing access to unintended repositories.
  • Generic Server (gitmcp.io/docs): Use this for maximum flexibility when you need to switch between different repositories frequently. The AI assistant will prompt you (or decide based on context) which repository to access for each request. Be mindful that this relies on correctly identifying the target repository each time.

With GitMCP:

  • AI assistants access the latest documentation and code directly from the source.
  • Get accurate API usage and reliable code examples.
  • Work effectively even with niche, new, or rapidly changing libraries.
  • Significantly reduced hallucinations and improved code correctness.

For example, this side-by-side comparison shows the result for the same one-shot prompt in Cursor when creating a three.js scene -

https://github.com/user-attachments/assets/fbf1b4a7-f9f0-4c0e-831c-4d64faae2c45

✨ Features

  • 😎 Latest Documentation on ANY GitHub Project: Grant your AI assistant seamless access to the GitHub project's documentation and code. The built-in smart search capabilities help find exactly what the AI needs without using too many tokens!
  • 🧠 No More Hallucinations: With GitMCP, your AI assistant can provide accurate and relevant answers to your questions.
  • ☁️ Zero Setup: GitMCP runs in the cloud. Simply add the chosen GitMCP URL as an MCP server in your IDE — no downloads, installations, signups, or changes are required.
  • 💬 Embedded Chat: Start quickly by chatting directly with the repository's documentation through our in-browser chat!
  • Open, Free, and Private: GitMCP is open-source and completely free to use. It doesn't collect personal information or store queries. You can even self-host it!

🚀 Getting Started

Using GitMCP is easy! Simply follow these steps:

Step 1: Choose the type of server you want

Choose one of these URL formats depending on what you want to connect to:

  • For GitHub repositories: gitmcp.io/{owner}/{repo}
  • For GitHub Pages sites: {owner}.gitmcp.io/{repo}
  • For a generic tool that supports any repository (dynamic): gitmcp.io/docs

Replace {owner} with the GitHub username or organization name, and {repo} with the repository name.

For your convenience, you can also use the conversion tool on the landing page to format the GitHub URL into an MCP URL!

Step 2: Connect your AI assistant

Select your AI assistant from the options below and follow the configuration instructions:

Connecting Cursor

Update your Cursor configuration file at ~/.cursor/mcp.json:

json
{
  "mcpServers": {
    "gitmcp": {
      "url": "https://gitmcp.io/{owner}/{repo}"
    }
  }
}

Connecting Claude Desktop

  1. In Claude Desktop, go to Settings > Developer > Edit Config
  2. Replace the configuration with:
    json
    {
      "mcpServers": {
        "gitmcp": {
          "command": "npx",
          "args": [
            "mcp-remote",
            "https://gitmcp.io/{owner}/{repo}"
          ]
        }
      }
    }

Connecting Windsurf

Update your Windsurf configuration file at ~/.codeium/windsurf/mcp_config.json:

json
{
  "mcpServers": {
    "gitmcp": {
      "serverUrl": "https://gitmcp.io/{owner}/{repo}"
    }
  }
}

Connecting VSCode

Update your VSCode configuration file at .vscode/mcp.json:

json
{
  "servers": {
    "gitmcp": {
      "type": "sse",
      "url": "https://gitmcp.io/{owner}/{repo}"
    }
  }
}

Connecting Cline

Update your Cline configuration file at ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json:

json
{
  "mcpServers": {
    "gitmcp": {
      "url": "https://gitmcp.io/{owner}/{repo}",
      "disabled": false,
      "autoApprove": []
    }
  }
}

Connecting Highlight AI

  1. Open Highlight AI and click the plugins icon (@ symbol) in the sidebar
  2. Click Installed Plugins at the top of the sidebar
  3. Select Custom Plugin
  4. Click Add a plugin using a custom SSE URL

Plugin name: gitmcp SSE URL: https://gitmcp.io/{owner}/{repo}

For more details on adding custom MCP servers to HighlightAI, refer to the documentation.

Connecting Augment Code

  1. Open Augment Code settings
  2. Navigate to the MCP section
  3. Add a new MCP server with the following details:

Name the MCP server: git-mcp Docs

Use this command:

bash
npx mcp-remote https://gitmcp.io/{owner}/{repo}

Or use the following configuration:

json
{
  "mcpServers": {
    "git-mcp Docs": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://gitmcp.io/{owner}/{repo}"
      ]
    }
  }
}

Connecting Msty AI

  1. Open Msty Studio
  2. Go to Tools > Import Tools from JSON Clipboard
  3. Paste the following configuration:
json
{
  "mcpServers": {
    "git-mcp Docs": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://gitmcp.io/{owner}/{repo}"
      ]
    }
  }
}

For more details on configuring MCP servers in Augment Code, visit the Augment Code documentation.

Note: Remember to replace {owner} and {repo} with the actual GitHub username/organization and repository name. You can also use the dynamic endpoint https://gitmcp.io/docs to allow your AI to access any repository on demand.

⚙ How It Works

GitMCP connects your AI assistant to GitHub repositories using the Model Context Protocol (MCP), a standard that lets AI tools request additional information from external sources.

What happens when you use GitMCP:

  1. You provide the GitMCP URL to your AI assistant (e.g., gitmcp.io/microsoft/typescript). GitMCP exposes tools like documentation fetching, smart search, code search, etc.
  2. Prompt the AI assistant on documentation/code-related questions.
  3. Your AI sends requests to GitMCP to use its tools (with your approval).
  4. GitMCP executes the AI's request and returns the requested data.
  5. Your AI receives the information and generates a more accurate, grounded response without hallucinations.

Supported Documentation

GitMCP currently supports the following documents (in order of priority):

  1. llms.txt
  2. AI-optimized version of the project's documentation
  3. README.md/root

💡 Examples

Here are some examples of how to use GitMCP with different AI assistants and repositories:

Example 1: Using Windsurf with a specific repository

For the GitHub repository https://github.com/microsoft/playwright-mcp, add https://gitmcp.io/microsoft/playwright-mcp as an MCP server to Windsurf.

Prompt to Claude:

"How do I use the Playwright MCP"

Windsurf will pull the relevant documentation from GitMCP to implement the memory feature correctly.

Example 2: Using Cursor with a GitHub Pages site

For the GitHub Pages site langchain-ai.github.io/langgraph, add https://langchain-ai.gitmcp.io/langgraph as an MCP server to Cursor.

Prompt to Cursor:

"Add memory to my LangGraph agent"

Cursor will pull the relevant documentation and code from GitMCP to correctly implement the memory feature.

Example 3: Using Claude Desktop with the dynamic endpoint

You don't have to pick specific repositories. The generic gitmcp.io/docs endpoint allows AI to pick the GitHub project on the fly!

Prompt to any AI assistant:

"I want to learn about the OpenAI Whisper speech recognition model. Explain how it works."

Claude will pull the data from GitMCP and answer the question.

🛠️ Tools

GitMCP provides AI assistants with several valuable tools to help them access, understand, and query GitHub repositories.

fetch_<repo-name>_documentation

This tool gets the primary documentation from a GitHub repository. It works by retrieving relevant documentation (e.g., llms.txt). This gives the AI a good overview of what the project is about

When it's useful: For general questions about a project's purpose, features, or how to get started

search_<repo-name>_documentation

This tool lets the AI search through a repository's documentation by providing a specific search query. Instead of loading all the documentation (which could be very large), it uses intelligent search to find just the relevant parts.

When it's useful: For specific questions about particular features, functions, or concepts within a project

fetch_url_content

This tool helps the AI get information from links mentioned in the documentation. It retrieves the content from those links and converts it to a format the AI can easily read.

When it's useful: When documentation references external information that would help answer your question

search_<repo-name>_code

This tool searches through the actual code in the repository using GitHub's code search. It helps AI find specific code examples or implementation details.

When it's useful: When you want examples of how something is implemented or need technical details not covered in documentation

Note: When using the dynamic endpoint (gitmcp.io/docs), these tools are named slightly differently (fetch_generic_documentation, search_generic_code, and search_generic_documentation) and need additional information about which repository to access.

📊 Badge

GitMCP has a badge for your repository's README. It allows users to quickly access your documentation through their IDE or browser (using the embedded chat). It also showcases how many times your documentation has been accessed through GitMCP.

Example (idosal/git-mcp): GitMCP

Adding the Badge to Your Repository

Add the following to your README.md:

markdown
[![GitMCP](https://img.shields.io/endpoint?url=https://gitmcp.io/badge/OWNER/REPO)](https://gitmcp.io/OWNER/REPO)

Replace OWNER with your GitHub username or organization, and REPO with your repository name.

How We Count Views

Increment for each tool call on the specific repository.

Customizing the Badge

You can customize the badge's appearance with parameters:

ParameterDescriptionDefaultExample
colorColor for the badge valueaquamarine?color=green
labelBadge labelGitMCPDocumentation

Please reach out if you need help!

❓ FAQ

What is the Model Context Protocol?

The Model Context Protocol is a standard that allows AI assistants to request and receive additional context from external sources in a structured manner, enhancing their understanding and performance.

Does GitMCP work with any AI assistant?

Yes, GitMCP is compatible with any AI assistant supporting the Model Context Protocol, including tools like Cursor, VSCode, Claude, etc.

Is GitMCP compatible with all GitHub projects?

Absolutely! GitMCP works with any public GitHub repository without requiring any modifications. It prioritizes the llms.txt file and falls back to README.md or other pages if the former is unavailable. Future updates aim to support additional documentation methods and even generate content dynamically.

Does GitMCP cost money?

No, GitMCP is a free service to the community with no associated costs.

🔒 Privacy

GitMCP is deeply committed to its users' privacy. The service doesn't have access to or store any personally identifiable information as it doesn't require authentication. In addition, it doesn't store any queries sent by the agents. Moreover, as GitMCP is an open-source project, it can be deployed independently in your environment.

GitMCP only accesses content that is already publicly available and only when queried by a user. GitMCP does not automatically scrape repositories. Before accessing any GitHub Pages site, the code checks for robots.txt rules and follows the directives set by site owners, allowing them to opt out. Please note that GitMCP doesn't permanently store data regarding the GitHub projects or their content.

👥 Contributing

We welcome contributions, feedback, and ideas! Please review our contribution guidelines.

Local Development Setup

  1. Clone the repository

    bash
    git clone https://github.com/idosal/git-mcp.git
    cd git-mcp
  2. Install dependencies

    bash
    pnpm install
  3. Run locally for development

    bash
    npm run dev
    # or
    pnpm dev

Using MCP Inspector for Testing

  1. Install the MCP Inspector tool:

    bash
    npx @modelcontextprotocol/inspector
  2. In the inspector interface:

    • Set Transport Type to SSE
    • Enter your GitMCP URL (e.g., http://localhost:5173/docs)
    • Click "Connect"

📄 License

This project is licensed under the Apache License 2.0.

Disclaimer

GitMCP is provided "as is" without warranty of any kind. While we strive to ensure the reliability and security of our service, we are not responsible for any damages or issues that may arise from its use. GitHub projects accessed through GitMCP are subject to their respective owners' terms and conditions. GitMCP is not affiliated with GitHub or any of the mentioned AI tools.

Star History

Star History Chart

Installation

TypingMind
{
  "mcpServers": {
    "GitDocsMCP": {
      "url": "https://gitmcp.io/docs"
    }
  }
}

Available Tools

  • match_common_libs_owner_repo_mapping

    Match a library name to an owner/repo. Don't use it if you have an owner and repo already. Use this first if only a library name was provided. If found - you can use owner and repo to call other tools. If not found - try to use the library name directly in other tools.

  • fetch_generic_documentation

    Fetch documentation for any GitHub repository by providing owner and project name

  • search_generic_documentation

    Semantically search in documentation for any GitHub repository by providing owner, project name, and search query. Useful for specific queries.

  • search_generic_code

    Search for code in any GitHub repository by providing owner, project name, and search query. Returns matching files. Supports pagination with 30 results per page.

  • fetch_generic_url_content

    Generic tool to fetch content from any absolute URL, respecting robots.txt rules. Use this to retrieve referenced urls (absolute urls) that were mentioned in previously fetched documentation.

Use GitMCP MCP with multiple AI models

TypingMind connects MCP tools at the workspace level, so once GitMCP is connected, you can use it with different AI models in TypingMind instead of setting it up separately for each model. This MCP connects through a hosted MCP server URL in TypingMind.

Add an MCP server URL

Use this when GitMCP is already hosted remotely or your team wants one shared connector that multiple users can access.

1

Open MCP connectors

In TypingMind, go to Plugins, open MCP connectors, then choose Add URL.

  1. Open TypingMind in your browser.
  2. Go to Plugins.
  3. Open MCP connectors.
  4. Click Add URL.
TypingMind Add Custom MCP Server URL form
2

Paste the server URL

Enter https://gitmcp.io/docs in the Server URL field. Add a connection name, description, icon, custom HTTP headers, or OAuth client settings if the server requires them.

  1. Paste https://gitmcp.io/docs into the Server URL field.
  2. Enter a connection name for GitMCP.
  3. Add a description and icon if you want it to be easier to identify.
  4. Add custom HTTP headers or OAuth client details if the server requires authentication.
3

Create the connection

Click Create connection, then return to the Plugins list and confirm the new MCP connection is active.

  1. Click Create connection.
  2. Return to the MCP connectors list.
  3. Confirm the GitMCP connection appears as active.
  4. Refresh the plugin list if the connection does not appear immediately.
4

Switch models without reconnecting

Start a chat with your preferred model, enable the GitMCP tools from Plugins, and switch to another model whenever needed. The MCP connection stays available to the TypingMind workspace.

  1. Start a new chat in TypingMind.
  2. Select the AI model you want to use.
  3. Enable the GitMCP tools from Plugins.
  4. Ask the model to use the tool when needed.
  5. Switch to another AI model and reuse the same MCP connection.
TypingMind chat using enabled MCP tools with a selected AI model
Can you use GitMCP to help me with this task?
GitMCP
Sure. I read it.
Here is what I found using GitMCP.

Frequently asked questions

What is the GitMCP MCP server used for?

GitMCP is an MCP server that lets compatible AI clients connect to external tools and context. In TypingMind, you can add this MCP server once and make its tools available in your AI workspace.

Can I use GitMCP MCP with multiple AI models in TypingMind?

Yes. TypingMind connects MCP tools at the workspace level, so you can use GitMCP with different AI models such as Claude, ChatGPT, Gemini, or other models you have configured in TypingMind without setting up the MCP server separately for each model.

Why use GitMCP MCP with TypingMind?

TypingMind is one of the best frontends for LLM chat because it brings multiple AI models, prompts, plugins, AI agents, API keys, and MCP tools into one workspace. With GitMCP connected, you can use its MCP tools across your preferred models while keeping your chat workflow organized in TypingMind.

How do I connect GitMCP MCP to TypingMind?

GitMCP can be connected in TypingMind by adding its hosted MCP server URL. This is useful when you want a remote MCP connection that is available from your TypingMind workspace.

What tools does GitMCP MCP provide in TypingMind?

GitMCP exposes 5 MCP tools that can be enabled from the TypingMind Plugins page and used in chat or assigned to AI agents.

Do I need to share my API keys with TypingMind to use GitMCP MCP?

No. TypingMind is local-first and lets you keep your model providers, API keys, prompts, and MCP configuration under your control. If GitMCP requires authentication, add the required headers, OAuth settings, or local configuration for that MCP server when you create the connection.

Related MCP Servers

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇