About Solvemcp
Solvemcp is an MCP server published by AnswerDotAI in the Blockchain category: small Python client for Model Context Protocol (MCP) servers.
The repository has 2 stars and 1 forks, with the last commit a month ago. Recent commit activity is the strongest signal that reported issues will get attention.
Install
git clone https://github.com/AnswerDotAI/solvemcpThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Solvemcp
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
solvemcp
It provides:
stdiotransport for local subprocess servers.- Streamable HTTP transport for modern MCP servers.
- Legacy HTTP+SSE fallback for older servers.
- Dynamic Python callables for tools returned by
tools/list.
Installation
pip install solvemcp
Quick Start
Connect to a local stdio server
from solvemcp import MCPClient
with MCPClient.stdio([sys.executable, "-u", "../tests/echoserver.py"]) as mcp:
print(list(mcp.tools))
res = mcp.echo(text="hello")
print(res)
['echo']
{'content': [{'type': 'text', 'text': 'hello'}]}
Connect to an HTTP MCP server
with MCPClient.http("https://mcp.grep.app") as mcp:
print(list(mcp.tools))
res = mcp.searchGitHub(query="class PtyProcess", language=["Python"])
['searchGitHub']
mcp = MCPClient.http("https://mcp.grep.app")
print(list(mcp.tools))
res = mcp.searchGitHub(query="class PtyProcess", language=["Python"])
['searchGitHub']
mcp.searchGitHub?
def searchGitHub(
query:Any, matchCase:Any=False, matchWholeWords:Any=False, useRegexp:Any=False, repo:Any=None, path:Any=None,
language:list=None
):
Find real-world code examples from over a million public GitHub repositories to help answer programming questions.
**IMPORTANT: This tool searches for literal code patterns (like grep), not keywords. Search for actual code that would appear in files:**
- ✅ Good: 'useState(', 'import React from', 'async function', '(?s)try {.*await'
- ❌ Bad: 'react tutorial', 'best practices', 'how to use'
**When to use this tool:**
- When implementing unfamiliar APIs or libraries and need to see real usage patterns
- When unsure about correct syntax, parameters, or configuration for a specific library
- When looking for production-ready examples and best practices for implementation
- When needing to understand how different libraries or frameworks work together
**Perfect for questions like:**
- "How do developers handle authentication in Next.js apps?" → Search: 'getServerSession' with language=['TypeScript', 'TSX']
- "What are common React error boundary patterns?" → Search: 'ErrorBoundary' with language=['TSX']
- "Show me real useEffect cleanup examples" → Search: '(?s)useEffect\(\(\) => {.*removeEventListener' with useRegexp=true
- "How do developers handle CORS in Flask applications?" → Search: 'CORS(' with matchCase=true and language=['Python']
Use regular expressions with useRegexp=true for flexible patterns like '(?s)useState\(.*loading' to find useState hooks with loading-related variables. Prefix the pattern with '(?s)' to match across multiple lines.
Filter by language, repository, or file path to narrow results.
File: ~/aai-ws/toolslm/toolslm/funccall.py
Type: function
mcp.close()
cts = res['content']
print(len(cts))
10
print(cts[0]['text'][:500])
Repository: sedwards2009/extraterm
Path: extensions/ProxySessionBackend/src/python/ptyprocess/ptyprocess.py
URL: https://github.com/sedwards2009/extraterm/blob/master/extensions/ProxySessionBackend/src/python/ptyprocess/ptyprocess.py
License: MIT
Snippets:
--- Snippet 1 (Line 79) ---
(intr, eof) = (3, 4)
_INTR = _byte(intr)
_EOF = _byte(eof)
class PtyProcessError(Exception):
"""Generic error class for this package."""
# setecho and setwinsize are pulled out here b
How Tool Calls Work
For each server tool with a valid Python identifier name, MCPClient
adds a method dynamically. Example: a server tool named echo becomes
mcp.echo(...).
Equivalent forms:
mcp.echo(text="hi")
mcp.call_tool("echo", text="hi")
Streaming
For Streamable HTTP servers, use rpc_stream or call_tool_stream:
for msg in mcp.rpc_stream("tools/list", params={}): print(msg)
Development
Module Layout
solvemcp/client.py:MCPClientrequest lifecycle, initialization, tool binding, and RPC helpers.solvemcp/transports.py: transport implementations plus SSE parsers and error types.
Run tests:
python tests/tests.py
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.