
List all API definitions (OpenAPI specs) in a branch. Returns filenames, types, and upload status.
Get an API definition by filename. Use listapidefinitions to find available filenames.
Delete an API definition permanently. Use listapidefinitions to find filenames.
List all branches (versions) in the ReadMe project. Returns branch names and metadata.
Create a new branch (version) in the ReadMe project. Requires a name (semver). Optionally fork from an existing version via base.
Get details of a specific branch (version) by name or version number. Use list_branches to find available branches.
Update a branch's title. Use list_branches to find available branch names.
Delete a branch (version) permanently. Cannot delete the stable branch. Use list_branches to find branch names.
List categories in a branch by section type (guides or reference). Use branch='stable' for the default version.
Create a new category in a branch. Requires a title. Section defaults to 'guide'. Use list_categories to see existing categories.
Get a specific category by section and title. Use list_categories to find available category titles.
Update a category's title or position. Use list_categories to find category titles.
Delete a category permanently. Use list_categories to find category titles.
List all pages within a category. Use list_categories to find section and title values.
List changelog entries with pagination. Supports filtering by visibility. Use page and per_page for pagination.
Create a new changelog entry. Requires a title. Optionally set type (added, fixed, improved, etc.) and body content.
Get a changelog entry by slug or ID. Use list_changelogs to find available slugs.
Update a changelog entry's title, type, body, or visibility. Use list_changelogs to find slugs.
Delete a changelog entry permanently. Use list_changelogs to find slugs.
List all custom pages in a branch. Custom pages are standalone pages outside the guides/reference sections.
Create a new custom page. Requires a title. Supports markdown or HTML content.
Get a custom page by slug. Use listcustompages to find available slugs.
Update a custom page's title, content, or visibility. Use listcustompages to find slugs.
Delete a custom page permanently. Use listcustompages to find slugs.
Create a new guide page. Requires title and categoryuri. Use listcategories with section='guides' to find category URIs.
Get a guide page by slug. Use listcategorypages to find guide slugs.
Update a guide page's title, body, state, or visibility. Use listcategorypages to find guide slugs.
Delete a guide page permanently. Use listcategorypages to find guide slugs.
List uploaded images with pagination. Use page and per_page for pagination (max 100 per page).
Get an uploaded image by ID. Use list_images to find available image IDs.
Get ReadMe project metadata including name, subdomain, plan, and configuration. Useful for discovering project settings.
List all recipes (tutorials) in a branch. Recipes are step-by-step guides for common tasks.
Create a new recipe (tutorial). Requires a title. Optionally include body content and excerpt.
Get a recipe by slug. Use list_recipes to find available recipe slugs.
Update a recipe's title, body, excerpt, or visibility. Use list_recipes to find slugs.
Delete a recipe permanently. Use list_recipes to find recipe slugs.
Create a new API reference page. Requires title and categoryuri. Use listcategories with section='reference' to find category URIs.
Get an API reference page by slug. Use listcategorypages with section='reference' to find page slugs.
Update an API reference page's title, body, state, or visibility. Use listcategorypages to find page slugs.
Delete an API reference page permanently. Use listcategorypages to find page slugs.
Search across all documentation pages, guides, changelogs, and references. Returns matching results with highlighted snippets.
Validate ReadMe credentials. Verifies that the API key is valid by fetching project metadata.

In an mcp.json file, add the configuration below, and restart Cursor.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "url": "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
5 "headers": {
6 "Authorization": "Bearer yMt*****"
7 }
8 }
9 }
10}
11Open your Claude Desktop configuration file and add the server configuration below. You'll also need to restart the application for the changes to take effect.
Make sure Claude is using the Node v20+.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "command": "npx",
5 "args": [
6 "-y",
7 "mcp-remote@latest",
8 "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
9 "--header",
10 "Authorization: Bearer ${AUTH_TOKEN}"
11 ],
12 "env": {
13 "AUTH_TOKEN": "yMt*****"
14 }
15 }
16 }
17}Open your Windsurf MCP configuration file and add the server configuration below.
Click on the refresh button in the top right of the Manage MCP server page or in the top right of the chat box in the box icon.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "command": "npx",
5 "args": [
6 "-y",
7 "mcp-remote@latest",
8 "https://ah-api.merge.dev/api/v1/tool-packs/<tool-pack-id>/registered-users/<registered-user-id>/mcp",
9 "--header",
10 "Authorization: Bearer ${AUTH_TOKEN}"
11 ],
12 "env": {
13 "AUTH_TOKEN": "<ah-production-access-key>"
14 }
15 }
16 }
17 }In Command Palette (Cmd+Shift+P on macOS, Ctrl+Shift+P on Windows), run "MCP: Open User Configuration".
You can then add the configuration below and press "start" right under servers. Enter the auth token when prompted.
Learn more in the official documentation ↗
1{
2 "inputs": [
3 {
4 "type": "promptString",
5 "id": "agent-handler-auth",
6 "description": "Agent Handler AUTH_TOKEN", // "yMt*****" when prompt
7 "password": true
8 }
9 ],
10 "servers": {
11 "agent-handler": {
12 "type": "stdio",
13 "command": "npx",
14 "args": [
15 "-y",
16 "mcp-remote@latest",
17 "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
18 "--header",
19 "Authorization: Bearer ${input:agent-handler-auth}"
20 ]
21 }
22 }
23}Whether you're an engineer experimenting with agents or a product manager looking to add tools, you can get started for free now