Skip to content

blog: Using MCP Server Tools in Mellea#50

Merged
ajbozarth merged 1 commit into
generative-computing:mainfrom
ajbozarth:blog/mcp-tool-integration
May 22, 2026
Merged

blog: Using MCP Server Tools in Mellea#50
ajbozarth merged 1 commit into
generative-computing:mainfrom
ajbozarth:blog/mcp-tool-integration

Conversation

@ajbozarth
Copy link
Copy Markdown
Contributor

@ajbozarth ajbozarth commented May 21, 2026

Summary

  • Adds blog post covering Mellea v0.6's MCP server tool integration (generative-computing/mellea#1042)
  • Walks through the three-step API (connect, discover, convert) using the GitHub MCP server example
  • Includes "Under the hood" notes on session lifetime and async/sync execution

Test plan

  • npm run lint:md passes
  • npm run build succeeds
  • Post renders correctly at /blogs/mcp-tool-integration

/schedule 2026-05-22

@ajbozarth ajbozarth requested a review from a team as a code owner May 21, 2026 00:33
@ajbozarth ajbozarth self-assigned this May 21, 2026
@ajbozarth ajbozarth added the blog PRs adding or updating blog posts in content/blogs/ label May 21, 2026
@ajbozarth
Copy link
Copy Markdown
Contributor Author

I set the date to Friday since this is short and specifically about a v0.6 feature which released today. If this doesn't iterate on reviewer too much I figured it was better than holding it off for weeks.

@psschwei
Copy link
Copy Markdown
Member

psschwei commented May 21, 2026

concurrent with this, should we update the old MCP docs from the website? https://docs.mellea.ai/integrations/mcp

@ajbozarth
Copy link
Copy Markdown
Contributor Author

ajbozarth commented May 21, 2026

concurrent with this, should we update the old MCP docs from the website? https://docs.mellea.ai/integrations/mcp

that is a separate feature and the inverse of the feature I added and am blogging about here. I added using MCP tools in mellea. The original feature was surfacing mellea tools via a mcp server (the opposite direction).

Edit: afaik that doc is still up to date and valid for the older feature

@psschwei
Copy link
Copy Markdown
Member

well, that's confusing 😄
when I search for MCP on the website, those docs are the first thing that come up...

@ajbozarth
Copy link
Copy Markdown
Contributor Author

well, that's confusing 😄
when I search for MCP on the website, those docs are the first thing that come up...

that is good to know that the older feature show up first and the newer feature shows up second, especially since this newer feature is the more helpful feature to most users. We may want to add a wikipedia-like "did you mean" link to the top that goes to the opposite one

Copy link
Copy Markdown
Collaborator

@planetf1 planetf1 left a comment

Choose a reason for hiding this comment

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

Run against mellea v0.6.0 installed via uv add 'mellea[tools]' in a clean Python 3.12 environment. All API signatures, method names, and parameter signatures match the live implementation — the code is accurate.

Two inline comments below flag issues that would cause readers to hit errors when following the post.

Copy link
Copy Markdown
Collaborator

@planetf1 planetf1 left a comment

Choose a reason for hiding this comment

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

Run in a clean Python 3.12 environment with uv add 'mellea[tools]' (mellea v0.6.0). All API signatures, method names, and parameter signatures match the live implementation — zero false claims.

Against the write-technical-blog checklist

  • Code blocks have fenced syntax with language specified
  • react() and ChatContext parameters match live signatures
  • MCPToolSpec.as_mellea_tool() returns MelleaTool (verified with inspect.signature)
  • Connection helpers (http_connection, sse_connection, stdio_connection) signatures match
  • Link to full runnable example is correct
  • MCP signatures verify against live v0.6.0

Copy link
Copy Markdown
Collaborator

@planetf1 planetf1 left a comment

Choose a reason for hiding this comment

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

The blog's clean structure (Connect → Discover → Convert), accurate code, "Under the hood" runtime details, and link to the runnable example are all strong.

Verification

Run in a clean Python 3.12 environment with uv add 'mellea[tools]' (mellea v0.6.0). All API signatures, method names, and parameter signatures match the live implementation.

Verified inspect.signature on http_connection, sse_connection, stdio_connection, discover_mcp_tools, react, ChatContext, and MCPToolSpec.as_mellea_tool().

Comment thread content/blogs/mcp-tool-integration.md
Copy link
Copy Markdown
Collaborator

@planetf1 planetf1 left a comment

Choose a reason for hiding this comment

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

Follow-up after running the snippets end-to-end (mellea v0.6.0, Python 3.12 clean env) instead of just verifying signatures. Three corrections to my earlier review.

Comment thread content/blogs/mcp-tool-integration.md
Comment thread content/blogs/mcp-tool-integration.md
Comment thread content/blogs/mcp-tool-integration.md
Copy link
Copy Markdown
Collaborator

@planetf1 planetf1 left a comment

Choose a reason for hiding this comment

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

There's some minor things that could be fixed for accuracy, but given the use of snippets I'm not overly concerned.

Getting this info out there is really valuable -- as this makes access to more tools so much easier

@ajbozarth
Copy link
Copy Markdown
Contributor Author

@planetf1 I gave the following response to all your inline comments:

code snippets are meant to be insight into the linked example, not standalone. I don't see reason to clutter up the readability for executability.

I called out in the blog that the snippets were illustrative and linked the actual example for the executable code.

Relatedly we may want to investigate how we can improve our skills to distinguish code snippets in blogs that are illustrative vs runnable. I ran into many of the same comments when I had gemini, Claude, and codex review my blog before opening the PR. surprisingly only gemini saw the note and listed the issues as fyi instead of needs to fix

@ajbozarth
Copy link
Copy Markdown
Contributor Author

I've added a /schedule 2026-05-22 to auto-merge this tomorrow as long as no one else reviews and has feedback

Comment thread content/blogs/mcp-tool-integration.md
Comment thread content/blogs/mcp-tool-integration.md
Mellea now supports MCP server tools. Discover any MCP server's tools and call them directly from a Mellea agent.

Assisted-by: Claude Code
Signed-off-by: Alex Bozarth <ajbozart@us.ibm.com>
@ajbozarth ajbozarth force-pushed the blog/mcp-tool-integration branch from 187a3cb to fdc8023 Compare May 21, 2026 23:43
@ajbozarth ajbozarth added this pull request to the merge queue May 22, 2026
Merged via the queue into generative-computing:main with commit e2d2df4 May 22, 2026
7 checks passed
@ajbozarth ajbozarth deleted the blog/mcp-tool-integration branch May 22, 2026 15:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

blog PRs adding or updating blog posts in content/blogs/

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants