-
Notifications
You must be signed in to change notification settings - Fork 445
feat: Add Model Context Protocol (MCP) support for AgentKit #731
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
🟡 Heimdall Review Status
|
Hello! First-time contributor here 😊 Added MCP support for AgentKit following the wishlist. Both TypeScript and Python implementations are ready. Waiting for workflow approval. Let me know if you need any changes! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @serayd61, thank you for the contribution! Approved workflows, please start by ensuring they pass
Thanks @CarsonRoscoe! I see there are some failing checks. I'll fix them right away:
Working on it now! 🛠️ |
… files, Update pnpm-lock.yaml, Remove unnecessary setup.py.old file, Fix code style to pass CI checks
- Remove unnecessary 'any' type casting - Add try-catch for better error handling - Improve JSDoc documentation - Add comprehensive test coverage for error cases
- Remove unnecessary 'any' type casting - Add try-catch for better error handling in toolHandler - Improve JSDoc documentation for interface - Handle both Zod validation and invoke errors properly
- Update JSDoc to match interface types (unknown instead of any) - Apply CI-required formatting to test file - Ensure all lint rules are satisfied
- Add type definitions for @modelcontextprotocol/sdk - Update tsconfig for proper type resolution - Add ESLint configuration - Update dependencies
- Rename MCP package to @coinbase/agentkit-mcp-server - Exclude problematic example from workspace - Update pnpm-lock.yaml - MCP builds successfully
- Remove dependency on @modelcontextprotocol/sdk - Use dynamic imports for AgentKit - Simplify server implementation
Hi @CarsonRoscoe! 👋 I've addressed all the CI issues:
The PR is ready for review but needs workflow approval to run the tests. Also, I noticed the branch is out-of-date with main - should I rebase/merge the latest changes? Looking forward to your feedback! 🚀 |
Description
This PR adds Model Context Protocol (MCP) support to AgentKit, enabling Claude Desktop and other MCP-compatible clients to interact with blockchain networks through AgentKit.
Motivation
Changes
TypeScript Implementation (
typescript/framework-extensions/mcp/
)@coinbase/agentkit-mcp
packagePython Implementation (
python/framework-extensions/mcp/
)coinbase-agentkit-mcp
packagepyproject.toml
Supported Tools
get_wallet_address
- Get the current wallet addressget_balance
- Get wallet balance for specific assetstransfer
- Send tokens to another addressTesting
Tested locally with:
npm run build
pip install -e .
Documentation
Next Steps
Future enhancements can include:
Checklist