Skip to content

feat: Standardize README structure#27

Merged
Royal-lobster merged 1 commit intomainfrom
feat/standardize-readme
Jan 27, 2026
Merged

feat: Standardize README structure#27
Royal-lobster merged 1 commit intomainfrom
feat/standardize-readme

Conversation

@Royal-lobster
Copy link
Copy Markdown
Member

Summary

  • Reorganizes README to follow standard MCP documentation format with badges, overview, and structured sections
  • Adds auto-generation workflow for MCP tool documentation that syncs on push to main
  • Adds zod-to-json-schema dependency for schema conversion in documentation generation

Changes

  • README.md: Restructured with npm/license badges, Overview, Features, Installation, Configuration, Usage Examples, auto-generated MCP Tools section, Development, Resources, Disclaimer, and License sections
  • .github/workflows/sync-tools.yml: Workflow to auto-sync tool documentation on push to main
  • .github/actions/generate-mcp-tools/generate-tools.mjs: Script to generate tool documentation from Zod schemas
  • package.json: Added zod-to-json-schema dev dependency

Test plan

  • Build passes (pnpm run build)
  • Lint passes (pnpm run lint)
  • Tool generation script runs successfully
  • 5 MCP tools are documented in README

Generated with Claude Code

- Reorganize README to follow standard MCP documentation format
- Add npm version and license badges
- Add structured sections: Overview, Features, Installation, Configuration
- Add usage examples with natural language prompts
- Add auto-generated MCP Tools section with parameter tables
- Add sync-tools workflow for automatic tool documentation updates
- Add zod-to-json-schema dependency for schema conversion

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@Royal-lobster Royal-lobster merged commit b164c62 into main Jan 27, 2026
1 check passed
@gemini-code-assist
Copy link
Copy Markdown

Summary of Changes

Hello @Royal-lobster, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly enhances the project's documentation and maintainability by standardizing the README.md structure and introducing an automated system for generating and updating MCP tool documentation. This ensures that the documentation remains consistent and up-to-date with the tool definitions, providing clearer guidance for users and AI agents interacting with the NEAR Intents MCP Server.

Highlights

  • README Standardization: The README.md has been completely reorganized to follow a standard documentation format, including badges, a detailed overview, structured sections for installation, configuration, usage examples, and development.
  • Automated Tool Documentation: A new GitHub Actions workflow and an associated Node.js script (generate-tools.mjs) have been added to automatically generate and sync documentation for MCP tools within the README.md from their Zod schemas.
  • Zod Schema to JSON Schema Conversion: The zod-to-json-schema library has been introduced as a development dependency to facilitate the conversion of Zod schemas into JSON schemas, which are then used for generating tool documentation.
Ignored Files
  • Ignored by pattern: .github/workflows/** (1)
    • .github/workflows/sync-tools.yml
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@Royal-lobster Royal-lobster deleted the feat/standardize-readme branch January 27, 2026 21:41
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a standardized README structure and an automated workflow for generating documentation for MCP tools. These are excellent improvements for the project's documentation and maintainability. The new README is much clearer and more user-friendly. The script for auto-generating tool documentation from Zod schemas is a great addition. I've provided a couple of suggestions on the new generation script to enhance code style and improve the accuracy of the generated documentation.

Comment on lines +94 to +95
const defaultVal =
prop.default !== undefined ? JSON.stringify(prop.default) : "";
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The deadline parameter in GET_NEAR_SWAP_FULL_QUOTE has a dynamic default value (1 hour from now). However, zod-to-json-schema evaluates this at generation time, resulting in a static, soon-to-be-outdated timestamp in the README. This can be misleading for users, as the Default column will not reflect the dynamic nature described in the Description column. To avoid this confusion, you could consider omitting the default value for deadline from the generated table or replacing it with a descriptive placeholder like now + 1 hour.

Comment on lines +107 to +119
function renderMarkdown(tools) {
let md = "";

for (const tool of tools) {
const schema = tool.parameters || tool.schema;

md += `### \`${tool.name}\`\n`;
md += `${tool.description}\n\n`;
md += `${renderSchema(schema)}\n\n`;
}

return md.trim();
}
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The renderMarkdown function can be written more concisely and efficiently using array methods like map and join. This avoids string concatenation in a loop, which is generally more performant and idiomatic in modern JavaScript.

function renderMarkdown(tools) {
	return tools
		.map((tool) => {
			const schema = tool.parameters || tool.schema;
			return `### \`${tool.name}\`\n${tool.description}\n\n${renderSchema(schema)}`;
		})
		.join("\n\n");
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant