ScavioScavio
ProductoPreciosDocumentación
Iniciar sesionComenzar
  1. Inicio
  2. Tutoriales
  3. Cómo agregar contexto CRM a un agente de búsqueda MCP
Tutorial

Cómo agregar contexto CRM a un agente de búsqueda MCP

Enriquezca los resultados de búsqueda de agentes de MCP con datos de CRM. Obtenga el historial de transacciones, las notas de contacto y el contexto de la cuenta para personalizar las respuestas de los agentes.

Obtener clave API gratisDocumentacion API

Agregue contexto de CRM a un agente de búsqueda de MCP consultando su CRM para obtener datos de la cuenta antes o después de las llamadas de búsqueda y luego fusionando el contexto de CRM con los resultados de búsqueda para producir respuestas más relevantes y conscientes de la cuenta. Los agentes de MCP con herramientas de búsqueda arrojan resultados genéricos que carecen de contexto específico del cliente. Al enriquecer los resultados de búsqueda con datos de CRM como la etapa del trato, las interacciones pasadas y el tamaño de la cuenta, el agente puede adaptar sus recomendaciones y priorizar la información que es importante para la cuenta específica que se está discutiendo.

Requisitos previos

  • Python 3.8+ instalado
  • solicita biblioteca instalada
  • Una clave API de Scavio de scavio.dev
  • Datos de CRM accesibles a través de API o archivo local

Guia paso a paso

Paso 1: Cargar datos de la cuenta CRM

Extraiga el contexto de la cuenta de su CRM para enriquecer los resultados de búsqueda.

Python
import os, requests, json

API_KEY = os.environ['SCAVIO_API_KEY']

# Simulated CRM data (replace with your CRM API call)
def load_crm_account(account_name: str) -> dict:
    # In production: requests.get(f'{CRM_API}/accounts?name={account_name}')
    crm_data = {
        'Acme Corp': {
            'deal_stage': 'negotiation',
            'deal_value': 50000,
            'industry': 'manufacturing',
            'size': '500-1000 employees',
            'last_contact': '2026-04-15',
            'notes': 'Interested in automation tools. Key pain point: manual data entry.',
        },
        'Beta Inc': {
            'deal_stage': 'discovery',
            'deal_value': 25000,
            'industry': 'saas',
            'size': '50-200 employees',
            'last_contact': '2026-05-01',
            'notes': 'Evaluating search APIs for their product. Comparing with SerpAPI.',
        },
    }
    return crm_data.get(account_name, {})

account = load_crm_account('Acme Corp')
print(f"Stage: {account.get('deal_stage')}, Industry: {account.get('industry')}")

Paso 2: Buscar con contexto de cuenta

Utilice el contexto de CRM para refinar las consultas de búsqueda y obtener resultados más relevantes.

Python
def contextual_search(query: str, account: dict) -> list:
    """Search with CRM context to get industry-relevant results."""
    industry = account.get('industry', '')
    refined_query = f'{query} {industry}' if industry else query
    resp = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': API_KEY},
        json={'platform': 'google', 'query': refined_query}, timeout=15)
    results = resp.json().get('organic_results', [])
    return [{
        'title': r.get('title', ''),
        'url': r.get('link', ''),
        'snippet': r.get('snippet', ''),
    } for r in results[:5]]

account = load_crm_account('Acme Corp')
results = contextual_search('automation tools', account)
for r in results:
    print(f"  {r['title'][:50]}")

Paso 3: Fusionar CRM y datos de búsqueda

Combine los datos de la cuenta de CRM con los resultados de la búsqueda en un bloque de contexto unificado.

Python
def merge_context(account_name: str, query: str) -> dict:
    account = load_crm_account(account_name)
    results = contextual_search(query, account)
    return {
        'account': {
            'name': account_name,
            'deal_stage': account.get('deal_stage', 'unknown'),
            'industry': account.get('industry', ''),
            'notes': account.get('notes', ''),
        },
        'search_results': results,
        'context_type': 'enriched' if account else 'search_only',
    }

merged = merge_context('Acme Corp', 'automation tools')
print(f"Context type: {merged['context_type']}")
print(f"Deal stage: {merged['account']['deal_stage']}")
print(f"Search results: {len(merged['search_results'])}")

Paso 4: Formato para el agente MCP

Estructurar el contexto combinado para la inyección en la respuesta de la herramienta del agente MCP.

Python
def format_mcp_response(merged: dict) -> str:
    parts = []
    acct = merged.get('account', {})
    if acct.get('deal_stage') != 'unknown':
        parts.append('ACCOUNT CONTEXT:')
        parts.append(f"  Company: {acct.get('name', '')}")
        parts.append(f"  Deal Stage: {acct.get('deal_stage', '')}")
        parts.append(f"  Industry: {acct.get('industry', '')}")
        if acct.get('notes'):
            parts.append(f"  Notes: {acct['notes']}")
        parts.append('')
    parts.append('SEARCH RESULTS:')
    for i, r in enumerate(merged.get('search_results', []), 1):
        parts.append(f'{i}. {r["title"]}')
        if r.get('snippet'):
            parts.append(f'   {r["snippet"][:150]}')
    return '\n'.join(parts)

response = format_mcp_response(merged)
print(response[:500])

Paso 5: Prueba con llamada a la herramienta MCP

Simule una llamada a una herramienta MCP que combine la búsqueda de CRM con la búsqueda.

Python
def mcp_search_tool(params: dict) -> dict:
    """MCP tool handler for CRM-enriched search."""
    query = params.get('query', '')
    account_name = params.get('account', '')
    if not query:
        return {'error': 'query is required'}
    merged = merge_context(account_name, query)
    formatted = format_mcp_response(merged)
    return {
        'content': [{'type': 'text', 'text': formatted}],
        'isError': False,
    }

# Test the MCP tool
result = mcp_search_tool({'query': 'automation tools', 'account': 'Acme Corp'})
print(result['content'][0]['text'][:400])

# Test without account
result2 = mcp_search_tool({'query': 'search api comparison', 'account': ''})
print(f'\nWithout account: {len(result2["content"][0]["text"])} chars')

Ejemplo en Python

Python
import requests, os
H = {'x-api-key': os.environ['SCAVIO_API_KEY']}

def crm_search(query, industry=''):
    refined = f'{query} {industry}'.strip()
    data = requests.post('https://api.scavio.dev/api/v1/search', headers=H,
        json={'platform': 'google', 'query': refined}).json()
    return [{'title': r['title'], 'snippet': r.get('snippet', '')[:80]}
        for r in data.get('organic_results', [])[:3]]

print(crm_search('automation tools', 'manufacturing'))

Ejemplo en JavaScript

JavaScript
const H = {'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'};
async function crmSearch(query, industry = '') {
  const r = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST', headers: H,
    body: JSON.stringify({platform: 'google', query: `${query} ${industry}`.trim()})
  });
  return ((await r.json()).organic_results || []).slice(0, 3)
    .map(r => ({title: r.title, snippet: (r.snippet || '').slice(0, 80)}));
}
crmSearch('automation tools', 'manufacturing').then(console.log);

Salida esperada

JSON
An MCP search agent enriched with CRM account context that delivers industry-specific, deal-stage-aware search results for more relevant agent responses.

Tutoriales relacionados

  • Cómo agregar búsqueda a un flujo de trabajo de IA por contrato
  • Cómo mejorar la precisión de la investigación de agentes con la búsqueda

Preguntas frecuentes

La mayoria de los desarrolladores completan este tutorial en 15 a 30 minutos. Necesitaras una clave API de Scavio (el plan gratuito funciona) y un entorno de Python o JavaScript.

Python 3.8+ instalado. solicita biblioteca instalada. Una clave API de Scavio de scavio.dev. Datos de CRM accesibles a través de API o archivo local. Una clave API de Scavio te da 50 creditos gratuitos al registrarte.

Si. El plan gratuito incluye 50 creditos al registrarte, mas que suficiente para completar este tutorial y crear un prototipo funcional.

Scavio tiene un paquete nativo de LangChain (langchain-scavio), un servidor MCP y una API REST simple que funciona con cualquier cliente HTTP. Este tutorial usa the raw REST API, pero puedes adaptarlo al framework que prefieras.

Recursos relacionados

Best Of

Las mejores herramientas CRM MCP para agentes de IA en 2026

Read more
Best Of

Las mejores herramientas de búsqueda de MCP para Claude Code en 2026

Read more
Use Case

Búsqueda IDE MCP

Read more
Use Case

Servidor de búsqueda personalizado MCP

Read more
Solution

Ahorros en el contexto bajo demanda de MCP

Read more
Solution

Cambie Tavily MCP por Scavio MCP en cualquier cliente

Read more

Empieza a construir

Enriquezca los resultados de búsqueda de agentes de MCP con datos de CRM. Obtenga el historial de transacciones, las notas de contacto y el contexto de la cuenta para personalizar las respuestas de los agentes.

Obtener clave API gratuitaLeer la documentacion
ScavioScavio

API de busqueda en tiempo real para agentes de IA. Busca en todas las plataformas, no solo en Google.

Producto

  • Funciones
  • Precios
  • Panel
  • Afiliados

Desarrolladores

  • Documentacion
  • Referencia de API
  • Inicio rapido
  • Integracion MCP
  • Python SDK

Alternativas

  • Alternativa a Tavily
  • Alternativa a SerpAPI
  • Alternativa a Firecrawl
  • Alternativa a Exa

Herramientas

  • Formateador JSON
  • cURL a codigo
  • Contador de tokens
  • Todas las herramientas

© 2026 Scavio. Todos los derechos reservados.

Featured on TAAFT
Terminos de servicioPolitica de privacidad